Splitting a row leads to copying all rows below it. During that operation, the information for the row height is lost, when the previous row has a cell spanning on the split one, leading to a missing row in the exported document.
The issue is a regression introduced in R1 2021.
With the current implementation when exporting a Stitching function all the containing functions are exported as Sampled functions even if they originally have been imported as Exponential interpolation functions, which leads to an increase in the size of the document.
More information can be found in the PDF Specification.
Images could have orientation set in their metadata:
Workaround: Rotate the image before inserting it into the RadFixedPage (check the attached project).
Hidden fields with pushButton widget become visible when using FlattenFormFields method to flatten fields.
Workaround: do not flatten fields if the IsHidden property of any of its Widget's is set to True:
var fieldsList = formFields.ToList();
for (int i = 0; i < fieldsList.Count; i++)
{
var field = fieldsList[i];
bool flattenCurrentField = true;
if (field.FieldType == FormFieldType.PushButton)
{
PushButtonField pushButtonField = (PushButtonField)field;
PushButtonWidget[] widgets = pushButtonField.Widgets.ToArray();
foreach (var widget in widgets)
{
var baseType = typeof(PushButtonWidget).BaseType.BaseType.BaseType;
PropertyInfo[] properties = baseType.GetProperties(BindingFlags.NonPublic | BindingFlags.Instance);
PropertyInfo isHidden = properties.FirstOrDefault(p => p.Name == "IsHidden");
bool value = (bool)isHidden.GetValue(widget);
if (value == true)
{
flattenCurrentField = false;
break;
}
}
}
if (flattenCurrentField)
{
document.AcroForm.FlattenFormField(field);
}
}
Provide API or mechanism for reusing the already embedded fonts instead of creating a new one when editing an existing document.
This causes an issue in adobe preflight (font name is not unique).
The issue is observed when performing merge with RadFixedDocument as well.
Cell borders are not set when the border is set on the table:
<table border="1">
Such fonts are:
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);
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.