Approved
Last Updated: 20 Sep 2016 11:55 by ADMIN
Reading a password protected archive by passing a wrong password doesn't notify the user that the password is wrong. Accessing one of the entries in the archive throws a generic "Invalid data" exception.

Steps to reproduce:
1. Create a zip file with password.
2. Open the same archive with the API passing wrong password and then try to one of the entries.
Observed: InvalidDataException is thrown when trying to read one of the entries in the archive.
Expected: The exception should be more meaningful and if possible occur when reading the archive. There should be API allowing to check if the password is correct.
Approved
Last Updated: 28 Feb 2019 13:55 by ADMIN
When opened in Adobe Reader it says that the file "claims compliance". However, when verifying the compliance with some validation tools there seem to be some issues mainly related but not limited to fonts. 
Approved
Last Updated: 31 Jan 2019 13:30 by ADMIN
ADMIN
Created by: Tanya
Comments: 4
Category: PdfProcessing
Type: Bug Report
7
When merging, only the widgets are copied but not their fields. This can lead to ArgumentNullException when exporting the document. Implement copying the fields and consider cases which include collision of names of the fields.

Workaround:
Repair the generated document using the following code:
foreach (Widget widget in this.pdfDocument.Annotations.Where(annot => annot.Type == AnnotationType.Widget))
{
    if (!this.pdfDocument.AcroForm.FormFields.Contains(widget.Field.Name))
    {
        this.pdfDocument.AcroForm.FormFields.Add(widget.Field);
    }
}
In case of Name collision, you can use the attached project or the attached project to the following feedback item to rename the duplicate fields: Provide a way to rename FormFields.
Approved
Last Updated: 13 Jul 2018 11:22 by ADMIN
LineInfo objects are not cleared when there are tables in the document being exported to PDF which leads to OutOfMemoryException.
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;
        }
    }
}
Approved
Last Updated: 13 Mar 2019 16:39 by ADMIN
Table and table cell borders are not evaluated according to inheritance and conflict resolution rules. A conflict will occur when different borders from the table and table cell are overlapping. 

The GetActualValue method of the TableBorders and TableCellBorders could potentially return an incorrect value in some of the following scenarios:

Scenario 1:
A table has cell spacing set to 0. Meaning that the table and table cell borders will overlap.
The table borders have defined all of its borders with border style "Single".
The table cell borders have all of its borders defined with border style "None".

Expected result: the resulting borders should have the border style set to "None" for the location where the table and the cell borders are overlapping.

Scenario 2:
A table has explicitly defined that its right border is with border style "None".
The table has a table style applied with defined border style of type "Single" for all table borders.

Expected result: All of the table borders except the right border should have border style of "Single".

The problem is mostly visible when exporting to PDF and RTF format.
Approved
Last Updated: 12 Oct 2018 22:26 by ADMIN
When xlsx/docx document is imported, and its main story is with non-default name ('workbook. xml'/'document.xml'), e.g. workbook2.xml/document2.xml, NullReferenceException is thrown and the document is not imported.

Note: Such documents are usually produced after conversion from a template dotx/xlsm.
Completed
Last Updated: 15 Feb 2018 16:53 by ADMIN
The issue is observed with tables that have a specific width (in inches or percents) but whose columns do not have width specified. MS Word renders such tables expanded to their full width. For tables with 100% width, they have to expand to the entire width of the page. The same behavior is expected in the PDF export.

As a common side effect, when specific text alignment (e.g. center or right) is applied to a paragraph within a table cell, and the table is with specified width, but the column is auto-sized (without set width), then the text alignment seems as not respected. Actually the problem is that the column table is shrunk to the text width.

Workaround: this may be used before exporting the RadFlowDocument instance to PDF:

foreach (Table table in document.EnumerateChildrenOfType<Table>())
{
    table.LayoutType = TableLayoutType.FixedWidth;
}


Workaround 2:

Set specific width to the auto-sized columns (to any of the cells in the columns):

cell.PreferredWidth = new Telerik.Windows.Documents.Flow.Model.Styles.TableWidthUnit(500);

Available in R1 2018 SP2 release version.
Approved
Last Updated: 13 Mar 2019 21:47 by ADMIN
The current implementation uses System.Windows.Media.Imaging.BitmapImage class in order to take the image pixels for the PDF export. However, BitmapImage class throws NotSupportedException when being initialized with a WMF or EMF image.

WORKAROUND: WMF and EMF images may be converted to PNG images before the PDF export. The following code snippet shows how to convert all inline WMF image to PNG images by using System.Drawing.Image class:

private static void ConvertInlineWmfImagesToPng(RadFlowDocument document)
{
    foreach (ImageInline image in document.EnumerateChildrenOfType<ImageInline>())
    {
        if (image.Image.ImageSource.Extension.Equals("wmf", StringComparison.InvariantCultureIgnoreCase))
        {
            using (MemoryStream wmfImageStream = new MemoryStream(image.Image.ImageSource.Data))
            {
                using (MemoryStream pngImageStream = new MemoryStream())
                {
                    var imageDrawing = System.Drawing.Image.FromStream(wmfImageStream);
                    imageDrawing.Save(pngImageStream, ImageFormat.Png);
                    byte[] pngBytes = pngImageStream.ToArray();
 
                    image.Image.ImageSource = new ImageSource(pngBytes, "png");
                }
            }
        }
    }
}
Completed
Last Updated: 13 Mar 2017 09:04 by ADMIN
Formulas like =0.0001/10 or formulas that produce small values results in 0 instead of exponential numbers.


Available in LIB version: 2017.1.313
Approved
Last Updated: 07 Mar 2019 08:39 by ADMIN
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
Completed
Last Updated: 12 Aug 2019 11:54 by ADMIN
Release LIB 2019.2.812 (08/12/2019)
Although Lab color space is currently unsupported, the provider should not throw exceptions that break the whole file import.
Completed
Last Updated: 11 Dec 2018 15:22 by ADMIN
ArgumentException with clarification similar to  "'\u001f', hexadecimal value 0x1F, is an invalid character." is thrown when trying to export document containing characters which are not supported in XML document - such as some control characters like 0x00, 0x1F, 0x1B, etc. Such characters are described in the XML specification here: https://www.w3.org/TR/xml/#charsets.

Although the escaped strings are not supported (see  https://feedback.telerik.com/Project/184/Feedback/Details/190228 ), the library could prevent the exception and export the document successfully by skipping such characters.

Workaround: remove such characters before the export. Check the following StackOverflow answer for some ideas on code for replacing the characters: http://stackoverflow.com/a/14323524/259206

Fix available in R3 2018 SP1 release.
Approved
Last Updated: 06 Mar 2019 14:39 by ADMIN
In the document produced by the mail merge, the date time formatting applied is not respected and the value is in its default format. 
Approved
Last Updated: 06 Aug 2018 14:44 by ADMIN
When the last element in a table cell is an empty paragraph, the latter is skipped and not imported. It should be imported even if it's the only paragraph in the cell, as its properties could affect the layout and presentation (borders, colors, spacings).
Completed
Last Updated: 31 May 2016 13:40 by ADMIN
Workaround:

private static void WorkaroundFieldsIssue(RadFlowDocument flowdocument)
{
    foreach (FieldCharacter fieldCharacter in flowdocument.EnumerateChildrenOfType<FieldCharacter>().ToList())
    {
        // only for start
        if (fieldCharacter.FieldCharacterType == FieldCharacterType.Start)
        {
            if (fieldCharacter.FieldInfo.Separator != null && fieldCharacter.FieldInfo.Separator.Parent == null)
            {
                Paragraph parent = fieldCharacter.FieldInfo.End.Paragraph;
                int index = parent.Inlines.IndexOf(fieldCharacter.FieldInfo.End);

                fieldCharacter.FieldInfo.End.Paragraph.Inlines.Insert(index, fieldCharacter.FieldInfo.Separator);
            }
        }
    }
}
Approved
Last Updated: 13 Feb 2017 15:50 by ADMIN
When characters are in the ranges 61472-61566, 61565-61695, 65535-65535 they are correctly exported with Wingdings font. However, when the character value is outside these ranges the font fallback mechanism exports them with different font and this causes wrong glyph rendering in the resulted PDF.

The following code snippet shows how the Wingdings characters can be modified so that they are correctly exported to PDF when converting from WordsProcessing's RadFlowDocument:
RadFlowDocument document = new DocxFormatProvider().Import(File.ReadAllBytes(@"test_document.docx"));

foreach (Run run in document.EnumerateChildrenOfType<Run>())
{
    if (run.FontFamily.GetActualValue(document.Theme).Source.Contains("Wingdings"))
    {
        StringBuilder modifiedText = new StringBuilder();

        foreach (char character in run.Text)
        {
            modifiedText.Append(character > 256 ? character : (char)(character + 61440));
        }

        run.Text = modifiedText.ToString();
    }
}
Approved
Last Updated: 20 Feb 2018 09:24 by ADMIN
When a workbook (xlsx) contains a worksheet where some of the columns have width, bigger than the value written in the SpreadsheetDefaultValues (2000) an exception during the import is thrown.
Completed
Last Updated: 14 Jun 2016 07:28 by ADMIN
Approved
Last Updated: 27 Jan 2017 07:25 by ADMIN
Style properties defined in an element style selector are evaluated with higher priority over properties in a CSS class when importing from HTML.

For example if we have the following CSS style:

.sectionheading {
border: 10px solid red;
        }
td {
border: 10px solid black;
        }
and the class (.sectionheading) is applied on a table cell:

<td class="sectionheading">...</td>

The result in WordsProcessing after import of such HTML will be that the table cell has 10px black border. In MS Word and in the browsers (Chrome, Firefox...) the result will be that the cell has 10px red border.
1 2 3 4 5 6