コード例 #1
0
ファイル: renderer.cpp プロジェクト: jorik041/alacarte
void Renderer::paintBackground(const CairoLayer& layer, const Style* canvasStyle) const
{
	layer.cr->set_source_color(canvasStyle->fill_color);
	const string& bg = canvasStyle->fill_image.str();
	if (bg.size() > 0)
	{
		Cairo::RefPtr<Cairo::ImageSurface> image = Cairo::ImageSurface::create_from_png(bg);
		Cairo::RefPtr<Cairo::SurfacePattern> pattern = Cairo::SurfacePattern::create(image);
		pattern->set_extend(Cairo::Extend::EXTEND_REPEAT);
		layer.cr->set_source(pattern);
	}
	layer.cr->paint();
}