如何将SVG文件转换为等效的GDI+;对象 我想用C++将SVG文件转换成等价的GDI+对象。一旦我得到这个对象,我就可以渲染它。有没有同样的建议 我的要求是我不应该使用任何第三方C++库?我应该只使用Micosoft的库

如何将SVG文件转换为等效的GDI+;对象 我想用C++将SVG文件转换成等价的GDI+对象。一旦我得到这个对象,我就可以渲染它。有没有同样的建议 我的要求是我不应该使用任何第三方C++库?我应该只使用Micosoft的库,c++,winapi,svg,gdi+,msxml,C++,Winapi,Svg,Gdi+,Msxml,我可以使用MSXML解析SVG文件。解析SVG文件后,如何将其转换为GDI+对象?SVG是一个复杂的API,使用起来并不特别容易。如果您可以将问题简化为SVG的一小部分,那么您可能有机会使某些功能正常工作。您是否考虑过SVG不能用GDI+对象表示的可能性?虽然可以使用GDI+渲染SVG图像,但在GDI+对象中可能无法存储足够的信息以供以后渲染。A可能有用,但不能表示每个SVG图像。请参阅下面的部分,以更好地理解。如何使用C++将SVG文件转换为光栅化图像格式(BMP,PNG),而不使用任何第三方

我可以使用MSXML解析SVG文件。解析SVG文件后,如何将其转换为GDI+对象?

SVG是一个复杂的API,使用起来并不特别容易。如果您可以将问题简化为SVG的一小部分,那么您可能有机会使某些功能正常工作。

您是否考虑过SVG不能用GDI+对象表示的可能性?虽然可以使用GDI+渲染SVG图像,但在GDI+对象中可能无法存储足够的信息以供以后渲染。A可能有用,但不能表示每个SVG图像。请参阅下面的部分,以更好地理解。如何使用C++将SVG文件转换为光栅化图像格式(BMP,PNG),而不使用任何第三方库?只需编写自己的SVG光栅化器即可。再过几个月,您就应该有一个基本的实现并开始运行了。再过6个月,它就会可靠地运行。或者,你可以解释,你真正想要的是什么。您的问题和上一条评论提出了不同的要求。GDI+对象支持光栅化图像格式和元文件。如果我将SVG文件转换为光栅化图像格式,那么我可以渲染它,这就是我在上一条评论中提出该问题的原因。如果不使用第三方库,您将不得不编写自己的SVG解析器,并将其渲染为可以与GDI+一起使用的图像。这使得这个问题对于stackoverflow来说过于宽泛。