Я не уверен, что делаю неправильно. Я создал небольшой образец репозитория, чтобы продемонстрировать проблему: https://github.com/MarvinKlein1508/IText7Resolution
Код: Выделить всё
private static async Task Main(string[] args)
{
using MemoryStream memoryStream = new MemoryStream();
PdfWriter writer = new PdfWriter(memoryStream, new WriterProperties().SetCompressionLevel(0));
PdfDocument pdfDoc = new PdfDocument(writer);
Document document = new Document(pdfDoc);
float pageMargin = CalcCentimeterToPoints(PAGE_MARGIN_CM);
document.SetMargins(pageMargin, pageMargin, pageMargin, pageMargin);
PageSize pageSize = PageSize.A4;
pdfDoc.SetDefaultPageSize(pageSize);
string imagePath = "SchulzLF_0.png";
float imageMargin = CalcCentimeterToPoints(IMAGE_MARGIN_CM);
float nutzenHeight = (pageSize.GetHeight() / 2) - (2 * imageMargin);
float imageWidth = pageSize.GetWidth() - (2 * imageMargin);
float imageHeight = nutzenHeight;
ImageData imageData = ImageDataFactory.Create(imagePath);
Image image = new Image(imageData);
//image.SetAutoScaleHeight(false);
//image.SetAutoScaleWidth(false);
image.ScaleToFit(imageWidth, imageHeight);
document.Add(image);
image.SetFixedPosition(imageMargin, imageMargin);
document.Add(image);
document.Close();
byte[] pdfBytes = memoryStream.ToArray();
await File.WriteAllBytesAsync("SchulzLF_0.pdf", pdfBytes);
}
Изображение должно занимать всю страницу формата А4, за вычетом полей по 0,5 см со всех сторон и половину высоты формата А4. страница, также минус поля 0,5 см.
Подробнее здесь: https://stackoverflow.com/questions/790 ... resolution