At this point, the justify alignment is not supported. Provide the ability to export text with this setting.
This functionality is dependent on PdfProcessing: Provide API for setting the text alignment to Justify
Enable the customers to import SVG images and use them in their documents.
Latest version 2024.2.426:
Old version 2022.3.906:
Use the following code:
static void Main(string[] args)
{
Console.WriteLine("Test from 2022.3.906 to 2024.2.426.");
string html = @"<html>
<head>
<style type=""text/css"">
h1 {
background-color: red;
}
#highlight1{
background-color: blue;
}
.highlight2{
background-color: yellow;
}
</style>
</head>
<body>
<h1>H1 - This Works </h1>
<h2 id=""highlight1"">H2 with id selector. This works too.</h2>
<h3 class=""highlight2"">H3 with class selector. This didn't work</h3>
</body>
</html>";
Telerik.Windows.Documents.Flow.FormatProviders.Html.HtmlFormatProvider html_provider = new Telerik.Windows.Documents.Flow.FormatProviders.Html.HtmlFormatProvider();
RadFlowDocument document = html_provider.Import(html);
string html_output = "output.html";
using (Stream output = File.Create(html_output))
{
html_provider.Export(document, output);
}
Process.Start(new ProcessStartInfo() { FileName = html_output, UseShellExecute = true });
}
Currently, the text is exported but the strikethrough line is not drawn in the exported PDF.
The hanging indent of the paragraph affects the rendering of content with tabs. However, the indent is not respected while generating the PDF, leading to disordered content.
Workaround: Insert a tab stop with the position set to the value for hanging indent:
foreach (var paragraph in this.flowDocument.EnumerateChildrenOfType<Paragraph>())
{
if (paragraph.Properties.HangingIndent.HasLocalValue)
{
Run run = paragraph.EnumerateChildrenOfType<Run>().Where(r => r.Text == "\t").FirstOrDefault();
if (run != null)
{
paragraph.TabStops = paragraph.TabStops.Insert(new Telerik.Windows.Documents.Flow.Model.Styles.TabStop(paragraph.Properties.HangingIndent.LocalValue.Value));
}
}
}
In a WPF project targeting .NET 6, the following code snippet results in an error:
public MainWindow()
{
InitializeComponent();
Telerik.Windows.Documents.Flow.FormatProviders.Html.HtmlFormatProvider provider = new Telerik.Windows.Documents.Flow.FormatProviders.Html.HtmlFormatProvider();
RadFlowDocument document = provider.Import("<html><body><h1>My First Heading</h1><p>My first paragraph.</p></body></html>");
}
System.IO.FileNotFoundException: 'Could not load file or assembly 'System.Text.Encoding.CodePages, Version=7.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. The system cannot find the file specified.'
Workaround: edit the .csproj file and include the required package reference:
<ItemGroup>
<PackageReference Include="Telerik.Windows.Documents.Flow" Version="2024.2.426" />
<PackageReference Include="System.Text.Encoding.CodePages" Version="7.0.0" />
</ItemGroup>
<ItemGroup>
<FunctionsPreservedDependencies Include="System.Text.Encoding.CodePages.dll" />
</ItemGroup>
List indent is not correct when exported to PDF. All indents start from the same position.
When importing a RTF document with bullet lists and exporting the RadFlowDocument back to RTF format the following result is observed:
- the bullet's left offset is changed
- the bullets color is also changed
Workaround: use the Telerik.Windows.Documents.FormatProviders.Rtf.RtfFormatProvider available in the Telerik.Windows.Documents.FormatProviders.Rtf.dll