2013-05-16 61 views
-1

CGPathRef定義了一種不透明類型,它表示不可變的圖形路徑。 CGMutablePathRef定義了一個不透明的類型,表示一個可變的圖形路徑。向CGPath添加不透明度

但是,我們如何更改CGPath中的不透明度CoreGraphics? 它可以以百分比添加嗎?

+0

正如Maarten所說,您只需確保設置筆觸/填充顏色的alpha分量,就可以實現您尋找的不透明度降低。 – Rob

+1

路徑沒有顏色,不透明度或其他類似於其本身固有部分的屬性。這些東西是圖形狀態的一部分,它是上下文的一部分,當你繪製路徑時,你設置它們。 (是的,這與大多數矢量圖形應用程序不同,在這些應用程序中路徑具有自己的填充和/或筆觸顏色。) –

回答

2

它在UIKit和Core Graphics中被稱爲「alpha」。例如:

UIColor *color = [[UIColor alloc] initWithWhite:0.5f alpha:0.5f]; 
CGContextSetStrokeColor(context, color.CGColor); // Assuming you have a context. 
CGContextStrokePath(context); 
+1

請注意,在ARC下,代碼可能會崩潰,因爲沒有任何CGColor對象擁有第一行。 http://blog.bignerdranch.com/296-arc-gotcha-unexpectedly-short-lifetimes/ –

+0

謝謝,我修復了代碼。 – Maarten

+0

@PeterHosey謝謝你修復這樣一個令人尷尬的錯誤。 – Maarten