If the MatrixPosition has Matrix (1, 0, 0, 1, 20, 10) the Table should be positioned with top-left coordinate (20, 10). Instead, it is wrongly positioned at (40, 20).
This is done due to wrong column widths weights calculations.
Exporting to PDF of a table with a first cell having preferred width of 100% and a second cell having preferred width of auto will result in missing the second cell.
When the table width is set to fixed with the value of zero:
<w:tblW w:w="0" w:type="dxa"/>
Importing HTML tables with mixed inline width styles and auto-width cells, then exporting to PDF, can produce missing/narrow columns or wrapped labels.
For example, a 4-cell row with td style="width: 60%" and td style="width: 40%" causes the unlabeled cells to collapse in PDF output, even though the HTML renders correctly in browser.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<body>
<table>
<tr>
<td align="right">Customer:</td>
<td style="width: 60%;">Angel Popov</td>
<td align="right">Date:</td>
<td style="width: 40%;">4/4/2004</td>
</tr>
</table>
</body>
</html>Expected: all cells keep visible widths and text stays on one line.
Actual: auto columns shrink too much or disappear during PDF export after HTML import.
When signing a PDF document with an image using the PdfStreamSigner, the signature is broken. This is the used approach for signing the document: https://www.telerik.com/document-processing-libraries/documentation/libraries/radpdfprocessing/features/digital-signature/pdfstreamsigner
However, instead of using the DrawText method, the DrawImage method is used.
When a worksheet has name that has spaces and a hyperlink to this worksheet is being inserted in Excel, quotes are used to surround the name (ex: 'Sheet 12'!A1) for a valid hyperlink. If quotes are not added, the hyperlink is invalid. In RadSpreadsheet, it is the opposite: (Sheet 12!A1 is correct, while 'Sheet 12'!A1 is incorrect). Thus, opening such an exported document from RadSpreadsheet in Excel loads it with incorrect hyperlinks; and importing such an Excel document in RadSpreadsheet loads it with incorrect hyperlinks. A way to workaround this issue is to modify the hyperlinks on import/export from/to RadSpreadsheet. You can find attached a project demonstrating this approach.
When there are split panes in a workbook, the topLeftCell property can be omitted. In this case, the format provider throws NullReferenceException.
NotImplementedException is thrown for GetCapHeight method of CFFFontSource.
System.NotImplementedException: The method or operation is not implemented.HtmlFormatProvider: Styles are not correctly preserved when a <b> tag is applied to the same styled element.
Workaround: Apply bold through CSS instead of using <b>.
NetStandard: Missing content due to empty glyph outlines in embedded TrueType font subsets.
Fully embed the fonts in the result PDF document:
PdfFormatProvider pdfFormatProvider = new PdfFormatProvider();
pdfFormatProvider.ExportSettings.FontEmbeddingType = FontEmbeddingType.Full;Workaround 2
Switch to a .NET Framework project environment and use the .NET Framework PdfProcessing packages.
Corrupted document when exporting "Courier New" subset.
Workaround - fully embed the font:
var pdfFormatProvider = new PdfFormatProvider();
pdfFormatProvider.ExportSettings.FontEmbeddingType = FontEmbeddingType.Full;NOTE: There are reports for other fonts' subset, e.g. "ZapfDingbats" font.
Workbook wb = new Workbook();
Worksheet worksheet = wb.Worksheets.Add();
PatternFill fill = new PatternFill(PatternType.DiagonalStripe, Colors.Red, Colors.Transparent);
worksheet.Cells[0, 0].SetFill(fill);
string outputFilePath = "Sample.pdf";
File.Delete(outputFilePath);
Telerik.Windows.Documents.Spreadsheet.FormatProviders.Pdf.PdfFormatProvider pdfFormatProvider =
new Telerik.Windows.Documents.Spreadsheet.FormatProviders.Pdf.PdfFormatProvider();
//export to file
using (Stream output = File.OpenWrite(outputFilePath))
{
pdfFormatProvider.Export(wb, output, TimeSpan.FromSeconds(10));
}
Process.Start(new ProcessStartInfo() { FileName = outputFilePath, UseShellExecute = true });When there is an abstractNum defined with the same abstractNumId in word\glossary\numbering.xml and in the word\numbering.xml, a "System.ArgumentException: An item with the same key has already been added." exception is thrown.
In other cases, the import overwrites the styles from the main document part with the ones defined in the glossary or fails to import different parts of the content.
Workaround: Delete the glossary files:
string path = "File.docx";
using (Stream str = new FileStream(path, FileMode.OpenOrCreate, FileAccess.ReadWrite))
{
using (ZipArchive archive = ZipArchive.Update(str, null))
{
foreach (ZipArchiveEntry entry in archive.Entries.ToList())
{
if (entry.FullName.Contains("glossary/"))
{
entry.Delete();
}
}
}
DocxFormatProvider provider = new DocxFormatProvider();
RadFlowDocument flowDocument = provider.Import(str, null);
}
LineInfo objects are not cleared when there are tables in the document being exported to PDF which leads to OutOfMemoryException.