According to the PDF specification (Adobe® Portable Document Format Version 1.7), the appearance dictionary is optional and it is specifying how the annotation is presented visually on the page.
Exceptions thrown:
InvalidCastException: 'Unable to cast object of type 'Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Types.PdfNull' to type 'Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Elements.Annotations.Appearance'.'
NullReferenceException: 'Object reference not set to an instance of an object.'
When the document contains Simple Font with predefined encoding and no ToUnicode mapping the text should be extracted with the following algorithm:
Currently, the PdfProcessing library doesn't map the character code properly which leads to wrongly encoded text content.
This API should provide a method for removing all fields and widgets in the document and draw the default widget appearance in place of the removed widgets. WORKAROUND: Sample implementation for flattening form fields may be seen in the FlattenFormFields method from the attached demo project.
Adding a table with the same code leads to different results
When adding 10 identical tables onе or more have missing rows at the bottom. The seems to be caused by the text measurement.
When a TrueType font is defined, the mapping of character codes to glyph indices depends on the built-in cmap table mappings defined in the font and the Encoding property defined in the PDF dictionary.
However, the current implementation maps all characters with cmap tables for Microsoft Symbolic and Macintosh Roman, which causes incorrect mapping results, e.g. space characters are mapped to an Ê glyph.
The issue is also described in the following public item: TryGetCharCode for OpenTypeFont uses wrong cmap and returns wrong charcode.
Workaround: Change the font of the TextBoxField's widget appearance:
foreach (var widget in field.Widgets)
{
widget.TextProperties.Font = FontsRepository.Helvetica;
}
Currently, this missing functionality may be workaround by either drawing the headers and footers with FixedContentEditor or by using RadWordsProcessing PDF export.
When exporting a document referencing PdfProcessing`s .NET Standard assemblies with PdfComplianceLevel set an exception is thrown.
The common annotation properties are described in table "Entries common to all annotation dictionaries" of the Pdf specification.
Declined: Handling a partial annotation import-export could lead to exporting invalid PDF documents.
When merging or splitting files that contain the "159 '\u009f'" char, ArgumentException("The encoding is not supported.") is thrown.
This issue can also result in ArgumentException in client applications with the message: currentIndirectObject should be null.
Workaround:
Use PdfFormatProvider or reflection to register the char (check the comments).