2014-01-07 6 views
2

我正在使用wxPython打印工具來打印簡單的html頁面,並且直到現在它工作正常。使用wxPython打印工具來渲染SVG

的代碼非常簡單,這一個:

printout = wx.html.HtmlPrintout("Printing") 
printout.SetHtmlText(document) 

「文件」 是一個HTML文檔。現在在html文檔中,我想添加一個SVG圖像。 因此,在新的HTML文檔的頂部有:

<img src="path_to_my_svg_image" /> 

當我嘗試打印,wxPython的給我留言 彈出一個錯誤「沒有處理找到圖像類型的」

所以我覺得wxPython不支持SVG。

在網上,我發現 https://code.google.com/p/wxpsvg/http://pypi.python.org/pypi/pyWxSVG/0.3

,但我需要的是不打印SVG圖像,但與SVG圖像的HTML文件,並就我明白他們不適合我的目的。

有沒有人有和我一樣的問題?

回答

1

here來看,基本的wxWidgets庫不知道如何處理SVG圖像:

void wxInitAllImageHandlers() 
{ 
#if wxUSE_LIBPNG 
    wxImage::AddHandler(new wxPNGHandler); 
#endif 
#if wxUSE_LIBJPEG 
    wxImage::AddHandler(new wxJPEGHandler); 
#endif 
#if wxUSE_LIBTIFF 
    wxImage::AddHandler(new wxTIFFHandler); 
#endif 
#if wxUSE_GIF 
    wxImage::AddHandler(new wxGIFHandler); 
#endif 
#if wxUSE_PNM 
    wxImage::AddHandler(new wxPNMHandler); 
#endif 
#if wxUSE_PCX 
    wxImage::AddHandler(new wxPCXHandler); 
#endif 
#if wxUSE_IFF 
    wxImage::AddHandler(new wxIFFHandler); 
#endif 
#if wxUSE_ICO_CUR 
    wxImage::AddHandler(new wxICOHandler); 
    wxImage::AddHandler(new wxCURHandler); 
    wxImage::AddHandler(new wxANIHandler); 
#endif 
#if wxUSE_TGA 
    wxImage::AddHandler(new wxTGAHandler); 
#endif 
#if wxUSE_XPM 
    wxImage::AddHandler(new wxXPMHandler); 
#endif 
} 

我不知道是否有可能從Python中調用的AddHandler(當然是合適的wxSVGHandler) ,但如果你需要使用wx打印設施,我會試試這種方式