Endless loop on PDF export when an empty string is assigned to text fields with no source /V and auto-sized default appearance (/DA with 0 Tf).
Workaround: Instead of an empty string (""), set the value to null. Or don't set it at all and leave it unmodified.
For example, when some PDF file has uncompressed contents we may import it and apply better compression to the stream objects. Ensure that all the content inside the document is compressed.
Currently, we have the following options for PDF export optimizations:
pdfFormatProvider.ExportSettings.ImageQuality = ImageQuality.Low;
pdfFormatProvider.ExportSettings.ImageCompression = new ImageFilterTypes[] { ImageFilterTypes.FlateDecode };pdfFormatProvider.ExportSettings.StreamCompression = new StreamFilterTypes[] { StreamFilterTypes.FlateDecode };pdfFormatProvider.ExportSettings.FontEmbeddingType = FontEmbeddingType.Subset;
If a PDF with a TextBoxField is created with a corresponding Widget, the text is actually long enough to be broken in more than one line and AllowScroll is set to true, upon opening the file in Adobe, the text is not visible. The field actually does have an appearance which can be seen upon inspection of the document but for some reason it is not visualized. Another issue seems to be a different manifestation of the same problem: When the text is long and AllowScroll is false, the text will be visible, but will be misplaced. The issue is caused by the length of the text because the same field with a shorter text that can fit in the widget's rectangle will be displayed correctly.
When a row has two cells and the content of the first one is large, the width of the second cell results in too small value while measuring and its content remains invisible.
Workaround: Set PreferredWidth to the second cell.
If the MatrixPosition has Matrix (1, 0, 0, 1, 20, 10) the Table should be positioned with top-left coordinate (20, 10). Instead, it is wrongly positioned at (40, 20).
When signing a PDF document with an image using the PdfStreamSigner, the signature is broken. This is the used approach for signing the document: https://www.telerik.com/document-processing-libraries/documentation/libraries/radpdfprocessing/features/digital-signature/pdfstreamsigner
However, instead of using the DrawText method, the DrawImage method is used.
NotImplementedException is thrown for GetCapHeight method of CFFFontSource.
System.NotImplementedException: The method or operation is not implemented.NetStandard: Missing content due to empty glyph outlines in embedded TrueType font subsets.
Fully embed the fonts in the result PDF document:
PdfFormatProvider pdfFormatProvider = new PdfFormatProvider();
pdfFormatProvider.ExportSettings.FontEmbeddingType = FontEmbeddingType.Full;Workaround 2
Switch to a .NET Framework project environment and use the .NET Framework PdfProcessing packages.
Corrupted document when exporting "Courier New" subset.
Workaround - fully embed the font:
var pdfFormatProvider = new PdfFormatProvider();
pdfFormatProvider.ExportSettings.FontEmbeddingType = FontEmbeddingType.Full;NOTE: There are reports for other fonts' subset, e.g. "ZapfDingbats" font.
When importing a document containing an invalid PDF object dictionary key an exception is thrown.
When importing a document with button field with missing type, an error occurs.
51 0 obj << /Kids [ 70 0 R 71 0 R 72 0 R 73 0 R 74 0 R 75 0 R 76 0 R 77 0 R 78 0 R 79 0 R 80 0 R 81 0 R 82 0 R 83 0 R 84 0 R 85 0 R 86 0 R 87 0 R 88 0 R 89 0 R 90 0 R 91 0 R 92 0 R 93 0 R 94 0 R 95 0 R 96 0 R 97 0 R 98 0 R 99 0 R 100 0 R 101 0 R 102 0 R 103 0 R 104 0 R 105 0 R 106 0 R 107 0 R 108 0 R 109 0 R 110 0 R 111 0 R 112 0 R 113 0 R 114 0 R 115 0 R 116 0 R 14 0 R ] /T (Button 70) >> endobj
Workaround: Handle the exception: https://docs.telerik.com/devtools/document-processing/libraries/radpdfprocessing/features/handling-document-exceptions