赞
踩
Qt提供在widgets和其他paint device上渲染和展示SVG的类,本例就允许用户载入SVG文件并在QGraphicsView上用QGraphicsSvgItem显示它。并且例子还可以选择渲染者,QGraphicsView可以用QWidget或QGLWidget作为视口。也可以使用第三方渲染模型通过QImage。
程序运行如图:renderer可以选择:Native,OpenGL,Image
程序的main函数:
- int main(int argc, char **argv)
- {
- Q_INIT_RESOURCE(svgviewer);
-
- QApplication app(argc, argv);
-
- MainWindow window;
- if (argc == 2)
- window.openFile(argv[1]);
- else
- window.openFile(":/files/bubbles.svg");
- #if defined(Q_OS_SYMBIAN)
- window.showMaximized();
- #else
- window.show();
- #endif
- return app.exec();
- }
程序使用子类化QGraphicsView来显示svg文件。这里使用到了Graphic Scene Framework。上一篇博客简单介绍了它。通过QGraphicsItem,QGraphicsRectItem显示View中的svg文件内容和边框及背景。
本例由两个主要类组成:svgview,MainWindow
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。