Package org.apache.fop.apps
Class FopFactory
java.lang.Object
org.apache.fop.apps.FopFactory
- All Implemented Interfaces:
org.apache.xmlgraphics.image.loader.ImageContext
public final class FopFactory
extends Object
implements org.apache.xmlgraphics.image.loader.ImageContext
Factory class which instantiates new Fop and FOUserAgent instances. This
class also holds environmental information and configuration used by FOP.
Information that may potentially be different for each renderingq run can be
found and managed in the FOUserAgent.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ColorSpaceCache
private final FopFactoryConfig
private final ContentHandlerFactoryRegistry
The registry for ContentHandlerFactory instanceprivate final ElementMappingRegistry
The registry for ElementMapping instancesprivate HyphenationTreeCache
Map of configured names of hyphenation pattern file names: ll_CC => nameprivate final ImageHandlerRegistry
Registry for image handlersprivate static org.apache.commons.logging.Log
logger instanceprivate final Map<String,
RendererConfig> private final RendererFactory
Factory for Renderers and FOEventHandlersprivate final InternalResourceResolver
private final XMLHandlerRegistry
Registry for XML handlers -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addElementMapping
(ElementMapping elementMapping) Add the element mapping with the given class name.Returns the color space cache for this instance.(package private) org.apache.xmlgraphics.image.loader.impl.AbstractImageSessionContext.FallbackResolver
org.apache.xmlgraphics.image.loader.ImageManager
(package private) RendererConfig
getRendererConfig
(FOUserAgent userAgent, Configuration cfg, RendererConfig.RendererConfigParser configCreator) Returns the renderer configuration object for a specific renderer given the parser and configuration to read.float
Returns the conversion factor from pixel units to millimeters.float
float
Returns the conversion factor from pixel units to millimeters.float
Get the user configuration.(package private) boolean
Returns whether accessibility is enabled.boolean
(package private) boolean
(package private) boolean
boolean
isNamespaceIgnored
(String namespaceURI) (package private) boolean
(package private) boolean
(package private) boolean
Returns a newFop
instance.newFop
(String outputFormat, OutputStream stream) Returns a newFop
instance.newFop
(String outputFormat, FOUserAgent userAgent) Returns a newFop
instance.newFop
(String outputFormat, FOUserAgent userAgent, OutputStream stream) Returns a newFop
instance.newFop
(FOUserAgent userAgent) Returns a newFop
instance.Returns a new FOUserAgent instance.static FopFactory
newInstance
(File fopConf) Returns a new FopFactory instance that is configured using theFopFactoryConfig
object that is created when the fopConf is parsed.static FopFactory
newInstance
(URI baseURI) Returns a new FopFactory instance that is configured only by the default configuration parameters.static FopFactory
newInstance
(URI baseURI, InputStream confStream) Returns a new FopFactory instance that is configured using theFopFactoryConfig
object that is created when the fopConf is parsed.static FopFactory
newInstance
(FopFactoryConfig config) FOP has the ability, for some FO's, to continue processing even if the input XSL violates that FO's content model.boolean
boolean
-
Field Details
-
log
private static org.apache.commons.logging.Log loglogger instance -
rendererFactory
Factory for Renderers and FOEventHandlers -
xmlHandlers
Registry for XML handlers -
imageHandlers
Registry for image handlers -
elementMappingRegistry
The registry for ElementMapping instances -
contentHandlerFactoryRegistry
The registry for ContentHandlerFactory instance -
colorSpaceCache
-
config
-
resolver
-
rendererConfig
-
hyphenationTreeCache
-
hyphPatNames
Map of configured names of hyphenation pattern file names: ll_CC => name
-
-
Constructor Details
-
FopFactory
-
-
Method Details
-
newInstance
FOP has the ability, for some FO's, to continue processing even if the input XSL violates that FO's content model. This is the default behavior for FOP. However, this flag, if set, provides the user the ability for FOP to halt on all content model violations if desired. Returns a new FopFactory instance that is configured using theFopFactoryConfig
object.- Parameters:
config
- the fop configuration- Returns:
- the requested FopFactory instance.
-
newInstance
Returns a new FopFactory instance that is configured using theFopFactoryConfig
object that is created when the fopConf is parsed.- Parameters:
fopConf
- the fop conf configuration file to parse- Returns:
- the requested FopFactory instance.
- Throws:
IOException
SAXException
-
newInstance
Returns a new FopFactory instance that is configured only by the default configuration parameters.- Parameters:
baseURI
- the base URI to resolve resource URIs against- Returns:
- the requested FopFactory instance.
-
newInstance
public static FopFactory newInstance(URI baseURI, InputStream confStream) throws SAXException, IOException Returns a new FopFactory instance that is configured using theFopFactoryConfig
object that is created when the fopConf is parsed.- Parameters:
baseURI
- the base URI to resolve resource URIs againstconfStream
- the fop conf configuration stream to parse- Returns:
- the requested FopFactory instance.
- Throws:
SAXException
IOException
-
newFOUserAgent
Returns a new FOUserAgent instance. Use the FOUserAgent to configure special values that are particular to a rendering run. Don't reuse instances over multiple rendering runs but instead create a new one each time and reuse the FopFactory.- Returns:
- the newly created FOUserAgent instance initialized with default values
-
isComplexScriptFeaturesEnabled
boolean isComplexScriptFeaturesEnabled() -
newFop
Returns a newFop
instance. FOP will be configured with a default user agent instance.MIME types are used to select the output format (ex. "application/pdf" for PDF). You can use the constants defined in
MimeConstants
.- Parameters:
outputFormat
- the MIME type of the output format to use (ex. "application/pdf").- Returns:
- the new Fop instance
- Throws:
FOPException
- when the constructor fails
-
newFop
Returns a newFop
instance. Use this factory method if you want to configure this very rendering run, i.e. if you want to set some metadata like the title and author of the document you want to render. In that case, create a newFOUserAgent
instance usingnewFOUserAgent()
.MIME types are used to select the output format (ex. "application/pdf" for PDF). You can use the constants defined in
MimeConstants
.- Parameters:
outputFormat
- the MIME type of the output format to use (ex. "application/pdf").userAgent
- the user agent that will be used to control the rendering run- Returns:
- the new Fop instance
- Throws:
FOPException
- when the constructor fails
-
isTableBorderOverpaint
boolean isTableBorderOverpaint() -
isSimpleLineBreaking
boolean isSimpleLineBreaking() -
isSkipPagePositionOnlyAllowed
boolean isSkipPagePositionOnlyAllowed() -
newFop
Returns a newFop
instance. FOP will be configured with a default user agent instance. Use this factory method if your output type requires an output stream.MIME types are used to select the output format (ex. "application/pdf" for PDF). You can use the constants defined in
MimeConstants
.- Parameters:
outputFormat
- the MIME type of the output format to use (ex. "application/pdf").stream
- the output stream- Returns:
- the new Fop instance
- Throws:
FOPException
- when the constructor fails
-
newFop
public Fop newFop(String outputFormat, FOUserAgent userAgent, OutputStream stream) throws FOPException Returns a newFop
instance. Use this factory method if your output type requires an output stream and you want to configure this very rendering run, i.e. if you want to set some metadata like the title and author of the document you want to render. In that case, create a newFOUserAgent
instance usingnewFOUserAgent()
.MIME types are used to select the output format (ex. "application/pdf" for PDF). You can use the constants defined in
MimeConstants
.- Parameters:
outputFormat
- the MIME type of the output format to use (ex. "application/pdf").userAgent
- the user agent that will be used to control the rendering runstream
- the output stream- Returns:
- the new Fop instance
- Throws:
FOPException
- when the constructor fails
-
newFop
Returns a newFop
instance. Use this factory method if you want to supply your ownRenderer
orFOEventHandler
instance instead of the default ones created internally by FOP.- Parameters:
userAgent
- the user agent that will be used to control the rendering run- Returns:
- the new Fop instance
- Throws:
FOPException
- when the constructor fails
-
getRendererFactory
- Returns:
- the RendererFactory
-
getXMLHandlerRegistry
- Returns:
- the XML handler registry
-
getImageHandlerRegistry
- Returns:
- the image handler registry
-
getElementMappingRegistry
- Returns:
- the element mapping registry
-
getContentHandlerFactoryRegistry
- Returns:
- the content handler factory registry
-
getRendererConfig
RendererConfig getRendererConfig(FOUserAgent userAgent, Configuration cfg, RendererConfig.RendererConfigParser configCreator) throws FOPException Returns the renderer configuration object for a specific renderer given the parser and configuration to read. The renderer config is cached such that theConfiguration
is only parsed once per renderer, per FopFactory instance.- Parameters:
userAgent
- the user agentcfg
- the configuration to be parsedconfigCreator
- the parser that creates the config object- Returns:
- the config object
- Throws:
FOPException
- when an error occurs while creating the configuration object
-
addElementMapping
Add the element mapping with the given class name.- Parameters:
elementMapping
- the class name representing the element mapping.
-
isAccessibilityEnabled
boolean isAccessibilityEnabled()Returns whether accessibility is enabled.- Returns:
- true if accessibility is enabled
-
isKeepEmptyTags
boolean isKeepEmptyTags() -
getImageManager
public org.apache.xmlgraphics.image.loader.ImageManager getImageManager()- See Also:
-
getLayoutManagerMakerOverride
-
getHyphenationPatternNames
-
validateStrictly
public boolean validateStrictly()- See Also:
-
isBreakIndentInheritanceOnReferenceAreaBoundary
public boolean isBreakIndentInheritanceOnReferenceAreaBoundary() -
getSourceResolution
public float getSourceResolution()- Specified by:
getSourceResolution
in interfaceorg.apache.xmlgraphics.image.loader.ImageContext
- See Also:
-
getTargetResolution
public float getTargetResolution()- See Also:
-
getHyphenationResourceResolver
-
getSourcePixelUnitToMillimeter
public float getSourcePixelUnitToMillimeter()Returns the conversion factor from pixel units to millimeters. This depends on the desired source resolution.- Returns:
- float conversion factor
- See Also:
-
getTargetPixelUnitToMillimeter
public float getTargetPixelUnitToMillimeter()Returns the conversion factor from pixel units to millimeters. This depends on the desired target resolution.- Returns:
- float conversion factor
- See Also:
-
getPageHeight
- See Also:
-
getPageWidth
- See Also:
-
isNamespaceIgnored
-
getIgnoredNamespace
- See Also:
-
getUserConfig
Get the user configuration.- Returns:
- the user configuration
-
validateUserConfigStrictly
public boolean validateUserConfigStrictly() -
getFontManager
- See Also:
-
getFallbackResolver
org.apache.xmlgraphics.image.loader.impl.AbstractImageSessionContext.FallbackResolver getFallbackResolver()- See Also:
-
getColorSpaceCache
Returns the color space cache for this instance.Note: this method should not be considered as part of FOP's external API.
- Returns:
- the color space cache
-
getHyphenationTreeCache
-