[cairo] Simple Win32 GDI example with Cairo wanted

Markus Schumann go4shoe at hotmail.com
Thu Aug 28 16:27:18 PDT 2008


CWnd *pWnd; // we assume pWnd is pointing to your window

HDC hDC = GetDC(pWnd->m_hWnd);	// get DC from window handle

cairo_surface_t * pSurface       = cairo_win32_surface_create(hDC);
cairo_t *         pCairo         = cairo_create(pSurface);

that should do it.


-----Original Message-----
From: cairo-bounces at cairographics.org
[mailto:cairo-bounces at cairographics.org] On Behalf Of Stefan Landvogt
Sent: Thursday, August 28, 2008 16:40
To: cairo at cairographics.org
Subject: [cairo] Simple Win32 GDI example with Cairo wanted


I was able to build Cairo on Windows and also got a simple sample  
application, that renders to a PNG.


#include <cairo.h>

int _tmain(int argc, _TCHAR* argv[])
	cairo_surface_t *surface;
	cairo_t *cr;

	surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, 240, 80);
	cr = cairo_create (surface);

	cairo_select_font_face (cr, "serif", CAIRO_FONT_SLANT_NORMAL,  
	cairo_set_font_size (cr, 32.0);
	cairo_set_source_rgb (cr, 0.0, 0.0, 1.0);
	cairo_move_to (cr, 10.0, 50.0);
	cairo_show_text (cr, "Hello, World");
	cairo_destroy (cr);
	cairo_surface_write_to_png (surface, "hello.png");
	cairo_surface_destroy (surface);

	return 0;

Does anyone has an example, that does that simple rendering to a  
window not using GTK but to a Windows MFC window. Any pointer or  
example or even a VisualStudio project would be creately appreciated.

cairo mailing list
cairo at cairographics.org

More information about the cairo mailing list