欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)讀取文本文件并轉(zhuǎn)換為pdf

 更新時(shí)間:2024年04月28日 09:36:02   作者:Eiceblue  
這篇文章主要為大家詳細(xì)介紹了如何使用Python簡(jiǎn)便快捷地完成TXT文件到PDF文檔的轉(zhuǎn)換,滿足多樣化的文檔處理需求,感興趣的小伙伴可以參考下

文本文件因其輕便、易編輯的優(yōu)勢(shì),常用于日常文字記錄與數(shù)據(jù)交換;而PDF文檔則以高保真、格式穩(wěn)定和良好的閱讀體驗(yàn),成為正式報(bào)告、文獻(xiàn)發(fā)布等場(chǎng)景的首選。將文本文件轉(zhuǎn)為PDF,在PDF內(nèi)精準(zhǔn)繪制文本,旨在兼顧內(nèi)容的規(guī)范呈現(xiàn)與個(gè)性化布局,適應(yīng)不同場(chǎng)合對(duì)文檔格式的特定要求。本文將將介紹如何使用Python簡(jiǎn)便快捷地完成TXT文件到PDF文檔的轉(zhuǎn)換,滿足多樣化的文檔處理需求。

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

用Python讀取文本文件并轉(zhuǎn)換為PDF文檔

文本文件到PDF文檔的轉(zhuǎn)換可以通過(guò)讀取文本,并將文本內(nèi)容繪制在PDF頁(yè)面上來(lái)實(shí)現(xiàn)。由于文本文件不儲(chǔ)存格式信息,因?yàn)椋覀兛梢栽诶L制時(shí)對(duì)文本格式進(jìn)行自定義,使生成的PDF文檔更符合我們的需求。

在讀取和繪制過(guò)程中需要用到的主要類(lèi)和方法:

  • PdfDocument 類(lèi): 代表 PDF 文檔模型
  • PdfTextWidget 類(lèi): 代表能跨越多個(gè)頁(yè)面的文本區(qū)域。
  • PdfDocument.Pages.Add() 方法: 向 PDF 文檔添加頁(yè)面。
  • PdfTextWidget.Draw() 方法: 在頁(yè)面指定位置繪制文本部件。

以下是將文本文件內(nèi)容繪制在PDF頁(yè)面上的操作步驟:

  • 導(dǎo)入所需模塊。
  • 使用 File.ReadAllText() 方法從 TXT 文件中讀取文本。
  • 創(chuàng)建 PdfDocument 實(shí)例并向 PDF 文件添加頁(yè)面。
  • 創(chuàng)建 PDF 字體和筆刷對(duì)象。
  • 設(shè)置文本格式和布局。
  • 創(chuàng)建一個(gè) PdfTextWidget 對(duì)象來(lái)保存文本內(nèi)容。
  • 使用 PdfTextWidget.Draw() 方法在PDF頁(yè)面的指定位置繪制文本部件。
  • 使用 PdfDocument.SaveToFile() 方法保存 PDF 文件。
  • 釋放資源。

代碼示例:

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

inputFile = "G:/文檔/示例.txt"
outputFile = "output/文本文件轉(zhuǎn)PDF.pdf"

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

# 創(chuàng)建PdfDocument實(shí)例
pdf = PdfDocument()

# 添加一頁(yè)
page = pdf.Pages.Add()

# 創(chuàng)建PDF字體和PDF畫(huà)刷
font = PdfTrueTypeFont("HarmonyOS Sans SC", 12.0, 0, True)
brush = PdfBrushes.get_Brown()

# 設(shè)置文本對(duì)齊方式和行間距
strformat = PdfStringFormat()
strformat.LineSpacing = 10.0
strformat.Alignment = PdfTextAlignment.Justify

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

# 創(chuàng)建PdfTextWidget實(shí)例來(lái)保存文本內(nèi)容
textWidget = PdfTextWidget(text, font, brush)

# 設(shè)置文本格式
textWidget.StringFormat = strformat

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

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

結(jié)果文檔:

到此這篇關(guān)于Python實(shí)現(xiàn)讀取文本文件并轉(zhuǎn)換為pdf的文章就介紹到這了,更多相關(guān)Python文本轉(zhuǎn)pdf內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 淺談Scrapy網(wǎng)絡(luò)爬蟲(chóng)框架的工作原理和數(shù)據(jù)采集

    淺談Scrapy網(wǎng)絡(luò)爬蟲(chóng)框架的工作原理和數(shù)據(jù)采集

    在python爬蟲(chóng)中:requests + selenium 可以解決目前90%的爬蟲(chóng)需求,難道scrapy 是解決剩下的10%的嗎?顯然不是。scrapy框架是為了讓我們的爬蟲(chóng)更強(qiáng)大、更高效。接下來(lái)我們一起學(xué)習(xí)一下它吧。
    2019-02-02
  • Python3實(shí)現(xiàn)轉(zhuǎn)換Image圖片格式

    Python3實(shí)現(xiàn)轉(zhuǎn)換Image圖片格式

    本篇文章給大家分享了Python3實(shí)現(xiàn)在線轉(zhuǎn)換Image圖片格式的功能以及相關(guān)實(shí)例代碼,有興趣的朋友參考下。
    2018-06-06
  • python多進(jìn)程執(zhí)行方法apply_async使用說(shuō)明

    python多進(jìn)程執(zhí)行方法apply_async使用說(shuō)明

    這篇文章主要介紹了python多進(jìn)程執(zhí)行方法apply_async使用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03
  • python+rsync精確同步指定格式文件

    python+rsync精確同步指定格式文件

    這篇文章主要為大家詳細(xì)介紹了python+rsync精確同步指定格式文件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • Python輕松實(shí)現(xiàn)批量郵件自動(dòng)化詳解

    Python輕松實(shí)現(xiàn)批量郵件自動(dòng)化詳解

    在日常工作和生活中,我們經(jīng)常需要發(fā)送郵件,手動(dòng)發(fā)送郵件不僅繁瑣,而且容易出錯(cuò),下面我們就來(lái)看看如何使用Python實(shí)現(xiàn)批量郵件自動(dòng)化操作吧
    2025-02-02
  • Python利用flask操作Redis的方法詳解

    Python利用flask操作Redis的方法詳解

    這篇文章主要為大家詳細(xì)介紹了Python如何利用flask操作Redis,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定的幫助,需要的可以參考一下
    2023-02-02
  • python時(shí)間與Unix時(shí)間戳相互轉(zhuǎn)換方法詳解

    python時(shí)間與Unix時(shí)間戳相互轉(zhuǎn)換方法詳解

    這篇文章主要介紹了python時(shí)間與Unix時(shí)間戳相互轉(zhuǎn)換方法詳解,需要的朋友可以參考下
    2020-02-02
  • 最新評(píng)論