首页 > 解决方案 > 图像 iTextSharp 的坏边框

问题描述

我使用 iTextSharp 将图像添加到 pdf 文档。

当我为图像添加边框时,我看到图像的一个像素部分(看截图):

截屏

当我使用白色作为边框时,它是可见的。

我怎样才能删除它?

我的代码

iTextSharp.text.Rectangle rec = new iTextSharp.text.Rectangle(PageSize.A4);
iTextSharp.text.Document document = new iTextSharp.text.Document(rec);

using (var writer = PdfWriter.GetInstance(document, new FileStream("file.pdf", FileMode.Create)))
        {
            document.Open();
            iTextSharp.text.Image pic = iTextSharp.text.Image.GetInstance("picture.jpg");

            pic.ScaleToFit(document.PageSize.Width, document.PageSize.Height);
            pic.SetAbsolutePosition(0, (document.PageSize.Height - pic.ScaledHeight) / 2);

            pic.Border = Image.LEFT_BORDER | Image.TOP_BORDER | Image.RIGHT_BORDER | Image.BOTTOM_BORDER;
            pic.BorderWidthLeft = 20f;
            pic.BorderWidthTop = 20f;
            pic.BorderWidthRight = 20f;
            pic.BorderWidthBottom = 20f;
            pic.BorderColor = new iTextSharp.text.BaseColor(System.Drawing.Color.White);

            document.Add(pic);
            document.Close();
            writer.Close();
        }

标签: c#itext

解决方案


推荐阅读