Добавление изображения в PDF с помощью iTextSharp и его правильное масштабирование

вот мой код. Он правильно добавляет нужные мне изображения, и все работает , за исключением , что изображения используют свое собственное разрешение, поэтому, если изображение большое, оно обрезается по размеру страницы.

Есть ли способ получить разрешение изображение использовать как функцию масштабирования, чтобы растянуть, чтобы соответствовать, но при этом сохранить соотношение сторон? Там должно быть что-то, чего мне не хватает. : P

Вот картинка, иллюстрирующая проблему: alt text

using System;
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
using System.Drawing;
using System.Collections.Generic;

namespace WinformsPlayground
{
    public class PDFWrapper
    {
        public void CreatePDF(List<System.Drawing.Image> images)
        {
            if (images.Count >= 1)
            {
                Document document = new Document(PageSize.LETTER);
                try
                {

                    // step 2:
                    // we create a writer that listens to the document
                    // and directs a PDF-stream to a file

                    PdfWriter.GetInstance(document, new FileStream("Chap0101.pdf", FileMode.Create));

                    // step 3: we open the document
                    document.Open();

                    foreach (var image in images)
                    {
                        iTextSharp.text.Image pic = iTextSharp.text.Image.GetInstance(image, System.Drawing.Imaging.ImageFormat.Jpeg);
                        document.Add(pic);
                        document.NewPage();
                    }
                }
                catch (DocumentException de)
                {
                    Console.Error.WriteLine(de.Message);
                }
                catch (IOException ioe)
                {
                    Console.Error.WriteLine(ioe.Message);
                }

                // step 5: we close the document
                document.Close();
            }
        }
    }
}
26
задан 1 December 2010 в 14:45
поделиться