2011-09-24 104 views
3

可以在通過librsvg獲取其像素緩衝區之前縮放svg嗎?我可以看到類似rsvg_pixbuf_from_file_at_zoom的API,但它被標記爲已棄用。通過librsvg縮放矢量圖像

有沒有其他方法可以做到這一點?如果可能的話,我想避免使用cairo。

回答

4

你沒有太多的選擇,它要麼:

  • 使用像rsvg_pixbuf_from_file_at_size)棄用的功能((這是不是壞,它不太可能這個功能將在任何時間很快消失)
  • 或使用帶有rsvg_handle_new_from_file()和rsvg_handle_render_cairo()上的開羅表面RsvgHandle對象創建在合適的尺寸

可以限制開羅到使用至少,如果你想在通過年底GdkPixbuf:

  • 創建與rsvg_handle_new_from_file()
  • 創建開羅背景和設置變換矩陣想要
  • 渲染rsvg_handle_render_cairo SVG的一個RsvgHandle()
  • 用rsvg_handle_get_pixbuf()獲取pixbuf()