PDFAConvertParams Class Documentation
classPDFAConvertParamsNamespace:datalogics_interface
Detailed Description
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 & Destructor Documentation
PDFAConvertParams
PDFAConvertParams()Initializes with RemoveAllAnnotations = false, IgnoreFontErrors = true, AbortIfXFAIsPresent = false, NoValidationErrors = false, RasterizationResolution = 72, and ValidateImplementationLimitsOfDocument = true.
PDFAConvertParams
PDFAConvertParams(const PDFAConvertParams &other)Parameters
other: const PDFAConvertParams &
Copy constructor.
PDFAConvertParams
PDFAConvertParams(PDFAConvertParams &&)Parameters
~PDFAConvertParams
~PDFAConvertParams()Member Function Documentation
get_abort_if_xfa_is_present
boolget_abort_if_xfa_is_present()Returns:
boolThe 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.
get_ignore_font_errors
boolget_ignore_font_errors()Returns:
boolIf 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.
get_no_validation_errors
boolget_no_validation_errors()Returns:
boolPermit 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.
get_profile_description
std::stringget_profile_description()Returns:
std::stringThe 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.
get_rasterization_resolution
intget_rasterization_resolution()Returns:
intPermit 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.
get_remove_all_annotations
boolget_remove_all_annotations()Returns:
boolSome 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.
get_validate_implementation_limits
boolget_validate_implementation_limits()Returns:
boolValidate 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.
operator=
PDFAConvertParams &operator=(const PDFAConvertParams &other)Parameters
other: const PDFAConvertParams &
Returns:
PDFAConvertParams &Copy assignment.
operator=
PDFAConvertParams &operator=(PDFAConvertParams &&)Parameters
Returns:
PDFAConvertParams &set_abort_if_xfa_is_present
voidset_abort_if_xfa_is_present(boolvalue)Parameters
value: booltrue to abort PDF/A-1 conversion if XFA is present; false to continue with possible loss of XFA data.
Returns:
voidThe 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.
set_ignore_font_errors
voidset_ignore_font_errors(boolvalue)Parameters
value: booltrue to rasterize the current page when an error (such as an unembeddable font) is encountered during conversion; false to abort and throw an exception instead.
Returns:
voidIf 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.
set_no_validation_errors
voidset_no_validation_errors(boolvalue)Parameters
value: booltrue to ignore PDF Implementation Limit violations on a page; false to enforce them, falling back to rasterization (when IgnoreFontErrors is true) or raising an error (when it is false).
Returns:
voidPermit 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.
set_profile_description
voidset_profile_description(const std::string &profile)Parameters
profile: const std::string &the description of the Output Intent profile to use; must be a valid CMYK profile for CMYK conversions or a valid RGB profile for RGB conversions.
Returns:
voidThe 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.
set_rasterization_resolution
voidset_rasterization_resolution(intdpi)Parameters
dpi: intthe desired rasterization resolution in DPI; zero rasterizes at 72 DPI (legacy behaviour).
Returns:
voidPermit 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.
set_remove_all_annotations
voidset_remove_all_annotations(boolvalue)Parameters
value: booltrue to remove all Annotations and Actions from the output PDF/A; false to filter only those illegal under the standard while keeping the legal ones.
Returns:
voidSome 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.
set_validate_implementation_limits
voidset_validate_implementation_limits(boolvalue)Parameters
value: booltrue to check PDF Implementation Limits across the whole document and raise an error if violated; false to skip the check.
Returns:
voidValidate 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.