With the current implementation when passing the font file using the FontsRepository the entire font file is embedded.
In order to embed only a subset of characters used in the document, the font should be installed and the font shouldn't be registered in the FontsRepository.
When importing a document containing an EI keyword not followed by space or return an exception is thrown: EndOfStreamException: 'Attempted to read past the end of the stream.'
We should implement the logic for getting character codes from Unicode when using CFFFontSource.
Workaround: The font may be changed by creating a similar font with FontsRepository.TryCreateFont(...) method.
Telerik.Windows.Documents.Fixed.Model.Fonts.FontsRepository.RegisterFont(new Telerik.Documents.Core.Fonts.FontFamily("Arial"), Telerik.Documents.Core.Fonts.FontStyles.Normal, Telerik.Documents.Core.Fonts.FontWeights.Normal, fontData); // fontData is a byte[] keeping the font definition
FontBase font;
bool hasCreatedFont = FontsRepository.TryCreateFont(new FontFamily("Arial"), out font);
foreach (TextField field in document.AcroForm.FormFields.OfType<TextField>())
{
if (hasCreatedFont)
{
foreach (var widget in field.Widgets)
{
widget.TextProperties.Font = font;
}
field.TextProperties.Font = font;
}
}
Currently, NotSupportedEncryptionException is thrown.
Implement Find methods which enable the users to search for a concrete string/content/text in a Pdf document (RadFixedDocument).
When importing a PDF document and parsing a name start character followed by a dictionary end one an exception is thrown: System.InvalidOperationException: 'Stack empty.'
With the current implementation, the permissions are ignored on import.
As a side note, there is an option to set permissions on export: UserAccessPermissions.
PdfProcessing partially supports CCITTFaxDecode (that is basically TIFF). There are some limitations that are not supported at this stage like EncodedByteAlign = true or Group 3, 2-D encoding.
Update: The task was partially implemented in version 2025.4.1104 by introducing Group 3, 2-D encoding.
When exporting a document that contains a Widget created with FixedContentEditor an exception is thrown: System.ArgumentNullException: 'Value cannot be null. Parameter name: context'
It can be reproduced using the following code snippet:
RadFixedDocument document = new RadFixedDocument();
var page = document.Pages.AddPage();
FixedContentEditor editor = new FixedContentEditor(page);
PushButtonField pushButton = new PushButtonField("button");
editor.Position.Translate(20, 450);
editor.DrawWidget(pushButton, new Size(100, 20));
string path = "Exported.pdf";
File.Delete(path);
using (Stream output = File.OpenWrite(path))
{
PdfFormatProvider provider = new PdfFormatProvider();
provider.Export(document, output);
}document.AcroForm.FormFields.Add(pushButton);
From the PDF Specification: "An ink annotation represents a freehand “scribble” composed of one or more disjoint paths. When opened, it displays a pop-up window containing the text of the associated note."
Such fonts are:
Cell borders are not set when the border is set on the table:
<table border="1">