Python怎么把svg转换成pdf,并且还保留矢量图属性
用了magemagick,结果输出的是像素的pdf,放大就不行了求教有没有简单点的,依赖少一点的方法转换啊 用 inkscapehttps://inkscape.org/release/inkscape-1.4/ LW404 发表于 2024-10-19 14:24
用 inkscapehttps://inkscape.org/release/inkscape-1.4/
100多兆安装包,体积略大 转成PDF就已经没法保留矢量图的属性了 小阿林 发表于 2024-10-19 15:49
转成PDF就已经没法保留矢量图的属性了
试了下inkscape就可以的,只是软件太大了 from svglib.svglib import svg2rlg
from reportlab.graphics import renderPDF
def svg_to_pdf(svg_file_path, pdf_file_path):
drawing = svg2rlg(svg_file_path)
renderPDF.drawToFile(drawing, pdf_file_path)
# 使用示例
svg_path = "your_svg_file.svg"
pdf_path = "output.pdf"
svg_to_pdf(svg_path, pdf_path)
这种方法只依赖于reportlab和svglib两个库,相对来说比较简单且能较好地保留矢量图属性。在转换过程中,svglib将 SVG 图像转换为reportlab可处理的图形对象,然后reportlab将其渲染为 PDF 文件,确保了矢量图属性得以保留,即使放大也不会出现像素化的问题。 lyzxx 发表于 2024-10-19 18:04
from svglib.svglib import svg2rlg
from reportlab.graphics import renderPDF ...
谢谢,我刚才也在GitHub找到了这个,可以使用 学习了!真厉害! lyzxx 发表于 2024-10-19 18:04
from svglib.svglib import svg2rlg
from reportlab.graphics import renderPDF ...
学习了,还有这样的方法 小阿林 发表于 2024-10-19 15:49
转成PDF就已经没法保留矢量图的属性了
可以的。
页:
[1]
2