1

我确实从 jpg 图像生成了一个 pdf 文件。但是 jpg 图像具有官方文件的大小。当我打开pdf时,图像太大了。我需要 pdf 文件是官方纸张大小。有什么解决办法吗?(panel1 有公纸的大小。我需要这个大小等于公纸的大小)

        SaveFileDialog saveFileDialog1 = new SaveFileDialog();
        saveFileDialog1.Filter = "PDF Files|*.pdf";
        string fileName = string.Empty;
        saveFileDialog1.FileName = "name.pdf";
        btnGerarPDF.Visible = false;
        using (Bitmap bitmap = new Bitmap(panel1.ClientSize.Width,
                                               panel1.ClientSize.Height))
        {
            panel1.DrawToBitmap(bitmap, panel1.ClientRectangle);
            bitmap.Save("C:\\" + (nPaginasPDF + 1) + ".bmp", ImageFormat.Bmp);
        }

        if (saveFileDialog1.ShowDialog() == DialogResult.OK)
        {

            fileName = saveFileDialog1.FileName;
            Document doc = new Document();
            PdfWriter.GetInstance(doc, new FileStream(fileName, FileMode.Create));
            doc.Open();

            for (int iCnt = 0; iCnt < nPaginasPDF+1; iCnt++)
            {
                iTextSharp.text.Image image1 = iTextSharp.text.Image.GetInstance("C:\\" + (iCnt + 1) + ".bmp");
                image1.ScalePercent(75f);
                doc.NewPage();
                doc.Add(image1);
            }

            doc.Close();
        }
4

1 回答 1

1

您可以在创建文档时设置页面大小:

Document doc = new Document(PageSize.A4);

于 2013-04-15T12:16:20.037 回答