reportlab中如何写中文

https://www.jianshu.com/p/41284e4e25f5

 

https://github.com/StellarCN/scp_zh/blob/master/fonts/SimSun.ttf

 

 

from reportlab.lib.colors import blue
from reportlab.lib.pagesizes import LETTER,A4
from reportlab.lib.units import inch
from reportlab.pdfgen.canvas import Canvas

from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont

pdfmetrics.registerFont(TTFont('SimSun', 'SimSun.ttf'))  #注册字体

canvas = Canvas("./PythonScript/Financial Statements.pdf", pagesize=LETTER)
# Set font to Times New Roman with 12-point size
canvas.setFont("SimSun", 25)

# Draw blue text one inch from the left and ten
# inches from the bottom
canvas.setFillColor(blue)

canvas.drawString(4.25 * inch, 10 * inch, r"报表")
canvas.drawString(4.25 * inch, 9 * inch, r"Results")

# Save the PDF file
canvas.save()
posted @   bH1pJ  阅读(104)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示