繁体   English   中英

有关使Cairo图形与MFC一起使用的小示例?

[英]Small example on getting Cairo graphics to work with MFC?

我有一些旧的MFC应用程序,并且我想使用Cairo绘图引擎添加一些图表。

我正在寻找一个如何使它工作的小例子。 基本上,一旦创建了PNG或GIF文件,如何将其显示在MFC CView窗口中?

我的Google-FU没有找到任何好的线索。

从我的演示样本中

// cairo_surface_t *surface;
// cairo_t *cr;

// surface = call_win32_surface_create_with_dib_T(CAIRO_FORMAT_ARGB32, 240, 80);
// cr = call_create_T (surface);

// call_surface_write_to_png_T (surface, "hello.png");


HDC src = call_win32_surface_get_dc_T(surface); // <--------
BitBlt(dest, 0, 0, 240, 80, src, 0,0, SRCCOPY); // <--------

假设您已经有一个曲面,则可以使用上面的示例。
dest是要渲染开罗曲面的窗口的HDC句柄。

更新: CView :: OnDraw()

您应该为CView(继承?)类实现OnDraw()方法。
您可以使用pDC指针绘制开罗表面,即:

pDC->BitBlt(0, 0, 240, 80, src, 0,0, SRCCOPY); // "HDC src" is mentioned above

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM