Approved
Last Updated: 13 Nov 2019 15:06 by ADMIN
When a document is imported the FontsRepository caches the created font instances for performance reasons. API should be provided for clearing the cached instances in order to reduce memory consumption.
In Development
Last Updated: 11 Nov 2019 14:37 by Chris
The exception is thrown with the message "Password is not correct" even when the user password is correct. This issue occurs for specific encryption algorithm parameters only.
Approved
Last Updated: 06 Nov 2019 12:43 by ADMIN
By specification, the InteractiveForm fields can have the same name if they are descendants of a common ancestor. Such fields are different representations of the same underlying field; they should differ only in properties that specify their visual appearance. When such a document is imported an ArgumentException: 'An item with the same key has already been added.' is thrown.
Completed
Last Updated: 05 Nov 2019 12:03 by ADMIN
Release LIB 2019.3.1111 (11/11/2019)
If the font family name is defined using a language other than English, the font is not applied to the content. This also can affect the performance as the font is read but it is not registered in the FontsRepository.
Declined
Last Updated: 04 Nov 2019 09:38 by ADMIN
Created by: Daniel
Comments: 1
Category: PdfProcessing
Type: Feature Request
1
We would like to search a PDF document for specific text and returns its position. We generate PDF reports using Telerik Reporting which contain placeholders that are replaced with images and text at run-time. It appears the logic has already been implemented, but the implementing classes (e.g., TextSearch, TextRecognizer) aren't accessible. Please consider making this capability available.
Completed
Last Updated: 17 Oct 2019 05:57 by ADMIN
Release R3 2019 SP1
By specification when a form field is merged with the dictionary of the widget annotation, a Kids parameter can be existent if there are more than one widget annotations for that field. Support for importing such a fields should be added. 
Completed
Last Updated: 17 Oct 2019 05:57 by ADMIN
Release R3 2019 SP1
By specification the widget annotation and its content can be merged into the field dictionary. When merged widget with Kids property is imported an InvalidCastException: 'Unable to cast object of type 'Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Elements.Annotations.WidgetObject' to type 'Telerik.Windows.Documents.Fixed.FormatProviders.Pdf.Model.Elements.Forms.FormFieldNode'.' is thrown.
Declined
Last Updated: 15 Oct 2019 17:38 by ADMIN

I was working on some acroforms and wherever I needed a space I kept on getting a different letter (Ê). On debugging the problem seems to be in the TryGetCharCode function of OpenTypeFontSource

Version: 2019.3.917

Below is copy of function

public override bool TryGetCharCode(int unicode, out int charCode)
        {
            bool result = false;
            ushort glyphId;
            charCode = CMap.MISSING_GLYPH_ID;
            if (this.TryGetGlyphId(unicode, out glyphId))
            {
                ushort uCharCode = CMap.MISSING_GLYPH_ID;
                CMapTable table = this.CMap.GetCMapTable(3, 0);
                if (table != null)
                {
                    result = table.TryGetCharId(glyphId, out uCharCode);
                }

                table = this.CMap.GetCMapTable(1, 0);
                if (table != null)
                {
                    result = table.TryGetCharId(glyphId, out uCharCode);
                }

                charCode = uCharCode;

                return result;
            }

            return false;
        }

The font used has 2 cmap tables: one with platformid of 3 and encodingid of 1, the other with platformid 1 and encodingid 0. According to https://docs.microsoft.com/en-us/typography/opentype/spec/cmap platform id 3 and encoding 1 is correct for windows so not sure why the first call to getcmaptable looks for encodingid 0.

Second of all even if I change it to the following

CMapTable table = this.CMap.GetCMapTable(3, 1);

if there is a second cmap with platformid of 1 whatever the result of the call with regards to platformid 3, the result will be overridden

I can say that if I add some checks so that if the first call succeeds it doesn't attempt the 2nd I do get the expected behaviour in the pdf and get spaces

 

As a note the FontFamily property of the OpenTypeFontSource is "Arial"

Approved
Last Updated: 14 Oct 2019 17:31 by ADMIN
Created by: Narendra
Comments: 0
Category: PdfProcessing
Type: Feature Request
0
These permissions are defined on a document level and apply permission handlers. The permission handlers are similar to the security handlers but do not require the document to be encrypted. They are also used to determine which objects are to be included in the digest calculation used for the digital signature functionality.
Approved
Last Updated: 10 Oct 2019 14:09 by ADMIN
By specification the destination string can be a string of up to 512 bytes. However, the current implementation supports strings of up to four bytes which leads to: ArgumentOutOfRangeException: 'bytes should be less or equal than 4.Parameter name: bytes'.
Approved
Last Updated: 09 Oct 2019 13:11 by ADMIN
Trying to clone the Signature of a SignatureField leads to InvalidOperationException as the FieldName of the cloned signature is already set.
Approved
Last Updated: 04 Oct 2019 13:36 by ADMIN
Created by: Rick Kauwen
Comments: 0
Category: PdfProcessing
Type: Feature Request
1
This feature is currently supported only for the .NET Framework and .NET Core applications for Windows.
Approved
Last Updated: 01 Oct 2019 11:43 by ADMIN
If ImageInline's size is set through its Size property and not through Height or Width, the given size is not respected on export.
Completed
Last Updated: 24 Sep 2019 13:40 by ADMIN
Release R3 2019
ADMIN
Created by: Tanya
Comments: 0
Category: PdfProcessing
Type: Feature Request
3
This type of destinations is not supported and leads to InvalidCastException when importing such elements.
Approved
Last Updated: 23 Sep 2019 17:19 by ADMIN
When there is a destination object in a RadFixedDocument and it doesn't have page set (it is null), an exception is thrown. However, this is supported by Adobe and it is not forbidden in the Pdf specification.
Approved
Last Updated: 20 Sep 2019 14:43 by ADMIN
According to the specification, the startfref keyword must be followed by the offset the xref table start on, defined on a new line. Some documents, however, have both entries defined on the same line, which leads to InvalidOperationException with message "Stack empty" while importing. Make sure this case is handled in PdfProcessing as well.
Approved
Last Updated: 20 Sep 2019 10:16 by ADMIN
Created by: Marc
Comments: 2
Category: PdfProcessing
Type: Feature Request
3
Add support for Lab color space to allow clients to import and export documents with Lab color space.
Approved
Last Updated: 17 Sep 2019 13:46 by ADMIN

Exporting document with a missing image is caused by handled Exception on import for DecodeParms containing null or stream object. Currently, PdfProcessing supports only decode parameters containing simple types. The case when some dictionary value is null or stream object should be implemented.

Another case is when the whole dictionary/stream is null. In this case, an ArgumentNullException is thrown.
Completed
Last Updated: 17 Sep 2019 13:01 by ADMIN
Release R3 2019
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;
        }
    }
}
Completed
Last Updated: 17 Sep 2019 07:30 by ADMIN
Release R3 2019
ADMIN
Created by: Deyan
Comments: 0
Category: PdfProcessing
Type: Feature Request
7
Add support for ToUnicode CMap stream.

A side effect of not supporting it is the following: exporting PDF document which, for example, contains German umlauts, to plain text, leads to wrong characters in the resulting text.

As possible workaround, the PdfFormatProvider instance of RadPdfViewer can be used to import the document. For example:

FormatProviderSettings settings = new FormatProviderSettings(ReadingMode.OnDemand);
PdfFormatProvider pdfViewerFormatProvider = new PdfFormatProvider(stream, settings);
 
RadFixedDocument document = pdfViewerFormatProvider.Import();
 
TextFormatProvider textFormatProvider = new TextFormatProvider();
String text = textFormatProvider.Export(document);
1 2 3 4 5 6