Как часть процедуры печати моего приложения, я пытаюсь напечатать список изображений, уменьшенных до указанной ширины и расположенных один под другим. Проблема в том, что я не могу понять, как преобразовать высоту в пикселях изображений в высоту в единицах, используемых графическим объектом во время печати. Как правильно вычислить переменную imageHeightPrint?Преобразование высоты пикселя изображения в размер печати, используемого графическим объектом
Этот фрагмент кода является частью цикла печати изображений, который масштабирует изображение и вычисляет его высоту и место размещения следующего изображения.
Image image = Image.FromStream(imageStream);
// Get proportional correct height
int imageHeight = image.Height * imageWidth/image.Width;
Image imageToPrint = image.GetThumbnailImage(imageWidth, imageHeight, null, IntPtr.Zero);
float imageHeightPrint = e.Graphics.DpiY * imageToPrint.Height/imageToPrint.VerticalResolution;
e.Graphics.DrawImage(imageToPrint, e.MarginBounds.Left, yPos);
yPos += imageHeightPrint;