Class PDFAConvertParams

java.lang.Object
com.datalogics.PDFL.PDFAConvertParams

public class PDFAConvertParams extends Object
Parameters for converting a document to PDF/A compliance. These parameters control how a Document is converted to the PDF/A standard.

  • RemoveAllAnnotations if true, will remove all Annotations and Actions from the output

  • IgnoreFontErrors if true, will try to rasterize the page when fonts cannot be embedded

  • AbortIfXFAIsPresent if true, will abort conversion process if XFA form entry is detected

  • NoValidationErrors if true, will ignore validation errors

  • RasterizationResolution rasterization resolution; if 0, use 72 DPI

  • ValidateImplementationLimitsOfDocument Validate PDF Implementation Limits of the Document.

PDF/A is an ISO-standard version the PDF format. It is designed to be used with PDF files that need to be archived and stored for long periods. For example, the fonts in a PDF/A file are embedded in the file itself, rather than accessed through a link to a font directory on a local server.

  • Constructor Summary

    Constructors
    Constructor
    Description
     
    PDFAConvertParams(boolean RemoveAllAnnotations, boolean IgnoreFontErrors, boolean AbortIfXFAIsPresent)
    Parameters for converting to PDF/A.
    PDFAConvertParams(boolean removeAllAnnotations, boolean ignoreFontErrors, boolean abortIfXFAIsPresent, boolean noValidationErrors, int rasterizationResolution)
    Parameters for converting to PDF/A.
    PDFAConvertParams(boolean removeAllAnnotations, boolean ignoreFontErrors, boolean abortIfXFAIsPresent, boolean noValidationErrors, int rasterizationResolution, boolean validateImplementationLimitsOfDocument)
    Parameters for converting to PDF/A.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    boolean
    The presence of XFA can result in some loss of data in output PDF/A-1 file as the PDFProcessor does not support XFA.
    boolean
    If we encounter any errors like unembeddable fonts etc.
    boolean
    Permit validation errors to be ignored
    The Output Intent of a PDF/A document may be any valid CMYK Profile for CMYK Conversion, and any valid RGB profile for RGB conversion.
    int
    Permit user to select rasterization resolution When this value is zero, we will rasterize at 72 DPI (Legacy Behaviour).
    boolean
    Some of the standards like PDF/A prohibit the presence of some types of Annotations and Actions in order to comply with those standards.
    boolean
    Validate PDF Implementation Limits (as defined in the PDF Specification of the PDF/A target) of the Document.
    void
    setAbortIfXFAIsPresent(boolean theSetting)
    The presence of XFA can result in some loss of data in output PDF/A-1 file as the PDFProcessor does not support XFA.
    void
    setIgnoreFontErrors(boolean theSetting)
    If we encounter any errors like unembeddable fonts etc.
    void
    setNoValidationErrors(boolean theSetting)
    Permit validation errors to be ignored
    void
    The Output Intent of a PDF/A document may be any valid CMYK Profile for CMYK Conversion, and any valid RGB profile for RGB conversion.
    void
    Permit user to select rasterization resolution When this value is zero, we will rasterize at 72 DPI (Legacy Behaviour).
    void
    setRemoveAllAnnotations(boolean theSetting)
    Some of the standards like PDF/A prohibit the presence of some types of Annotations and Actions in order to comply with those standards.
    void
    setValidateImplementationLimitsOfDocument(boolean validateImplementationLimitsOfDocument)
    Validate PDF Implementation Limits (as defined in the PDF Specification of the PDF/A target) of the Document.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • PDFAConvertParams

      public PDFAConvertParams()
    • PDFAConvertParams

      public PDFAConvertParams(boolean RemoveAllAnnotations, boolean IgnoreFontErrors, boolean AbortIfXFAIsPresent)
      Parameters for converting to PDF/A.

      Parameters:
      RemoveAllAnnotations - Remove all annotations whether legal or illegal.
      IgnoreFontErrors - Rasterize a page when fonts cannot be embedded.
      AbortIfXFAIsPresent - Abort when XFA is present for PDF/A-1.
    • PDFAConvertParams

      public PDFAConvertParams(boolean removeAllAnnotations, boolean ignoreFontErrors, boolean abortIfXFAIsPresent, boolean noValidationErrors, int rasterizationResolution)
      Parameters for converting to PDF/A.

      Parameters:
      removeAllAnnotations - Remove all annotations whether legal or illegal.
      ignoreFontErrors - Rasterize a page when fonts cannot be embedded.
      abortIfXFAIsPresent - Abort when XFA is present for PDF/A-1.
      noValidationErrors - Ignore validation errors.
      rasterizationResolution - Rasterization resolution.
    • PDFAConvertParams

      public PDFAConvertParams(boolean removeAllAnnotations, boolean ignoreFontErrors, boolean abortIfXFAIsPresent, boolean noValidationErrors, int rasterizationResolution, boolean validateImplementationLimitsOfDocument)
      Parameters for converting to PDF/A.

      Parameters:
      removeAllAnnotations - Remove all annotations whether legal or illegal.
      ignoreFontErrors - Rasterize a page when fonts cannot be embedded.
      abortIfXFAIsPresent - Abort when XFA is present for PDF/A-1.
      noValidationErrors - Ignore validation errors.
      rasterizationResolution - Rasterization resolution.
      validateImplementationLimitsOfDocument - Validate PDF Implementation Limits of the Document.
  • Method Details

    • delete

      public void delete()
    • getRemoveAllAnnotations

      public boolean getRemoveAllAnnotations()
      Some of the standards like PDF/A prohibit the presence of some types of Annotations and Actions in order to comply with those standards.

      By default we will filter all illegal Annotations and Actions.

      If false we will filter out all illegal Annotations and Actions (according to the standard being used) while retaining the legal ones. If true this will remove all the Annotations and Actions from the output PDF/A compliant file.

    • setRemoveAllAnnotations

      public void setRemoveAllAnnotations(boolean theSetting)
      Some of the standards like PDF/A prohibit the presence of some types of Annotations and Actions in order to comply with those standards.

      By default we will filter all illegal Annotations and Actions.

      If false we will filter out all illegal Annotations and Actions (according to the standard being used) while retaining the legal ones. If true this will remove all the Annotations and Actions from the output PDF/A compliant file.

    • getIgnoreFontErrors

      public boolean getIgnoreFontErrors()
      If we encounter any errors like unembeddable fonts etc. while conversion then we try to rasterize the current page on which the error occured. However the client can modify this behavior by setting the value of this parameter to false in which case we will throw an error if we encounter any problems while conversion.

      By default we will rasterize the page on error.

      If true we will try to rasterize the current page if any error occured. If false we will abort and throw an exception if any error occured.

    • setIgnoreFontErrors

      public void setIgnoreFontErrors(boolean theSetting)
      If we encounter any errors like unembeddable fonts etc. while conversion then we try to rasterize the current page on which the error occured. However the client can modify this behavior by setting the value of this parameter to false in which case we will throw an error if we encounter any problems while conversion.

      By default we will rasterize the page on error.

      If true we will try to rasterize the current page if any error occured. If false we will abort and throw an exception if any error occured.

    • getAbortIfXFAIsPresent

      public boolean getAbortIfXFAIsPresent()
      The presence of XFA can result in some loss of data in output PDF/A-1 file as the PDFProcessor does not support XFA. However you can choose to abort the conversion if XFA is present by setting this parameter to true. By default we will not abort if XFA is present for PDF/A-1.

      By default we will not abort if XFA is present for PDF/A-1.

      If false we will convert even if XFA is found. If true we will abort the process if XFA is found.

    • setAbortIfXFAIsPresent

      public void setAbortIfXFAIsPresent(boolean theSetting)
      The presence of XFA can result in some loss of data in output PDF/A-1 file as the PDFProcessor does not support XFA. However you can choose to abort the conversion if XFA is present by setting this parameter to true. By default we will not abort if XFA is present for PDF/A-1.

      By default we will not abort if XFA is present for PDF/A-1.

      If false we will convert even if XFA is found. If true we will abort the process if XFA is found.

    • getNoValidationErrors

      public boolean getNoValidationErrors()
      Permit validation errors to be ignored

      When true, PDF Implementation Limits (as defined in the PDF Specification of the PDF/A target) of the page are ignored. When false, PDF Implementation Limits of the Page are checked and if violated will cause the Page to be rasterized as a fallback mechanism when IgnoreFontErrors is true or simply raise an error if IgnoreFontErrors is false.

    • setNoValidationErrors

      public void setNoValidationErrors(boolean theSetting)
      Permit validation errors to be ignored

      When true, PDF Implementation Limits (as defined in the PDF Specification of the PDF/A target) of the page are ignored. When false, PDF Implementation Limits of the Page are checked and if violated will cause the Page to be rasterized as a fallback mechanism when IgnoreFontErrors is true or simply raise an error if IgnoreFontErrors is false.

    • getValidateImplementationLimitsOfDocument

      public boolean getValidateImplementationLimitsOfDocument()
      Validate PDF Implementation Limits (as defined in the PDF Specification of the PDF/A target) of the Document. When true. PDF Implementation Limits are checked and if violated raise an error. When false, PDF Implementation Limits are not checked. Note this option applies to the Whole document versus only Pages in the NoValidationErrors option. NOTE: It's recommended NoValidationErrors be set to false, IgnoreFontErrors be set to false, and ValidateImplementationLimitsOfDocument be set to true for getting the best quality output that adheres to the specification.
    • setValidateImplementationLimitsOfDocument

      public void setValidateImplementationLimitsOfDocument(boolean validateImplementationLimitsOfDocument)
      Validate PDF Implementation Limits (as defined in the PDF Specification of the PDF/A target) of the Document. When true. PDF Implementation Limits are checked and if violated raise an error. When false, PDF Implementation Limits are not checked. Note this option applies to the Whole document versus only Pages in the NoValidationErrors option. NOTE: It's recommended NoValidationErrors be set to false, IgnoreFontErrors be set to false, and ValidateImplementationLimitsOfDocument be set to true for getting the best quality output that adheres to the specification.
    • getRasterizationResolution

      public int getRasterizationResolution()
      Permit user to select rasterization resolution When this value is zero, we will rasterize at 72 DPI (Legacy Behaviour). Otherwise, we will interpret the value as the desired resolution.
    • setProfileDesc

      public void setProfileDesc(String profile)
      The Output Intent of a PDF/A document may be any valid CMYK Profile for CMYK Conversion, and any valid RGB profile for RGB conversion. This parameter allows the user to specify a particular profile for this conversion by description. When this parameter is not present, the profile "U.S. Web Coated (SWOP) v2" will be used for CMYK Conversions, and "sRGB IEC61966-2.1" for RGB conversions.

      If this description is present, and specifies a profile of the wrong color family, or specifies a profile which cannot be located in resources, an exception will be raised.

    • getProfileDesc

      public String getProfileDesc()
      The Output Intent of a PDF/A document may be any valid CMYK Profile for CMYK Conversion, and any valid RGB profile for RGB conversion. This parameter allows the user to specify a particular profile for this conversion by description. When this parameter is not present, the profile "U.S. Web Coated (SWOP) v2" will be used for CMYK Conversions, and "sRGB IEC61966-2.1" for RGB conversions.

      If this description is present, and specifies a profile of the wrong color family, or specifies a profile which cannot be located in resources, an exception will be raised.

    • setRasterizationResolution

      public void setRasterizationResolution(int theSetting)
      Permit user to select rasterization resolution When this value is zero, we will rasterize at 72 DPI (Legacy Behaviour). Otherwise, we will interpret the value as the desired resolution.