📜  PyCairo – 如何保存剪辑?

📅  最后修改于: 2022-05-13 01:54:48.634000             🧑  作者: Mango

PyCairo – 如何保存剪辑?

在本文中,我们将学习如何在Python中使用 PyCairo 保存剪辑。保留剪辑意味着通过将当前剪辑区域与当前路径相交来建立一个新的剪辑区域,因为它将由 Context.fill() 并根据当前填充规则填充。

PyCairo :Pycairo 是一个Python模块,为 Cairo 图形库提供绑定。这个库用于在Python中创建 SVG 即矢量文件。打开 SVG 文件进行查看(只读)的最简单快捷的方法是使用现代 Web 浏览器,如 Chrome、Firefox、Edge 或 Internet Explorer——几乎所有这些浏览器都应该为 SVG 格式提供某种渲染支持。

SVG文件是使用万维网联盟 (W3C) 创建的二维矢量图形格式的图形文件。它使用基于 XML 的文本格式描述图像。 SVG 文件是作为在 Web 上显示矢量图形的标准格式而开发的。

注意:当前剪辑区域通过有效屏蔽当前剪辑区域之外的表面的任何更改来影响所有绘图操作。

例子 :

Python3
# importing pycairo
import cairo
  
# creating a SVG surface 
# here geek1 is file name &
# 700, 700 is dimension
with cairo.SVGSurface("geek1.svg", 700, 700) as surface:
      
    # creating a cairo context object
    context = cairo.Context(surface)
      
    #creating a arc without using closing path method
    context.arc(100, 60, 40, 0, 1*22/7)
      
    #stroke the context to remove the moved pen 
    context.stroke()
      
    #creating a arc with using close path method
    context.arc(300, 60, 40, 0, 1*22/7)
      
    #makeing close path
    context.close_path()
      
    # preserving the clip
    context.clip_preserve()
      
    #stroke the context to remove the moved pen 
    context.stroke()


输出 :