在ITextSharp中拆分图像

时间:2016-08-16 15:20:24

标签: c# itext

在我的C#代码中,我收到了base64图像字符串。

我们需要从中生成pdf,但是,图片可能不适合一页,所以我们必须相应地拆分它。

有没有人知道在itextsharp中动态分割图像的任何参考?

iTextSharp.text.Image image = iTextSharp.text.Image.GetInstance(imageByte);
            float width = image.ScaledWidth;
            float height = image.ScaledHeight;
            float usedHeight = 0;

            iTextSharp.text.Rectangle page = new iTextSharp.text.Rectangle(1000, 2000);

            using (var outputMemoryStream = new MemoryStream())
            {
                using (var pdfDocument = new Document(page))
                {
                    iTextSharp.text.pdf.PdfWriter pdfWriter = PdfWriter.GetInstance(pdfDocument, outputMemoryStream);
                    pdfWriter.CloseStream = false;

                    pdfDocument.Open();

                    PdfContentByte canvas = pdfWriter.DirectContentUnder;
                    while (usedHeight <= height)
                    {
                       canvas.AddImage(image, width, 0, 0, height, 0, -height / 2);
                        pdfDocument.NewPage();
                        usedHeight += 2000;
                    }

0 个答案:

没有答案