簡體   English   中英

將文件夾中的所有文本文檔轉換為 PDF

[英]Convert all Text Documents from a folder to PDF

我的文件夾中有幾個文本文檔,想將它們轉換為 PDF 格式。 我可以使用以下代碼單獨完成。 有什么方法可以將文件夾中的所有文本文件 select 轉換並使用原始名稱保存(就像文本文檔一樣)? 下面是我用來轉換每個文件的代碼:


from fpdf import FPDF
pdf = FPDF()

pdf.add_page()
pdf.set_font("Arial", size = 8)

f = open("C:\\Users\\rc06587\\Desktop\\Text Doc\\Sample\\New folder (2)\\exp_000004593_cn23rk__09042020000000_citrixsystemsinc_92080217mr_00384.TXT", "r")

for x in f:
    pdf.cell(10, 4, txt = x, ln = 1, align = 'L')

pdf.output("exp_000004593_cn23rk__09042020000000_citrixsystemsinc_92080217mr_00384.TXT.pdf")

使用os.listdir()獲取所需目錄中的文件,過濾文本文件,然后進行轉換。

from fpdf import FPDF

def convert_one_file(path):
    pdf = FPDF()

    pdf.add_page()
    pdf.set_font("Arial", size = 8)

    f = open(path, "r")

    for x in f:
        pdf.cell(10, 4, txt = x, ln = 1, align = 'L')

    pdf.output(path + ".PDF")
    
path = "..."
for f in os.listdir(path):
    if os.path.isfile(os.sep.join((path, f))) and f.endswith(".txt"):
        convert_one_file(os.sep.join((path, f)))

一個更優雅的解決方案可能是使用pathlib來加入路徑。

在 windows 你不需要 python 或 fpdf 只需使用命令行

在此處輸入圖像描述

設置任何想要在文件列表中旋轉的命令行並將它們寫入 pdf 適應任何 cmd 以適應。 如果文本是純文本,它將成為可搜索的文本。pdf

全部TXT2PDF.cmd

FORFILES /M *.txt /C "cmd /c if @isdir==FALSE write.exe /pt @file \"Microsoft Print to PDF\" \"Microsoft Print to PDF\" \"@file.pdf\""

然而,作為純文本,它將保留默認大小的 courier 字體,因此對於 Arial 8 磅,您需要另存為富文本格式,如果您想要設置內容樣式以居中對齊顏色混合 fonts 等,這很容易。

在此處輸入圖像描述

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM