相关疑难解决方法(0)

如何使用我已知道其URL地址的Python在本地保存图像?

我知道Internet上图像的URL.

例如http://www.digimouth.com/news/media/2011/09/google-logo.jpg,其中包含Google的徽标.

现在,如何使用Python下载此图像,而无需在浏览器中实际打开URL并手动保存文件.

python web-scraping

135
推荐指数
8
解决办法
20万
查看次数

HTTP响应头中内容处置的使用

我发现以下asp.net代码在从数据库提供文件时非常有用:

Response.AppendHeader("content-disposition", "attachment; filename=" + fileName);
Run Code Online (Sandbox Code Playgroud)

这允许用户将文件保存到他们的计算机,然后决定如何使用它,而不是尝试使用该文件的浏览器.

使用内容处置响应标头还可以做些什么?

http httpresponse httpwebresponse content-disposition http-headers

122
推荐指数
4
解决办法
21万
查看次数

如何将缩放的SVG渲染到QImage?

模块中有一个QSvgRendererQtSvg可以渲染图像QPaintDevice.这个可以QImage.在这种情况下,我们将创建:

Image svgBufferImage(renderer.defaultSize(), QImage::Format_ARGB32);
Run Code Online (Sandbox Code Playgroud)

但是如何QImage从SVG渲染器渲染到与默认大小不同的大小?由于SVG格式图像可以在没有质量损失的情况下进行缩放,是否可以使用QSvgRenderer?生成SVG文件中的静态图像,如PNG .

有没有人有更好的主意?基本上我需要从不同大小的SVG文件创建像PNG这样的图像.

qt svg image

20
推荐指数
2
解决办法
2万
查看次数

如何在Python中将SVG图像渲染为PNG文件?

所以我想从具有目标分辨率 WxH 的 python 代码渲染 SVG(将 SVG 文本作为 str,就像我动态生成的那样):

<svg width="200" height="200" viewBox="0 0 220 220"
     xmlns="http://www.w3.org/2000/svg">
  <filter id="displacementFilter">
    <feTurbulence type="turbulence" baseFrequency="0.05"
        numOctaves="2" result="turbulence"/>
    <feDisplacementMap in2="turbulence" in="SourceGraphic"
        scale="50" xChannelSelector="R" yChannelSelector="G"/>
  </filter>

  <circle cx="100" cy="100" r="100"
      style="filter: url(#displacementFilter)"/>
</svg>
Run Code Online (Sandbox Code Playgroud)

转换为 png 图像。如何在Python中做这样的事情?

python linux svg render

15
推荐指数
2
解决办法
1万
查看次数

如何在 Python 中将 SVG 转换为 PNG 或 JPEG?

我正在使用svgwrite和生成 svg 文件,如何将它们转换为 PNG 或 JPEG?

python svg png jpeg svgwrite

14
推荐指数
3
解决办法
1万
查看次数

python中的服务器端SVG到PNG(或其他一些图像格式)

目前我正在使用rsvg加载svg(从字符串,而不是从文件)和绘图到cairo.谁知道更好的方法?我在我的应用程序中的其他位置使用PIL,但我不知道如何使用PIL执行此操作.

python svg png

11
推荐指数
1
解决办法
1万
查看次数

将SVG转换为PDF(svglib + reportlab不够好)

我正在批量创建一些SVG,需要将它们转换为PDF文档进行打印.我一直在尝试使用svglib它的svg2rlg方法,但我刚刚发现它在保存文档中的矢量图形方面绝对令人震惊.它几乎无法正确定位文本.

我动态生成的SVG格式正确,我svglib在原始输入上进行了测试,以确保它不是我要介绍的问题.

那么我过去svglib和ReportLab的选择是什么?它要么必须是免费的,要么非常便宜,因为我们已经超出了该项目的预算.我们负担不起ReportLab Plus的1k /年费用.

我正在使用Python,但在这个阶段,只要它在我们的Ubuntu服务器上运行,我就很高兴.

编辑:经过测试的王子.更好,但它仍然忽略了一半的文件.

python pdf svg reportlab

9
推荐指数
2
解决办法
5155
查看次数

在 matplotlib 图形中绘制 SVG(嵌入在 wxPython 中)

我正在尝试在 matplotlib 子图中嵌入一个 SVG 图像。

matplotlib 只能在本机读取 PNG,但是如果安装了 PIL,它将使用它来加载图像并返回一个可以与 imshow() 一起使用的数组(如果可能)。 http://matplotlib.sourceforge.net/api/pyplot_api.html

import Image     
filename = "/tmp/figure.svg"
pil_img = Image.open(filename) # PIL image
img = np.asarray(pil_img) # converting PIL image into numpy array
self.axes.cla()
self.axes.imshow(img)
Run Code Online (Sandbox Code Playgroud)

但当然 PIL 不支持 SVG。错误:

文件“/usr/lib/python2.7/dist-packages/PIL/Image.py”,第 1980 行,打开

引发 IOError("无法识别图像文件")

IOError:无法识别图像文件

如何光栅化 SVG 文件以imshow使用 matplotlib绘制或直接绘制向量?

谢谢。

python svg matplotlib

6
推荐指数
1
解决办法
4492
查看次数

Can Cairo(图形库)可用于渲染数学公式和图片(乳胶风格)吗?

它是否需要完全成熟的unicode字符呈现的依赖关系,还是可以读取和呈现任何平台(Linux/Max/Windows)本机字体字形而没有太多问题?

它可以在生成的pdf文件中导入/渲染eps/pdf/svg,还是我必须手动解析图像文件,并在Cairo中重绘它?

c rendering vector-graphics image-formats cairo

5
推荐指数
1
解决办法
938
查看次数

使用 Python 解析 Adob​​e Illustrator (.ai) 文件

我在 Linux 下使用 Python。你能推荐一些库或命令行工具来解析我可以在我的 Python 程序中使用的 Adob​​e Illustrator (.ai) 文件吗?

我需要做的包括:

  1. 将 .ai 文件转换为 .jpeg 或 .png 图像
  2. 从 .ai 文件中提取文本
  3. 读取 .ai 文件信息(例如版本号,类似于AI 的psdparse

我在 Ubuntu 下需要它,所以我不能使用 win32com

python vector adobe-illustrator

5
推荐指数
2
解决办法
1万
查看次数

在 Windows 上使用 Python 将 SVG 转换为 PNG

问题:哪个可重现的过程可以使 Windows Python 用户将 SVG 图像渲染为 PNG?


许多问题/答案(例如Convert SVG to PNG in PythonServer-side SVG to PNG (or some other image format) in python,由于下面解释的原因,它们不重复)解释了如何使用 Python 将 SVG 转换为 PNG .

不幸的是,它们都不能用于 Python + Windows。经过 20 多分钟,以及许多不同的尝试,我仍然无法做到。有关失败尝试的更多详细信息:

python windows svg cairo

5
推荐指数
1
解决办法
1156
查看次数

在 python 中,将 SVG 转换为 PNG,同时调整大小并提高质量

首先,我注意到有很多相关的问题,但是在尝试了 pyvip 和 cairo 以及其余的一天之后,即使在安装了它们似乎依赖的其他软件之后,它们都对我不起作用。例外是 svglib 和 reportlab,它很接近,但还没有完全达到目标!是我发现的最好的帖子,可能会对一些人有所帮助。

我的所有源图像都保存在 SVG 文件中。大多数应用商店要求您提供一组具有特定尺寸和质量的 PNG。所以我需要获取一个 SVG 并生成一个宽度为 w、高度为 h 以及特定 dpi 的 PNG。我想在 python 中以编程方式执行此操作。

我编写了一个几乎可以工作的函数,但是缩放和 dpi 以奇怪的方式相互作用。我使用 svglib 将 SVG 转换为 ReportLab 绘图,然后使用 reportlab 操作该绘图。与其他一些选项不同,Windows 上的安装过程很顺利。

pip install svglib
pip install reportlab
Run Code Online (Sandbox Code Playgroud)

代码如下。我检查了上面的库来获取参数,但添加了一些东西来获取特定的大小。

from svglib.svglib import svg2rlg
from reportlab.graphics import renderPM

def svg_to_png(in_path,out_path,fmt="PNG",
    scale=None,size=None,scale_x=1,size_x=None,scale_y=1,size_y=None,
    dpi=72, bg=0xffffff):
    # Convert SVG to ReportLab drawing. 
    drawing = svg2rlg(in_path)
    # Work out scale factors
    # Scale over-rides scale_x|y, ditto size
    scale_x = scale if …
Run Code Online (Sandbox Code Playgroud)

python svg reportlab

5
推荐指数
1
解决办法
3565
查看次数

在 Python 中使用自定义字体将 SVG 转换为 PNG

我正在使用基于 Cairo/RSVG 的解决方案将 SVG 光栅化为 PNG。它已经在 StackOverflow 上的Convert SVG to PNG in Python 中进行了描述。但是,此解决方案似乎不适用于自定义字体。

我发现这个页面描述了嵌入 SVG 字体

我尝试通过 XLink 从外部 SVG 中包含它们,如示例中所述。我尝试将字体直接嵌入到同一个 SVG 文件中。失败了,我尝试了 CSS Web Fonts 语法。在使用 Cairo 渲染时,这 3 种方法都不起作用(在 Ubuntu 的默认查看器 Eye of GNOME 中也不起作用)。

我试过 ImageMagick,结果与开罗完全相同。

另一方面,使用所有 3 种字体嵌入方法,字体在 WebKit 中呈现得很好,无论是使用 Google Chrome 还是webkit2png.py。但是,如果可能的话,我想避免在服务器上使用 QT WebKit,因为它的设置很重要(包括 xvfb 等),而且恐怕这可能不会导致非常高效或稳定。

有没有其他方法可以从 Python 将 SVG 渲染为 PNG?

python svg png librsvg

4
推荐指数
2
解决办法
3937
查看次数