当前位置: 首页 > article >正文

Spire.PDF for .NET【页面设置】演示:向 PDF 添加平铺背景图像

平铺背景通常是指用一个或多个小图像重复填充的背景。在本文中,您将学习如何在 PDF 中平铺图像,并使用 C# 和 VB.NET 为您的 PDF 创建平铺背景。

Spire.PDF for .NET 是一款独立 PDF 控件,用于 .NET 程序中创建、编辑和操作 PDF 文档。使用 Spire.PDF 类库,开发人员可以新建一个 PDF 文档或者对现有的 PDF 文档进行处理,且无需安装 Adobe Acrobat。

E-iceblue 功能类库Spire 系列文档处理组件均由中国本土团队研发,不依赖第三方软件,不受其他国家的技术或法律法规限制,同时适配国产操作系统如中科方德、中标麒麟等,兼容国产文档处理软件 WPS(如 .wps/.et/.dps 等格式

Spire.PDF for.net下载 

步骤 1:创建一个 PdfDocument 对象并加载示例 PDF 文档。

PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile("sample.pdf");

第 2 步:将图像文件加载到 PdfImage 对象。

PdfImage image = PdfImage.FromFile("logo.png");

步骤3:创建一个PdfTilingBrush对象,指定其大小,设置画笔的透明度,并在画笔的指定位置绘制图像。

PdfTilingBrush brush = new PdfTilingBrush(new SizeF(pdf.Pages[1].Canvas.Size.Width / 3, pdf.Pages[1].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));

步骤 4:使用画笔在 PDF 页面上绘制矩形。

pdf.Pages[1].Canvas.DrawRectangle(brush, new RectangleF(new PointF(0, 0), page.Canvas.Size));

步骤 5:保存文件。

pdf.SaveToFile("output.pdf");

输出

如何在 C#、VB.NET 中向 PDF 添加平铺背景图像

完整代码

[C#]

using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;

namespace Image
{
class Program
{
static void Main(string[] args)
{
PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile("sample.pdf");

PdfImage image = PdfImage.FromFile("logo.png");
foreach (PdfPageBase page in pdf.Pages)
{
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]

Imports Spire.Pdf
Imports Spire.Pdf.Graphics
Imports System.Drawing

Namespace Image
Class Program
Private Shared Sub Main(args As String())
Dim pdf As New PdfDocument()
pdf.LoadFromFile("sample.pdf")

Dim image As PdfImage = PdfImage.FromFile("logo.png")
For Each page As PdfPageBase In pdf.Pages
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")
End Sub
End Class
End Namespace

http://www.kler.cn/a/469644.html

相关文章:

  • 探索Whisper:从原理到实际应用的解析
  • 苹果系统MacOS下ObjectC建立的App程序访问opencv加载图片程序
  • GoF23种设计模式 简介
  • 源代码编译安装X11及相关库、vim,配置vim(1)
  • 03、MySQL安全管理和特性解析(DBA运维专用)
  • 使用 `llama_index` 构建智能问答系统:多种文档切片方法的评估
  • 使用 C++ 和函数式编程构建高效的 AI 模型
  • MySQL 备份方案设计之准备事项
  • wps版excel中如何快速生成倒序序号?
  • 基于单片机的核辐射探测系统设计(论文+源码)
  • RabbitMQ案例
  • 【ArcGIS Pro二次开发实例教程】(2):BSM字段赋值
  • JAVA类和对象练习
  • Vue2: table加载树形数据的踩坑记录
  • 【数据结构05】排序
  • centos,789使用mamba快速安装R及语言包devtools
  • MySQL 的事务与多版本并发控制(MVCC)的那些事
  • Synthesia技术浅析(二):虚拟人物视频生成
  • 为什么HTTP请求后面有时带一个sign参数(HTTP请求签名校验)
  • SAP SD学习笔记26 - 贩卖契约(框架协议)的概要,基本契约 - 数量契约
  • Ubuntu创建python虚拟环境
  • 太速科技-747-4通道 500Msps 12bit 直流耦合 PCIe采集卡
  • 您有一份 Apache Flink 社区年度报告请查收~
  • Node.js 模块系统
  • Linux-----进程处理(execve执行可执行文件)
  • 青少年编程与数学 02-006 前端开发框架VUE 05课题、使用模板