本文整理汇总了C++中cairo::RefPtr::finish方法的典型用法代码示例。如果您正苦于以下问题:C++ RefPtr::finish方法的具体用法?C++ RefPtr::finish怎么用?C++ RefPtr::finish使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cairo::RefPtr
的用法示例。
在下文中一共展示了RefPtr::finish方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SaveSvg
void ImageWidget::SaveSvg(const std::string &filename)
{
unsigned width = get_width(), height = get_height();
Cairo::RefPtr<Cairo::SvgSurface> surface = Cairo::SvgSurface::create(filename, width, height);
Cairo::RefPtr<Cairo::Context> cairo = Cairo::Context::create(surface);
if(HasImage())
{
AOLogger::Debug << "Saving SVG of " << get_width() << " x " << get_height() << "\n";
update(cairo, width, height);
}
cairo->show_page();
surface->finish();
}
示例2: SavePdf
void ImageWidget::SavePdf(const std::string &filename)
{
unsigned width = get_width(), height = get_height();
Cairo::RefPtr<Cairo::PdfSurface> surface = Cairo::PdfSurface::create(filename, width, height);
Cairo::RefPtr<Cairo::Context> cairo = Cairo::Context::create(surface);
if(HasImage())
{
AOLogger::Debug << "Saving PDF of " <<get_width() << " x " << get_height() << "\n";
update(cairo, width, height);
}
cairo->show_page();
// We finish the surface. This might be required, because some of the subclasses store the cairo context. In that
// case, it won't be written.
surface->finish();
}