首页
/
每日頭條
/
科技
/
python讀取表格操作
python讀取表格操作
更新时间:2026-05-08 17:10:12

昨天,就在昨天,咱用了用ReportLab,那效果真的好得不得了,可惜因為篇幅問題,隻是小刀牛試了一把,在解決了它的中文問題後,就戛然而止了,甚是寡淡無味。

為了讓Python3處理pdf的口味更重一些,咱就來給ReportLab添點料。

1

這次要實現的功能,主要是标題和一段文字的描述,這麼有用的功能就問你驚不驚喜,意不意外。有關标題的功能,你可千萬别小瞧了,單是居中,就有很多人不知道怎麼實現才好。好了,别隻顧興奮了,咱開始搬磚吧。

from reportlab.pdfbase import pdfmetrics

from reportlab.pdfbase.ttfonts import TTFont

from reportlab.platypus import SimpleDocTemplate, Paragraph

from reportlab.lib.pagesizes import letter

from reportlab.lib.styles import getSampleStyleSheet

from reportlab.lib import colors

# 注冊字體

pdfmetrics.registerFont(TTFont('SimSun', 'SimSun.ttf'))

class Graphs:

def __init__(self):

pass

# 繪制标題

2

如果隻是有個标題,總感覺很沙雕似的。行,那咱就再來一段内容,讓内容更炫實,更豐富一些。這裡的段落内容換行,也是大家經常尋找的答案,我寫好了,拿走不謝。好了,别隻顧興奮了,咱還得繼續搬磚。

from reportlab.pdfbase import pdfmetrics

from reportlab.pdfbase.ttfonts import TTFont

from reportlab.platypus import SimpleDocTemplate, Paragraph

from reportlab.lib.pagesizes import letter

from reportlab.lib.styles import getSampleStyleSheet

from reportlab.lib import colors

# 注冊字體

pdfmetrics.registerFont(TTFont('SimSun', 'SimSun.ttf'))

class Graphs:

def __init__(self):

pass

# 繪制标題

@staticmethod

def draw_title():

style = getSampleStyleSheet()

ct = style['Normal']

ct.fontName = 'SimSun'

ct.fontSize = 18

# 設置行距

ct.leading = 50

# 顔色

ct.textColor = colors.green

# 居中

ct.alignment = 1

# 添加标題并居中

title = Paragraph('程序員的興趣調查報告', ct)

return title

# 繪制内容

@staticmethod

def draw_text():

style = getSampleStyleSheet()

# 常規字體(非粗體或斜體)

ct = style['Normal']

#使用的字體s

ct.fontName = 'SimSun'

ct.fontSize = 14

# 設置自動換行

ct.wordWrap = 'CJK'

# 居左對齊

ct.alignment = 0

# 第一行開頭空格

ct.firstLineIndent = 32

# 設置行距

ct.leading = 30

text = Paragraph('程序員,是互聯網、移動互聯網和即将到來的物聯網時期的弄潮兒。這群特立獨行的人才,不知平時最喜歡什麼?他們的興趣真想讓人一探究竟。經過七七49天的調研,終于形成了一份不具備權威性的統計報告,現公布給大家。', ct)

return text

if __name__ == "__main__":

content = list()

# 添加标題

content.append(Graphs.draw_title())

# 添加段落

content.append(Graphs. draw_text ())

# 生成pdf文件

doc = SimpleDocTemplate('report.pdf', pagesize=letter)

doc.build(content)

python讀取表格操作(Python3操作pdf文件之ReportLab的居中與換行)1

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
oppo手機怎麼格式化
oppo手機怎麼格式化
oppo手機怎麼格式化?首先打開手機的設置功能進入“設置”功能裡面以後,點擊“常規”選項,我來為大家講解一下關于oppo手機怎麼格式化?跟着小編一起來看一看吧!oppo手機怎麼格式化首先打開手機的設置功能。進入“設置”功能裡面以後,點擊“常...
2026-05-08
win7局域網看不到自己電腦
win7局域網看不到自己電腦
我們通常通過在線鄰居和其他人,但有時候我無法在網上鄰居中看到有人,我無法搜索。到底是怎麼回事?以下小系列需要Win7作為一個例子,給您一個詳細的解決方案。解決方案1:1.确保本地連接屬性添加了Microsoft網絡的文件和打印機共享組件。2...
2026-05-08
關于華為mate50的配置圖
關于華為mate50的配置圖
#頭條創作挑戰賽#今天(9月6日)時隔兩年的華為mate系列再次發布新品-mate50系列。相信不少花粉都滿心地期待着,接下來就為大家詳細介紹一下華為Mate50的參數配置。一、華為mate50參數詳情型号華為Mate50尺寸161.5×7...
2026-05-08
英日舉行聯合演習
英日舉行聯合演習
英日舉行聯合演習?當地時間26日,日本陸上自衛隊和英國陸軍在群馬縣進行了名為“警戒島22”的離島防衛聯合演習,雙方各派出約80人參加,接下來我們就來聊聊關于英日舉行聯合演習?以下内容大家不妨參考一二希望能幫到您!英日舉行聯合演習當地時間26...
2026-05-08
vivojovi要怎麼用
vivojovi要怎麼用
提起手機中的“人工智能”,或許許多人的意識還停留在Siri時代。但事實上,人工智能已經在手機上實現了更多具有實際意義的升級。舉個簡單的例子,拍照的時候,可能會有數千種不同的場景。過去,我們需要手動選擇不同的場景模式及參數,才能獲得更好的拍照...
2026-05-08
Copyright 2023-2026 - www.tftnews.com All Rights Reserved