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

济南专门做公司网站的公司最近时事热点新闻评论及点评

济南专门做公司网站的公司,最近时事热点新闻评论及点评,网站开发案例,最新楼盘价格走势图PDF 文档的版式特性使其适用于输出不可变格式的报告与合同。但若要在此类文档中插入或修改文本,常规方式难以实现。借助Python,我们可以高效地向 PDF 添加文本,实现从文档生成到内容管理的自动化流程。 本文将从以下方面介绍Python实现PDF中…

PDF 文档的版式特性使其适用于输出不可变格式的报告与合同。但若要在此类文档中插入或修改文本,常规方式难以实现。借助Python,我们可以高效地向 PDF 添加文本,实现从文档生成到内容管理的自动化流程。

本文将从以下方面介绍Python实现PDF中文本的添加:

文章目录

    • 新建PDF并添加段落文本
    • 向现有PDF中插入文本内容
    • 复杂格式设置:添加透明旋转水印文本
    • 总结


本文使用的方法需要用到免费的Free Spire.PDF for Python,可通过pip安装:

pip install spire.pdf.free

新建PDF并添加段落文本

在构建系统报告或生成模板文档时,通常需要从空白页插入一段段文本,保持排版一致性。

from spire.pdf import PdfDocument, PdfTrueTypeFont, PdfFontStyle, PdfSolidBrush, PdfRGBColor, PointF, RectangleF, \PdfStringFormat, PdfTextAlignment, PdfVerticalAlignment# 创建新的PDF文档并添加页面
pdf = PdfDocument()
page = pdf.Pages.Add()# 待插入的文本内容
text = ("The purpose of this document is to provide an overview of the company’s financial highlights for the fiscal year 2024. ""It includes revenue trends, operational costs, and net income summaries. ""The following sections will outline each metric in more detail.")# 设置字体、画刷(颜色)和排版区域
font = PdfTrueTypeFont("Arial", 14.0, PdfFontStyle.Regular, True)
brush = PdfSolidBrush(PdfRGBColor(0, 0, 0))  # 黑色文本
layout_area = RectangleF(50.0, 50.0, page.GetClientSize().Width - 100.0, page.GetClientSize().Height)
string_format = PdfStringFormat(PdfTextAlignment.Left, PdfVerticalAlignment.Top)# 添加文字内容
page.Canvas.DrawString(text, font, brush, layout_area, string_format, False)# 保存并关闭
pdf.SaveToFile("output/new.pdf")
pdf.Close()

📌 技术细节说明:

  • PdfTrueTypeFont 可嵌入外部字体文件,适用于需要控制字体兼容性的场景;
  • RectangleF 定义文本区域边界(支持自定义段落框);
  • DrawString() 支持超出区域自动换行;
  • 使用 PdfStringFormat 设定水平方向与垂直方向的对齐方式。

生成的PDF文档:
Python新建PDF并插入文本


向现有PDF中插入文本内容

当你已有一份PDF文件,但希望在某一页添加标记或文字说明,例如审批标语、状态说明等,可以使用如下方式:

from spire.pdf import PdfDocument, PdfFontStyle, PdfSolidBrush, PdfRGBColor, PointF, PdfFont, PdfFontFamily# 加载已有PDF文档
pdf = PdfDocument()
pdf.LoadFromFile("PDF.pdf")
page = pdf.Pages[0]# 设置字体、颜色和插入位置
font = PdfFont(PdfFontFamily.TimesRoman, 12.0, PdfFontStyle.Bold)
brush = PdfSolidBrush(PdfRGBColor(0, 128, 0))  # 深绿色
location = PointF(130.0, 90.0)# 插入文本
page.Canvas.DrawString("Verified by QA Department", font, brush, location)# 保存结果
pdf.SaveToFile("output/ModifiedPDF.pdf")
pdf.Close()

📌 技术细节说明:

  • PdfFontFamily.TimesRoman 属于 PDF 标准内置字体(无需嵌入);
  • 坐标 PointF(x, y) 单位为磅(1 pt ≈ 0.3528 mm),以页面左上角为 (0,0);
  • 无需设置区域框时,适用于短文本、标签插入、动态盖章等场景。

修改的PDF文档:
Python载入PDF插入文本


复杂格式设置:添加透明旋转水印文本

在文档审阅或内部版本发布场景中,常见的做法是添加一个带透明度与旋转角度的水印文字,以提示机密性或防止误传播。Spire.PDF 提供了画布状态保存、旋转、透明度控制等接口,可用于实现这种复杂的格式需求。

from spire.pdf import PdfDocument, PdfTrueTypeFont, PdfFontStyle, PdfSolidBrush, PdfRGBColor, PointF
from spire.pdf.common import Color# 加载已有PDF文档
pdf = PdfDocument()
pdf.LoadFromFile("input1.pdf")
page = pdf.Pages[0]# 设置水印文本内容
text = "Internal Use Only"# 设置字体样式与大小
font = PdfTrueTypeFont("Arial", 40.0, PdfFontStyle.Bold, True)# 设置画刷颜色为深红色
brush = PdfSolidBrush(PdfRGBColor(Color.get_DarkRed()))# 测量文本大小以便居中放置
size = font.MeasureString(text)
x = (page.Canvas.ClientSize.Width - size.Width) / 2
y = (page.Canvas.ClientSize.Height - size.Height) / 2# 保存当前画布状态
state = page.Canvas.Save()# 设置透明度
page.Canvas.SetTransparency(0.3)# 平移至文本中心位置
page.Canvas.TranslateTransform(x + size.Width / 2, y + size.Height / 2)# 旋转文本(-45度斜着显示)
page.Canvas.RotateTransform(-45.0)# 绘制文本水印(左上角为起始点,因此需偏移)
page.Canvas.DrawString(text, font, brush, PointF(-size.Width / 2, -size.Height / 2))# 恢复画布状态
page.Canvas.Restore(state)# 保存文档
pdf.SaveToFile("output/with_watermark.pdf")
pdf.Close()

📌 技术细节说明:

  • 使用 SetTransparency(0.3) 设置文本透明度,增强水印效果但不遮挡内容;
  • TranslateTransform() 将画布原点移动至文本中心;
  • RotateTransform(-45) 实现对角线旋转,常用于“CONFIDENTIAL”或“DRAFT”类水印;
  • 水印文本使用 DrawString() 绘制,PointF(-size.Width / 2, -size.Height / 2) 保证以中心为参考点;
  • 通过 Canvas.Save()Canvas.Restore() 管理局部画布状态,避免影响页面中其他元素。

修改后的PDF文档:
Python插入文本到PDF并精确控制位置和格式


总结

通过 Spire.PDF for Python,你可以使用简洁的 Python 代码在 PDF 中添加各类文本,功能包括:

功能项方法与说明
✅ 从零创建文档PdfDocument.Pages.Add() + DrawString()
✅ 插入文本到现有文档LoadFromFile() + PointF 定位文本插入点
✅ 控制排版样式使用 RectangleF + PdfStringFormat 控制对齐与区域
✅ 多行文本支持文本中添加 \n,自动换行渲染
✅ 字体与颜色控制支持 TrueType标准字体,自定义颜色 RGB

这些操作覆盖了 PDF 文本添加的主要应用场景,从文档批量生成到人工标注支持,适合用于自动归档、审批流程、内容输出等业务场景。


📚 更多PDF编辑教程,请访问:
Spire.PDF for Python 教程中心

http://www.dtcms.com/wzjs/103747.html

相关文章:

  • 大前端最新网站互联网销售公司
  • 广州做网站海珠信科十大中文网站排名
  • 做微商能利用的网站有哪些网络营销推广的方式
  • 网站性能容量的收集与分析怎么做集合竞价口诀背熟6句
  • 顺德微网站建设seo关键词是怎么优化的
  • 用什么程序做网站有道搜索引擎入口
  • 做卡盟网站百度系app有哪些
  • 动态网站开发软件周口搜索引擎优化
  • 微信营销和网站建设百度贴吧网页版登录入口
  • 网站别人做的上面有方正字体拼多多关键词排名在哪里看
  • 网站建设如何账务处理什么是seo和sem
  • 杭州互联网企业有哪些一键优化大师
  • 做网站要学什么软件简单网页制作
  • 网站开发排名郑州seo外包v1
  • 个人网站是什么意思星巴克seo网络推广
  • 搜索引擎网站开发今日头条新闻10条
  • 模板网站建设制作教育培训加盟
  • 广东建筑人才网招聘信息网泰州网站优化公司
  • 自己可以接单做网站吗青岛百度竞价
  • 西丽做网站建立网站的基本步骤
  • wordpress博客推荐关键词排名优化公司外包
  • 公司网上推广平台百度seo如何优化
  • 常德网站开发服务石家庄新闻网头条新闻
  • 济南网站假设推广谷歌推广怎么样
  • 郑州网站优化关键词app开发多少钱
  • 游戏代理去什么平台找搜索引擎优化实验报告
  • 云南 网站建设网站百度文库官网
  • 外贸网站建站多少钱互联网营销案例
  • 广州做网站要多少钱互联网广告精准营销
  • 在欣欣网上做网站效果如何河南seo关键词排名优化