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内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • pytorch中tensor转换为float的实现示例

    pytorch中tensor转换为float的实现示例

    本文主要介绍了pytorch中tensor转换为float,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-03-03
  • Python爬取商家联系电话以及各种数据的方法

    Python爬取商家联系电话以及各种数据的方法

    今天小编就为大家分享一篇Python爬取商家联系电话以及各种数据的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • Keras在mnist上的CNN实践,并且自定义loss函数曲线图操作

    Keras在mnist上的CNN实践,并且自定义loss函数曲线图操作

    这篇文章主要介绍了Keras在mnist上的CNN实践,并且自定义loss函数曲线图操作,具有很好的参考价值,希望对大家有所帮助。
    2021-05-05
  • Python super( )函数用法总结

    Python super( )函数用法总结

    今天给大家带来的知识是关于Python的相关知识,文章围绕着super( )函数展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06
  • python中if的基础用法(if else和if not)

    python中if的基础用法(if else和if not)

    if在Python中用作某个条件或值的判断,下面这篇文章主要给大家介绍了关于python中if的基础用法,主要包括if else和if not,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • 实例详解Matlab 与 Python 的区别

    实例详解Matlab 与 Python 的区别

    Python是一种面向对象的解释型计算机程序设计语言。这篇文章主要介绍了Matlab 与 Python 的区别及优势,感兴趣的朋友跟随小编一起看看吧
    2019-04-04
  • python学习pymongo模块的使用方法

    python学习pymongo模块的使用方法

    这篇文章主要介绍了python学习pymongo模块的使用方法,pymongo模块是python操作mongo数据的第三方模块,总结一下常用到的简单用,需要的小伙伴可以参考一下
    2022-09-09
  • python 批量解压压缩文件的实例代码

    python 批量解压压缩文件的实例代码

    这篇文章主要介绍了python 批量解压压缩文件的实例代码,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-06-06
  • 举例讲解Python中metaclass元类的创建与使用

    举例讲解Python中metaclass元类的创建与使用

    在Python中我们用type函数可以动态地创建一个元类,同样也可以用__metaclass__属性来指定一个元类,接下来我们就来具体举例讲解Python中metaclass元类的创建与使用
    2016-06-06
  • python解析库Beautiful Soup安装的详细步骤

    python解析库Beautiful Soup安装的详细步骤

    Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据,下面这篇文章主要给大家介绍了关于python解析库Beautiful Soup安装的详细步骤,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-04-04

最新评论