Как нарисовать изображение в PDF и сохранить первоначальный размер? - PullRequest
0 голосов
/ 18 сентября 2018

Я использую библиотеку PDF4NET для преобразования загруженного пользователем изображения в PDF для печати. Чего я хочу добиться, так это нарисовать изображение такого же размера в PDF. Например, пользователь загрузил изображение размером 16px x 16px, и в pdf будет показано изображение того же размера в центре.

Код, который я использую, выглядит следующим образом:

 var canvas = page.Canvas;
 var hRatio = page.Width / objImage.Width;
 var vRatio = page.Height / objImage.Height;
 var ratio = Math.Min(hRatio, vRatio);
 page.Canvas.DrawImage(decodedPath, 0, 0, objImage.Width * ratio, objImage.Height * ratio, 0, PDFKeepAspectRatio.KeepWidth);

Проблема в том, что когда пользователь загружает маленькое изображение, оно растягивается, чтобы соответствовать pdf при рисовании изображения.

** Результат должен быть выровнен по центру pdf

1 Ответ

0 голосов
/ 18 сентября 2018

Когда вы рисуете изображение на странице PDF, размер рисунка указывается в точках PDF. PDF-файлы не используют пиксели.
В вашей ситуации вы должны проверить «соотношение», и если оно больше 1 (страница больше, чем изображение), то вы должны нарисовать изображение как есть (без умножения на коэффициент).

Отказ от ответственности: я работаю в компании, которая разрабатывает библиотеку PDF4NET.

...