[英](py)cairo - fill
有沒有辦法填充封閉路徑(多邊形)之外的所有東西?
背景:我想用海岸線渲染一些地圖 - 所以有時我需要用藍色填充海洋,所以我認為這是最簡單的,在我的情況下最有效的是用藍色填充這個海岸線多邊形之外的所有東西顏色。
提前致謝!
您可以將覆蓋整個繪圖區域的矩形添加到海岸線路徑,並將填充規則設置為cairo.FILL_RULE_EVEN_ODD
。 在此之后調用fill()
填充原始路徑之外的區域。 (如果為矩形選擇了正確的方向,則可以跳過設置填充規則。)
在整個開羅表面上畫一個大的藍色矩形,然后畫上你的海岸線?
雖然你可以創建一個封閉的路徑大小的表面,然后用solidpattern填充它(填充規則對於一個簡單的矩形無關緊要),使用上下文paint()方法會更容易填充當前剪輯區域(最初設置為整個曲面)。 在繪制地圖/海岸線邊界並填充它們之前執行此操作非常重要,這樣它們才能在背景之上。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.