Python实现读取文本文件并转换为pdf

 更新时间:2024年04月28日 09:36:02   作者:Eiceblue  
这篇文章主要为大家详细介绍了如何使用Python简便快捷地完成TXT文件到PDF文档的转换,满足多样化的文档处理需求,感兴趣的小伙伴可以参考下

文本文件因其轻便、易编辑的优势,常用于日常文字记录与数据交换;而PDF文档则以高保真、格式稳定和良好的阅读体验,成为正式报告、文献发布等场景的首选。将文本文件转为PDF,在PDF内精准绘制文本,旨在兼顾内容的规范呈现与个性化布局,适应不同场合对文档格式的特定要求。本文将将介绍如何使用Python简便快捷地完成TXT文件到PDF文档的转换,满足多样化的文档处理需求。

本文所使用的方法需要用到Spire.PDF for Python,PyPI:pip install Spire.PDF

用Python读取文本文件并转换为PDF文档

文本文件到PDF文档的转换可以通过读取文本,并将文本内容绘制在PDF页面上来实现。由于文本文件不储存格式信息,因为,我们可以在绘制时对文本格式进行自定义,使生成的PDF文档更符合我们的需求。

在读取和绘制过程中需要用到的主要类和方法:

  • PdfDocument 类: 代表 PDF 文档模型
  • PdfTextWidget 类: 代表能跨越多个页面的文本区域。
  • PdfDocument.Pages.Add() 方法: 向 PDF 文档添加页面。
  • PdfTextWidget.Draw() 方法: 在页面指定位置绘制文本部件。

以下是将文本文件内容绘制在PDF页面上的操作步骤:

  • 导入所需模块。
  • 使用 File.ReadAllText() 方法从 TXT 文件中读取文本。
  • 创建 PdfDocument 实例并向 PDF 文件添加页面。
  • 创建 PDF 字体和笔刷对象。
  • 设置文本格式和布局。
  • 创建一个 PdfTextWidget 对象来保存文本内容。
  • 使用 PdfTextWidget.Draw() 方法在PDF页面的指定位置绘制文本部件。
  • 使用 PdfDocument.SaveToFile() 方法保存 PDF 文件。
  • 释放资源。

代码示例:

from spire.pdf.common import *
from spire.pdf import *

inputFile = "G:/文档/示例.txt"
outputFile = "output/文本文件转PDF.pdf"

# 从txt文件中获取文本
with open(inputFile, "r", encoding="utf-8") as f:
    text = f.read()

# 创建PdfDocument实例
pdf = PdfDocument()

# 添加一页
page = pdf.Pages.Add()

# 创建PDF字体和PDF画刷
font = PdfTrueTypeFont("HarmonyOS Sans SC", 12.0, 0, True)
brush = PdfBrushes.get_Brown()

# 设置文本对齐方式和行间距
strformat = PdfStringFormat()
strformat.LineSpacing = 10.0
strformat.Alignment = PdfTextAlignment.Justify

# 设置文本布局
textLayout = PdfTextLayout()
textLayout.Break = PdfLayoutBreakType.FitPage
textLayout.Layout = PdfLayoutType.Paginate

# 创建PdfTextWidget实例来保存文本内容
textWidget = PdfTextWidget(text, font, brush)

# 设置文本格式
textWidget.StringFormat = strformat

# 在页面上指定位置绘制文本
bounds = RectangleF(PointF(0.0, 20.0), page.Canvas.ClientSize)
textWidget.Draw(page, bounds, textLayout)

# 保存结果文件
pdf.SaveToFile(outputFile, FileFormat.PDF)
pdf.Close()

结果文档:

到此这篇关于Python实现读取文本文件并转换为pdf的文章就介绍到这了,更多相关Python文本转pdf内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python数据结构之线性表的顺序存储结构

    python数据结构之线性表的顺序存储结构

    这篇文章主要为大家详细介绍了python数据结构之线性表的顺序存储结构,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09
  • 解决torch.autograd.backward中的参数问题

    解决torch.autograd.backward中的参数问题

    今天小编就为大家分享一篇解决torch.autograd.backward中的参数问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • python中的默认编码使用

    python中的默认编码使用

    这篇文章主要介绍了python中的默认编码使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • Python中递归以及递归遍历目录详解

    Python中递归以及递归遍历目录详解

    最近用Python读取文件夹下所有图片文件时,遇到一点点麻烦,该文件夹包含多级子文件夹,这篇文章主要给大家介绍了关于Python中递归以及递归遍历目录的相关资料,需要的朋友可以参考下
    2021-10-10
  • python热力图实现的完整实例

    python热力图实现的完整实例

    热力图的使用场景有描述数据在空间的密集程度,常见有城市热力图、区域热力图,描述多个变量之间相关性高低程度,这篇文章主要给大家介绍了关于python热力图实现的相关资料,需要的朋友可以参考下
    2022-06-06
  • 深度总结Python中字符串的使用

    深度总结Python中字符串的使用

    本文主要来学习字符串数据类型相关知识,包括讨论如何声明字符串数据类型,字符串数据类型与 ASCII 表的关系等内容,超级干货,不容错过
    2023-08-08
  • Python合并多个Excel文件的方法实现与对比

    Python合并多个Excel文件的方法实现与对比

    在日常工作中,处理多个 Excel 文件并将它们合并为一个文件,本文将介绍两种使用 Python 合并 Excel 文件的方法,文中的示例代码讲解详细, 感兴趣的小伙伴可以了解下
    2026-01-01
  • 使用python遍历指定城市的一周气温

    使用python遍历指定城市的一周气温

    本文主要介绍了使用python遍历指定城市的一周气温的实现方法。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-03-03
  • python库lxml在linux和WIN系统下的安装

    python库lxml在linux和WIN系统下的安装

    这篇内容我们给大家分享了lxml在WIN和LINUX系统下的简单快速安装过程,有兴趣的朋友参考学习下。
    2018-06-06
  • pytorch 如何使用batch训练lstm网络

    pytorch 如何使用batch训练lstm网络

    这篇文章主要介绍了pytorch 如何使用batch训练lstm网络的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05

最新评论