Cairo for Symbian OSSymbian繪圖庫
Cairo for Symbian OS 是繪圖庫 Cairo 在 Symbian 操作系統(tǒng)上的移植版本。
示例代碼:
// CMyAppView derives from CCoeControl
//
void CMyAppView::ConstrucL(const TRect& aRect)
{
CreateWindowL();
SetRect(aRect);
ActivateL();
iSurface = cairo_symbian_surface_create(&Window());
iContext = cairo_create(iSurface);
}
// implement CCoeControl::Draw method
//
void CMyAppView::Draw(const TRect&) const
{
// start drawing using Cairo here
// please note that mixing Cairo and native rendering i.e. using CWindowGc API
// is not supported and will produce undefined result
...
cairo_t* cr = Context(); // shortcut to iContext
cairo_set_source_rgb(cr, 1, 1, 1);
cairo_paint(cr);
...
}
// cleanup
//
CMyAppView::~CMyAppView()
{
...
cairo_destroy(iContext);
cairo_surface_destroy(iSurface);
}
