簡體   English   中英

使用 python,如何更改 SVG 文件的尺寸和縱橫比

[英]Using python, how to change Dimensions and aspect ratio of SVG file

我正在嘗試使用以下代碼更改 python 中 SVG 文件的尺寸

from cairosvg import svg2svg
input_path="/home/user/Desktop/in.svg"
output_path="/home/user/Desktop/out.svg"
svg2svg(url=input_path,output_width=1600,output_height=1000, write_to=output_path)

但是,縱橫比是根據輸入文件保持的。

如何根據新尺寸(newWidth x newHeight)及其相應的縱橫比(newWidth/newHeight)調整 python 中的 SVG 的大小。

對於那些對解決方案感興趣的人,我們可以使用 python 修改 svg 文件(本質上是一個 xml 文件)的內容。

我們需要將 preserveAspectRatio='none' 添加到 svg 標記中,以便忽略原始縱橫比並根據明確定義的尺寸調整大小。

代碼如下:

import cairosvg

filename='/home/user/Desktop/output1.svg' #original file
output_file"/home/user/Desktop/Test3.svg"

Change = open(filename, "r")
data = Change.read()
data = data.replace('<svg ', '<svg preserveAspectRatio="none" ')
Change.close()
Change = open(filename, "w+")
Change.write(data)
Change.close()

cairosvg.svg2svg(url=filename, write_to=output_file, output_width=2000,output_height=1000)

暫無
暫無

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

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