Currently this operator is interpreted correctly only for Pattern colorspace. It also partially supports the rest of the colorspaces from R1 2018. Available in R2 2018 Official Release Version.
This new API will not read/delete the existing PDF pages content and this would allow performance and memory efficient realization of the following scenarios: - Merge PDF document pages from different PDF files. - Split PDF document pages to separate PDF files. - Append/Prepend PDF content to existing PDF pages. Moreover, as this approach will not require reading/deleting existing PDF page content, it will not depend on complex PDF features and will depend only on the PDF file structure. This will allow processing of PDF documents which use less common PDF features which are currently not supported by the existing PdfProcessing API. Available in R1 2017 Release
When creating a GradientStop, an alpha channel of the color could be applied. However, this setting is not respected it the result document and the gradient is with full opacity. Steps to reproduce: 1. Create a gradient with an alpha channel: RadFixedDocument document = new RadFixedDocument(); RadFixedPage page = document.Pages.AddPage(); FixedContentEditor containerEditor = new FixedContentEditor(page); LinearGradient linearGradient = new LinearGradient(new Point(0, 0), new Point(30, 30)); linearGradient.GradientStops.Add(new GradientStop(new RgbColor(10, 0, 207, 0), 0)); linearGradient.GradientStops.Add(new GradientStop(new RgbColor(10, 0, 102, 204), 1)); containerEditor.GraphicProperties.FillColor = linearGradient; containerEditor.DrawRectangle(new Rect(10, 10, 48, 29)); 2. Export the document to PDF Observed: The alpha channel is not respected and the gradient is with full opacity
This is reproducible with specific PDF files which use custom Encoding for the fonts of the field widgets. WORKAROUND: Change the font of VariableContentWidgets before editing the field value. You should additionally call RecalculateContent() method of these widgets if the value of their corresponding fields is not edited. The following method may be used for changing the font of all existing widgets in the document: private static void FixEncodingIssues(RadFixedDocument document) { foreach(Annotation annotation in document.Annotations) { VariableContentWidget widget = annotation as VariableContentWidget; if(widget != null) { widget.TextProperties.Font = FontsRepository.Helvetica; } } }
ZUGFeRD (acronym for Zentraler User Guide des Forums elektronische Rechnung Deutschland) is a specification for the electronic invoice format of the same name.
The feature depends on the following features:
The expected behavior is to iterate all the pages in a PDF document, export each page's content to an image and combine all the images in a common multipage TIFF image.
Workaround: Converting a PDF Document to a Multipage TIFF Image
PdfStreamWriter: "InvalidOperationException: 'isContentReleased'" is thrown when creating a multi-page document with an umlaut on the last page.
Workaround - Explicitly set the block font:block.TextProperties.Font = FontsRepository.Courier;
CMYK color may be set using SCN, scn, K and k operators. Available support for import of CMYK colors in R3 2018 Official Release.
The issue may be reproduced by opening the attached PDF in Adobe Reader. Although the viewer initially shows the characters correctly, when you start typing in the TextBox, the umlaut/diacritics characters get corrupted. In other PDF viewers, the umlaut characters are handled correctly, so the issue seems to related to concrete Adobe Reader encoding handling implementation. The diacritic characters are handled incorrectly in other viewers as well (e.g. Chrome).
Text fields should support rich text strings allowing the user to use rich text elements and attributes.
Provide a way to change the Name of a FormField from the RadDocument.AcroForm.FormFields collection. As a workaround, you could create a new instance of a FormField with the desired name, add the new field in the document and remove the old one. You can use the following approach: 1) Create a new instance of FormField (with the desired name, passed in the constructor), which will play the role of a copy of a specific FormField 2) Copy all properties from the original field (they all vary, depending on the concrete type of the FormField, for example CheckBoxField, etc.) 3) Create a new widget for the new field, and copy all properties from the original field's widget into the new one. 4) Remove the original field from the RadDocument.AcroForm.FormFields collection and add the new field. 5) Remove the original widget from the corresponding page's annotation and add the new one. Attached is a project demonstrating this approach for a CheckBoxField.
Currently, a default constant value is used for the font size in this scenario.
For instance, we may implement WritePageAsync method in addition to the existing WritePage method. This is a similar scenario as in System.IO.StreamWriter class which has WriteLine and WriteLineAsync methods.