【问题标题】:How get resolution of SVG image in python?如何在 python 中获取 SVG 图像的分辨率?
【发布时间】:2018-11-18 05:05:24
【问题描述】:

有什么方法可以在 python 中获取 SVG 图像的分辨率。所有其他图像分辨率都适用于 PIL。我没有为 SVG 图像找到任何解决方案。我正在使用以下代码来获取分辨率,但它仅适用于某些情况,

data = request.FILES['picture']
tree = ET.parse(data)
root = tree.getroot()
h = int(root.attrib['height'])
w = int(root.attrib['width'])
print(h, w)

【问题讨论】:

  • 通过简单的方式,您可以将其转换为另一种格式
  • SVG 是矢量。他们没有解决方案。

标签: python django svg python-imaging-library


【解决方案1】:

SVG 文件是矢量,可以作为 XML 读取。例如 Python 标准库中的xml.etree.ElementTree 可以解析 XML 文件。

我们有这样的东西:

<svg width="240" height="240" xmlns="http://www.w3.org/2000/svg">

如果您的文件具有宽度和高度属性,则可以使用它们。如果没有宽度和高度,我认为没有办法获得 SVG 文件的确切大小,因为它们可以无限缩放(任何分辨率

宽度和高度

<svg width="240" height="240" 
xmlns="http://www.w3.org/2000/svg">

原比例加倍。

<svg viewBox="0 0 120 120" width="240" height="240" 
xmlns="http://www.w3.org/2000/svg">

无限缩放

<svg viewBox="0 0 120 120" 
xmlns="http://www.w3.org/2000/svg">

【讨论】:

    猜你喜欢
    • 2018-01-14
    • 1970-01-01
    • 1970-01-01
    • 2017-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-02
    相关资源
    最近更新 更多