Package org.apache.fop.pdf
Class PDFProfile
- java.lang.Object
-
- org.apache.fop.pdf.PDFProfile
-
public class PDFProfile extends java.lang.Object
This class allows tracks the enabled PDF profiles (PDF/A and PDF/X) and provides methods to the libarary and its users to enable the generation of PDFs conforming to the enabled PDF profiles.Some profile from PDF/X and PDF/A can be active simultaneously (example: PDF/A-1 and PDF/X-3:2003).
-
-
Constructor Summary
Constructors Constructor Description PDFProfile(PDFDocument doc)
Main constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.lang.String
format(java.lang.String pattern, java.lang.Object arg)
private java.lang.String
format(java.lang.String pattern, java.lang.Object[] args)
PDFDocument
getDocument()
PDFAMode
getPDFAMode()
PDFUAMode
getPDFUAMode()
PDFVTMode
getPDFVTMode()
PDFXMode
getPDFXMode()
boolean
isAnnotationAllowed()
boolean
isFontEmbeddingRequired()
boolean
isIDEntryRequired()
boolean
isModDateRequired()
boolean
isPDFAActive()
boolean
isPDFVTActive()
boolean
isPDFXActive()
java.lang.Object
isTransparencyAllowed()
Returnsnull
if transparency is allowed, otherwise returns the profile that prevents it.boolean
isTrappedEntryRequired()
void
setPDFAMode(PDFAMode mode)
Sets the PDF/A modevoid
setPDFUAMode(PDFUAMode mode)
void
setPDFVTMode(PDFVTMode mode)
Sets the PDF/X modevoid
setPDFXMode(PDFXMode mode)
Sets the PDF/X modejava.lang.String
toString()
protected void
validateProfileCombination()
Validates if the requested profile combination is compatible.void
verifyActionAllowed()
Checks if Actions are allowed.void
verifyAnnotAllowed()
Checks if annotations are allowed.void
verifyEmbeddedFilesAllowed()
Checks if embedded files are allowed.void
verifyEncryptionAllowed()
Checks if encryption is allowed.void
verifyPDFVersion()
Checks if the right PDF version is set.void
verifyPSXObjectsAllowed()
Checks if PostScript XObjects are allowed.void
verifyTaggedPDF()
Checks a few things required for tagged PDF.void
verifyTitleAbsent()
Checks if a title may be absent.void
verifyTransparencyAllowed(java.lang.String context)
Checks if the use of transparency is allowed.
-
-
-
Field Detail
-
pdfAMode
protected PDFAMode pdfAMode
Indicates the PDF/A mode currently active. Defaults to "no restrictions", i.e. PDF/A not active.
-
pdfUAMode
protected PDFUAMode pdfUAMode
-
pdfXMode
protected PDFXMode pdfXMode
Indicates the PDF/X mode currently active. Defaults to "no restrictions", i.e. PDF/X not active.
-
pdfVTMode
protected PDFVTMode pdfVTMode
-
doc
private PDFDocument doc
-
-
Constructor Detail
-
PDFProfile
public PDFProfile(PDFDocument doc)
Main constructor- Parameters:
doc
- the PDF document
-
-
Method Detail
-
validateProfileCombination
protected void validateProfileCombination()
Validates if the requested profile combination is compatible.
-
getDocument
public PDFDocument getDocument()
- Returns:
- the PDFDocument this profile is attached to
-
getPDFAMode
public PDFAMode getPDFAMode()
- Returns:
- the PDF/A mode
-
getPDFUAMode
public PDFUAMode getPDFUAMode()
-
isPDFAActive
public boolean isPDFAActive()
- Returns:
- true if any PDF/A mode is active
-
setPDFAMode
public void setPDFAMode(PDFAMode mode)
Sets the PDF/A mode- Parameters:
mode
- the PDF/A mode
-
setPDFUAMode
public void setPDFUAMode(PDFUAMode mode)
-
getPDFXMode
public PDFXMode getPDFXMode()
- Returns:
- the PDF/X mode
-
getPDFVTMode
public PDFVTMode getPDFVTMode()
-
isPDFXActive
public boolean isPDFXActive()
- Returns:
- true if any PDF/X mode is active
-
isPDFVTActive
public boolean isPDFVTActive()
-
setPDFXMode
public void setPDFXMode(PDFXMode mode)
Sets the PDF/X mode- Parameters:
mode
- the PDF/X mode
-
setPDFVTMode
public void setPDFVTMode(PDFVTMode mode)
Sets the PDF/X mode- Parameters:
mode
- the PDF/X mode
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
format
private java.lang.String format(java.lang.String pattern, java.lang.Object[] args)
-
format
private java.lang.String format(java.lang.String pattern, java.lang.Object arg)
-
verifyEncryptionAllowed
public void verifyEncryptionAllowed()
Checks if encryption is allowed.
-
verifyPSXObjectsAllowed
public void verifyPSXObjectsAllowed()
Checks if PostScript XObjects are allowed.
-
verifyTransparencyAllowed
public void verifyTransparencyAllowed(java.lang.String context)
Checks if the use of transparency is allowed.- Parameters:
context
- Context information for the user to identify the problem spot
-
isTransparencyAllowed
public java.lang.Object isTransparencyAllowed()
Returnsnull
if transparency is allowed, otherwise returns the profile that prevents it.- Returns:
null
, or an object whosetoString
method returns the name of the profile that disallows transparency
-
verifyPDFVersion
public void verifyPDFVersion()
Checks if the right PDF version is set.
-
verifyTaggedPDF
public void verifyTaggedPDF()
Checks a few things required for tagged PDF.
-
isIDEntryRequired
public boolean isIDEntryRequired()
- Returns:
- true if the ID entry must be present in the trailer.
-
isFontEmbeddingRequired
public boolean isFontEmbeddingRequired()
- Returns:
- true if all fonts need to be embedded.
-
verifyTitleAbsent
public void verifyTitleAbsent()
Checks if a title may be absent.
-
isModDateRequired
public boolean isModDateRequired()
- Returns:
- true if the ModDate Info entry must be present.
-
isTrappedEntryRequired
public boolean isTrappedEntryRequired()
- Returns:
- true if the Trapped Info entry must be present.
-
isAnnotationAllowed
public boolean isAnnotationAllowed()
- Returns:
- true if annotations are allowed
-
verifyAnnotAllowed
public void verifyAnnotAllowed()
Checks if annotations are allowed.
-
verifyActionAllowed
public void verifyActionAllowed()
Checks if Actions are allowed.
-
verifyEmbeddedFilesAllowed
public void verifyEmbeddedFilesAllowed()
Checks if embedded files are allowed.
-
-