array 发表于 2008-6-9 20:36:08

[资源]OpenSceneGraph RSvg插件(Win32)

OpenSceneGraph 2.5.x中新增了用于读取SVG矢量图元文件(Scalable Vector Graphics)的osgdb_svg插件。在GNU/Linux环境下,这一插件的编译应当说没有什么难度;但是在Windows环境下,如果希望使用VS的编译器生成此插件的话,则有着诸多的麻烦。
首先,目前CMake还不能自动识别并生成osgdb_svg工程,因此我们需要自己建立一个DLL工程,添加ReaderWriterSVG.cpp文件,并设置其Include和Lib目录;
其次,SVG插件需要多个第三方库的支持,分别是:libRSVG,GTK+,GLib,FontConfig,Pango,Cario,libIconv和libXML2,缺一不可,绝大部分第三方库的Win32版本多数可以在Google上找到(多数在http://www.gtk.org/download-windows.html);
但是,最重要的libRSVG却还没有基于VS的版本(网络上可以找到其基于minGW32的版本),需要我们自己建立工程编译。

这里我提供了编译完成后的libRSVG库(include和lib文件),以及其它所有编译svg插件所必须的第三方库依赖文件。文件中附带的osgdb_svg.dll是我基于OpenSceneGraph 2.5.2生成的,mime.svg是用于测试的图元文件。FS下载地址:
http://www.fs2you.com/files/ea3b6463-361f-11dd-9a8f-0014221f3995/
有时间限制。
也欢迎与我联系探讨有关这个插件的生成或索取相应库文件

lab_zj 发表于 2008-6-12 08:18:44

能不能把osgdb_svg.dll所依赖的那几个DLL静态连接到它里面去,这样文件个数能少一些:lol

FlySky 发表于 2008-6-12 12:49:58

支持支持~~~~~:lol :lol



能不能把osgdb_svg.dll所依赖的那几个DLL静态连接到它里面去,这样文件个数能少一些



静态编译之后,你的其他插件也得静态编译吧~~这样不是更麻烦~~:) :)

lab_zj 发表于 2008-6-12 15:03:56

嘿嘿,我有工具能把那些DLL转换成静态LIB.

xkwang 发表于 2010-9-2 14:16:45

1# array

请给一个编译此插件的环境!多谢了!xkwangy@163.com

array 发表于 2010-9-2 22:50:15

这并不是很容易提供的,您需要整条gtk-toolchain才可能把librsvg编译出来,其中至少包括glib,fontconfig,cairo,pango,pixman,gtk

朱德辉 发表于 2017-3-28 14:56:09


您好我想问一下你当时在编译SVG库的时候 是怎么选择子lib版本的,我OSG版本3.4.0,选择github上GTK+最新版本编译子库不通过 求指点@array
页: [1]
查看完整版本: [资源]OpenSceneGraph RSvg插件(Win32)