As Ghiath reported in the forum thread, I am seeing this same error.
I am using RadFixedDocument and am generating a PdfFormatProvider. As Ghiath mentioned it will work fine (weeks, months) and then it seems the the font file is locked and it cannot export.
System.IO.IOException: I/O error when opening file 'C:\WINDOWS\FONTS\MSYH.TTC'. System.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.IO.IOException: I/O error when opening file 'C:\WINDOWS\FONTS\MSYH.TTC'. at MS.Internal.FontCache.FileMapping.OpenFile(String fileName) at MS.Internal.FontCache.FontSource.GetUnmanagedStream() at System.Windows.Media.GlyphTypeface.ComputeSubset(ICollection`1 glyphs) at Telerik.Windows.Documents.Fixed.Model.Fonts.CidType2Font.ComputeSubset(IEnumerable`1 usedCharacters) at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Elements.Fonts.FontStream.CopyPropertiesFromOverride(IPdfExportContext context, FontBase font) at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Elements.Fonts.FontStream.CopyPropertiesFrom(IPdfExportContext context, FontBase font) at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Elements.Fonts.FontDescriptor.CreateFontFile(IPdfExportContext context, FontBase font) at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Elements.Fonts.FontDescriptor.ExportFontFile(IPdfExportContext context, FontBase font) at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Elements.Fonts.FontDescriptor.CopyPropertiesFrom(IPdfExportContext context, FontBase font) at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Elements.Fonts.CidFontObject.CopyPropertiesFromOverride(IPdfExportContext context, FontBase font) at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Elements.Fonts.CidFontObject.CopyPropertiesFrom(IPdfExportContext context, FontBase font) at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Elements.Fonts.Type0FontObject.CopyPropertiesFromOverride(IPdfExportContext context, FontBase font) at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Export.PdfExporter.WriteFontsFromContext(PdfWriter writer, IPdfExportContext context) at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Export.PdfExporter.Export(IRadFixedDocumentExportContext context, Stream output) at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.PdfFormatProvider.ExportOverride(RadFixedDocument document, Stream output) at Telerik.Windows.Documents.Common.FormatProviders.FormatProviderBase`1.Export(T document, Stream output)
It will throw the exception on the line where it is doing the export. The document is typically a multi-page document with images, etc. As I mentioned it might work fine for weeks and then once it fails the only solution is to recycle the web service.
We use the PDF viewer in an WPF project and see sometimes faulty pdfs in the telerik viewer. If I open the pdf file in acrobat it lloks fine. Do you know this problem ?
Attached you find the original file and a screenshot from PDF viewer. Other files are shown correct in the telerik viewer.
I have a simple program that imports a PDF, calls AcroForm.FlattenFormFields(), and calls Export() on the PdfFormatProvider. I am seeing the following exception during Import() on a signed W9 form a customer has uploaded into our system. Due to the sensitive nature of the document I cannot upload it, but below is the Sig section. I have tried other example signed PDFs which seem to work fine (See attached)
39 0 obj
<< /Type /Annot /Rotate 0 /AP 180 0 R /Rect [ 105.8515 149.2023 289.4443 261.1185
] /Border [ 0 0 0 ] /M (h<D[×¥\001.ƒ¶AB}«\006iÚ¿E@\024_”W±ÔÃ\030ÙL\020"É]a\012Ú6¡0\000¶Žm1@Ž)
/C [ 1 ] /DA (h<D[×¥\001.ƒ¶AB}«\006.\023âø‰\035\005íöu\002ÊÒ½ùwË@—‹måÿÚ[ ‹í!¨\001)
/F 4 /Subtype /Sig >>
endobj
Exception
System.NotSupportedException: 'Import of annotation with type Sig is not supported.'
Stack Trace
at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Elements.Annotations.AnnotationFactory.CreateUnsupportedAnnotationObject(PdfName type)
at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Converters.TypeAwareConverter`1.CreateInstance(Type type, PostScriptReader reader, IPdfImportContext context, PdfDictionary dictionary)
at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Converters.Converter.ConvertFromDictionary(Type type, PostScriptReader reader, IPdfImportContext context, PdfDictionary dictionary)
at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Converters.Converter.Convert(Type type, PostScriptReader reader, IPdfImportContext context, IPdfPrimitive value)
at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Converters.Converter.Convert(Type type, PostScriptReader reader, IPdfImportContext context, IPdfPrimitive value)
at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Types.PdfCollectionBase`1.ConvertElementToType[T](PostScriptReader reader, IPdfImportContext context, IPdfPrimitive element)
at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Types.PdfCollectionBase`1.TryGetElement[T](PostScriptReader reader, IPdfImportContext context, TIndex index, T& element)
at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Elements.DocumentStructure.Page.<>c__DisplayClass21_0.<CopyPageAnnotationsTo>b__0()
at Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.ExceptionHandling.ExecutionHandler.TryHandleExecution[E](Action operation)
Add support for creating Tables and applying tables styles (predefined ones or custom).
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
This would allow creating documents with preferences such us HideToolbar, HideMenubar, FitWindow, PrintScaling and all other viewer preferences specified in PDF format specification.
The stack shows 1070 repeated frames of:
The StructureTree import is traversing a cyclic StructElement graph (or equivalent re-entrant child chain) without a recursion guard.
During this recursion, indirect object resolution repeatedly re-enters the same compressed object:
The method should create deep copy of the current page.
PdfProcessing: Handle merge of documents containing fields with the same invalid name.