我有一个现有的 PDF,我试图在页眉中添加一个徽标,我从
如何在现有 PDF 中插入带有 iTextSharp 的图像?
它正在通过 0,0 在页脚中添加徽标,image.SetAbsolutePosition(100, 100);
但我想在页眉中添加徽标。如果有人知道,请提出建议。
我有一个现有的 PDF,我试图在页眉中添加一个徽标,我从
如何在现有 PDF 中插入带有 iTextSharp 的图像?
它正在通过 0,0 在页脚中添加徽标,image.SetAbsolutePosition(100, 100);
但我想在页眉中添加徽标。如果有人知道,请提出建议。
您是从头开始创建文档吗?
如果是这样,
您知道页面的尺寸。PageSize.A4
默认情况下,或者Rectangle
您传递给Document
构造函数的任何内容。您需要根据 that 的值调整X
和Y
值Rectangle
。例如:
image.setAbsolutePosition(rect.Left, rect.Top - image.ScaledHeight);
rect
页面大小在哪里。
当您添加页眉时,您希望此页眉出现在每个页面上,因此您将使用页面事件。看看这个例子OnEndPage()
中的方法。确保添加图像字节的次数不要与页面数一样多!在方法之外创建图像实例,例如在页面事件实现的构造函数中。onEndPage
如果没有,则需要获取每一页的 CropBox:
rect = reader.GetCropBox(page);
如果没有定义 CropBox,则需要获取 MediaBox:
rect = reader.GetPageSize(page);
page
页码在哪里(例如1
)。根据 的值rect
,您可以定义图像的位置,如上所示。
我希望您了解您使用过的代码,x = 0
并且y = 0
不会总是在页脚中显示图像。您假设每个 PDF 中每一页的左下角都有坐标(0, 0)
。这个假设是错误的!