Мы используем XFinium в нашем приложении C # Xamarin Forms для iOS.У меня был некоторый тестовый код, который создавал бы PDF с парой фрагментов текста, и он работал правильно.Однако, когда я попытался включить изображение, полученный PDF-файл не содержит изображения, и Acrobat Reader выдает «Ошибка на этой странице».Данное изображение является ресурсом в моем приложении (не загружается с URL-адреса).
string path = Environment.GetFolderPath(System.Environment.SpecialFolder.LocalApplicationData);
string file = System.IO.Path.Combine(path, "report.pdf");
PdfFixedDocument document = new PdfFixedDocument();
PdfStandardFont helveticaBold = new PdfStandardFont(PdfStandardFontFace.HelveticaBold, 16);
PdfPage page = document.Pages.Add();
page.Width = 8 * 72 + 36;
page.Height = 11 * 72;
PdfBrush blackBrush = new PdfBrush(PdfRgbColor.Black);
page.Graphics.DrawString("Hello", helveticaBold, blackBrush, 20, 50);
string imageFileName = "UI_Assets_Image.png";
FileStream imageStream = System.IO.File.Open(imageFileName, FileMode.Open, FileAccess.Read, FileShare.Read);
PdfPngImage image = new PdfPngImage(imageStream);
Debug.WriteLine(" image is " + image.Width + " x " + image.Height);
// Reports 1373 x 417 which is correct so I believe it is
// loading the image correctly
// Draw image in the page width
PdfSize size = page.Graphics.DrawImage(image, 36, 75, 540, 166);
Debug.WriteLine(" DrawImage() returned " + size.Width + " x " + size.Height);
// Reports 540 x 166 which seems reasonable
using (FileStream stream = System.IO.File.Create(file))
{
document.Save(stream, null);
}
Если я не включу изображение, файл PDF в порядке.