QPixmap和SVG

Mat*_*ler 2 qt svg qpixmap

您如何建议使用QPixmap处理svg?

QPixmap(":/myfile.svg");然后调用的构造scaled()不起作用.QPixmap获得像素化.

谢谢.

Yas*_*ash 20

现在有更简单的方法,而不需要SVG模块

QIcon("filepath.svg").pixmap(QSize())
Run Code Online (Sandbox Code Playgroud)

如此简单,工作正常.至少在我的情况下,它工作.


Tro*_*our 6

您应该使用SVGRenderer将其渲染到QImage.从那里,你可以转换成QPixmap具有QPixmap::convertFromImage.


Ser*_*lin 5

类似的东西:

QSvgRenderer renderer(svg_file_name);
QPixmap pm(width, height);
pm.fill(fill_color);
QPainter painter(&pm);
renderer.render(&painter, pm.rect());
Run Code Online (Sandbox Code Playgroud)