背景图可以让pdf文档更好看,或者作为pdf的水印使用。背景图可以是一张大图,也可以是一张小图平铺组成的图像。在本文中,您将学习如何在pdf中平铺图像,并为pdf创建一个平铺的背景。
c#
//创建pdfdocument对象
pdfdocument pdf = new pdfdocument();
//加载文档
pdf.loadfromfile(@"f:\documents\pdf\系统测试.pdf");
//加载图片
pdfimage image = pdfimage.fromfile("logo.png");
//遍历文档每一页
foreach (pdfpagebase page in pdf.pages)
{
//创建pdftilingbrush对象,指定大小
pdftilingbrush brush = new pdftilingbrush(new sizef(page.canvas.size.width / 3, page.canvas.size.height / 5));
//设置画刷透明度
brush.graphics.settransparency(0.2f);
//在画刷上绘制图片
brush.graphics.drawimage(image,new pointf((brush.size.width-image.width)/2,(brush.size.height-image.height)/2));
//使用画刷填充页面大小的矩形
page.canvas.drawrectangle(brush, new rectanglef(new pointf(0, 0), page.canvas.size));
}
//保存文档
pdf.savetofile("output.pdf");
vb.net
'创建pdfdocument对象
dim pdf as new pdfdocument()
'加载文档
pdf.loadfromfile("f:\documents\pdf\系统测试.pdf")
'加载图片
dim image as pdfimage = pdfimage.fromfile("logo.png")
'遍历文档每一页
for each page as pdfpagebase in pdf.pages
'创建pdftilingbrush对象,指定大小
dim brush as new pdftilingbrush(new sizef(page.canvas.size.width / 3, page.canvas.size.height / 5))
'设置画刷透明度
brush.graphics.settransparency(0.2f)
'在画刷上绘制图片
brush.graphics.drawimage(image, new pointf((brush.size.width - image.width) / 2, (brush.size.height - image.height) / 2))
'使用画刷填充页面大小的矩形
page.canvas.drawrectangle(brush, new rectanglef(new pointf(0, 0), page.canvas.size))
next
'保存文档
pdf.savetofile("output.pdf")