开罗和高DPI绘图(绘制在视网膜表面,OS X)

时间:2013-04-30 13:35:17

标签: macos drawing cairo

我的应用程序使用cairo绘制一些图像:

cairo_set_source_surface(cr, _page_down_icon, icon_x, y);
cairo_paint(cr);

页面向下图标是我通过cairo_image_surface_create_from_png加载的png。

这在标准屏幕上工作正常但在视网膜显示器上产生低质量图像。所以我想要有一个双分辨率的第二个图像(就像NSImage一样)。但是,如果我只是绘制此图像,则结果是标准图像的两倍。所以我的问题是:如何在视网膜显示屏上用cairo绘制高光图像,使其看起来清晰?

1 个答案:

答案 0 :(得分:1)

cairo_scale是你的朋友。使用此方法,您可以调整曲面轴的缩放比例。为了得到您想要的结果,您需要为第二张图像缩放0.5(不是您还必须调整图像的目标位置!)。