Approved
Last Updated: 18 Mar 2019 09:54 by ADMIN
When a list is just before the table, all of its list items are inserted in the first cell of the table while exporting to HTML.

Workaround: Add a paragraph between the list and the table
foreach (var section in this.document.Sections)
{
    bool shouldInsert = false;
  
    foreach (var block in section.Blocks.ToList())
    {
        var paragraph = block as Paragraph;
        if (paragraph != null && paragraph.ListId > -1)
        {
            shouldInsert = true;
        }
        else if (shouldInsert)
        {
            var paragraphToInsert = new Paragraph(this.document);
            paragraphToInsert.Spacing.LineSpacing = 1;
            paragraphToInsert.Spacing.LineSpacingType = HeightType.Exact;
            paragraphToInsert.Spacing.SpacingAfter = 0;
            block.BlockContainer.Blocks.Insert(section.Blocks.IndexOf(block), paragraphToInsert);
            shouldInsert = false;
        }
    }
}
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");
                }
            }
        }
    }
}
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: 13 Mar 2019 11:39 by ADMIN
ADMIN
Created by: Tanya
Comments: 0
Category: WordsProcessing
Type: Feature Request
6
Form fields are the legacy way to insert an editable controls in a document (text boxes, checkboxes, dropdowns) by using the FORMTEXT, FORMCHECKBOX and FORMDROPDOWN fields.

Do not confuse with content controls (structured document tags) (see https://feedback.telerik.com/Project/184/Feedback/Details/190057 ) and with ActiveX controls.
Completed
Last Updated: 13 Mar 2019 10:59 by ADMIN
By specification, the src attribute for images in the HTML content must be present and must contain a valid non-empty URL potentially surrounded by spaces.

However when embedded images with leading white spaces are imported, UriFormatException: 'Invalid URI: The Uri string is too long.', is thrown.
Approved
Last Updated: 12 Mar 2019 16:39 by ADMIN

The calculations are wrong, leading to single lines on a page. As a result, the content of the PDF document is laid out on a bigger number of pages.

Workaround: Change the line spacing and its type before exporting to PDF:

foreach (var paragraph in this.document.EnumerateChildrenOfType<Paragraph>())
{
    if (paragraph.Properties.LineSpacingType.GetActualValue() == Telerik.Windows.Documents.Flow.Model.Styles.HeightType.Exact)
    {
        paragraph.Properties.LineSpacingType.LocalValue = Telerik.Windows.Documents.Flow.Model.Styles.HeightType.Auto;
        paragraph.Properties.LineSpacing.LocalValue = 2;
    }
}

Approved
Last Updated: 12 Mar 2019 16:39 by ADMIN
When this type of section break is used, the next section should start on the same page instead on the next one.
Approved
Last Updated: 11 Mar 2019 17:39 by ADMIN

In a DOCX document, the users can define an image which is bigger than the size of the page. When such an image is at the beginning of the document and is converted with PdfFormatProvider, an additional page is added in the result PDF.

Workaround: Check the image and resize it if needed:
foreach (var image in document.EnumerateChildrenOfType<ImageInline>())
{
    var section = image.Paragraph.Parent as Section;
    if (image.Image.Height > section.PageSize.Height - section.PageMargins.Top - section.PageMargins.Bottom)
    {
        var height = section.PageSize.Height - section.PageMargins.Top - section.PageMargins.Bottom - (image.Paragraph.Spacing.SpacingAfter * (image.Paragraph.Spacing.LineSpacing - 0.97));
        image.Image.Size = new System.Windows.Size(image.Image.Width, height);
    }
}


Approved
Last Updated: 11 Mar 2019 14:39 by ADMIN
The attached sample project below demonstrates a possible workaround for PAGE and NUMPAGES fields when exporting to PDF. The demo shows how to generate document from scratch containing PAGE and NUMPAGES fields and export it to PDF.
Approved
Last Updated: 11 Mar 2019 10:39 by ADMIN
ADMIN
Created by: Deyan
Comments: 11
Category: WordsProcessing
Type: Feature Request
20
Implement nested mail merge and master-detail scenario.
Approved
Last Updated: 08 Mar 2019 06:39 by ADMIN
ADMIN
Created by: Deyan
Comments: 2
Category: WordsProcessing
Type: Feature Request
11
Add support for shapes, and especially for shapes with textual content. 
In OOXML, shapes are represented by the wps:wsp element, and shapes with textual content by <wps:txbx>, <w:txbxContent>.
Such shape can be added to a Word document using the Insert -> Text -> Text Box -> Draw Text Box, or through a shape's context menu -> Add Text.

Do not confuse these shapes with Text/Rich Text content controls (see https://feedback.telerik.com/Project/184/Feedback/Details/190057 )
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 Mar 2019 13:39 by ADMIN
ADMIN
Created by: Deyan
Comments: 0
Category: WordsProcessing
Type: Feature Request
8
Add support for INCLUDEPICTURE fields. Such fields should work with nested MERGEFIELD, as this is common scenario.

Workaround: Manually insert images over specific placeholder
RadFlowDocument document = new RadFlowDocument();
RadFlowDocumentEditor editor = new RadFlowDocumentEditor(document);
  
editor.InsertText("1");
editor.InsertText("EXAMPLE_IMAGE");
editor.InsertText("2");
  
foreach (var run in editor.Document.EnumerateChildrenOfType<Run>().ToArray())
{
    if(run.Text == "EXAMPLE_IMAGE")
    {
        Paragraph paragraph = run.Paragraph;
        int indexOfCurrentRun = paragraph.Inlines.IndexOf(run);
        paragraph.Inlines.RemoveAt(indexOfCurrentRun);
  
        ImageInline imageInline = new ImageInline(document);
        imageInline.Image.ImageSource = newTelerik.Windows.Documents.Media.ImageSource(imageData, "png");
        paragraph.Inlines.Insert(indexOfCurrentRun, imageInline);
    }
}
Approved
Last Updated: 06 Mar 2019 13:39 by ADMIN
ADMIN
Created by: Deyan
Comments: 0
Category: WordsProcessing
Type: Feature Request
19
Implement support for content controls (a.k.a. Structured document tags), which will allow inserting editing controls in the document:

- Rich Text
- Plain Text
- Check Box
- Combo Box
- Drop-down list
- Date picker

Do not confuse this feature with form fields support (see https://feedback.telerik.com/Project/184/Feedback/Details/219850 ).
Approved
Last Updated: 06 Mar 2019 12:40 by ADMIN
ADMIN
Created by: Deyan
Comments: 12
Category: WordsProcessing
Type: Feature Request
27
At this point the PdfFormatProvider does not support floating images and these elements are skipped when exporting to PDF.

The feature is trivial for floating images with "Behind Text"/"In Front of Text" settings, but otherwise floating images are affecting the text layout in complex ways.
Approved
Last Updated: 01 Mar 2019 15:39 by ADMIN
ADMIN
Created by: Tanya
Comments: 3
Category: WordsProcessing
Type: Feature Request
24
The API should allow you to perform a text-based search and return the parent element(s) of the result(s) or directly the found element(s).
Approved
Last Updated: 20 Feb 2019 12:25 by ADMIN
At this point, the justify alignment is not supported. Provide the ability to export text with this setting.
Approved
Last Updated: 18 Feb 2019 13:03 by ADMIN
There is a mismatch between the coordinates of the image and its mask causing some lines to appear in the PDF document. Extracting the image itself in a separate file doesn't show any issues - they can be seen only in the generated document.
Approved
Last Updated: 18 Feb 2019 12:50 by ADMIN
The GetActualValue() method returns an incorrect value when content has applied a paragraph style (e.g. Heading1) but its linked style is not used (e.d. Heading1Char). Affects the PDF export.
Completed
Last Updated: 14 Feb 2019 15:31 by ADMIN
When MergeField is present in the document, and this merge field is evaluated to an empty string - this, for example, happens when the property in the data source is set to null, empty string, or is missing at all - the result fragment remains in the result document. Instead, it should be removed.

Steps to reproduce: 
- Create document with merge field, the field should contain result fragment, and set data source which contains null or string.Empty value for the field:

            RadFlowDocument document = new RadFlowDocument();
            RadFlowDocumentEditor editor = new RadFlowDocumentEditor(document);

            editor.InsertField("MERGEFIELD FirstName ", "«FirstName»");

            List<Person> source = new List<Person>()
            {
                new Person() { FirstName = string.Empty }
            };

            RadFlowDocument mergedDocument = document.MailMerge(source);
Expected: The result document is empty.
Actual: The result document contains "«FirstName»" string.

Available in LIB Version 2017.3.1120.
1 2 3 4 5 6