我有一个 pixbuf 图像,我想使用 cairo 将其保存为 pdf。因为pixbuf太大了,我想按比例缩小。我用scale_simple
方法。但是,缩放的结果变得模糊。下面是我截取的截图。真实图像在右侧,左侧是pdf中的图像
你知道如何在不损失质量的情况下缩小 pixbuf 吗?下面只是我的示例代码。
from gi.repository import GdkPixbuf, Gdk
import cairo
class gui():
def __init__(self):
pix = GdkPixbuf.Pixbuf.new_from_file('tux2.png')
pix = pix.scale_simple(pix.get_width() / 3, pix.get_height() / 3, GdkPixbuf.InterpType.HYPER)
ps = cairo.PDFSurface('pix.pdf', 500, 500)
cr = cairo.Context(ps)
Gdk.cairo_set_source_pixbuf(cr, pix, 0, 0)
cr.paint()
if __name__ == '__main__':
gui()