2012-12-13 144 views
2

我有幾個關於向UIimage添加邊框的問題:向UIimage添加邊框

1)是否有將動態邊框添加到uiimageview的圖像?我試圖通過使用[layer setBorderColor:[UIColor whiteColor].CGColor];來添加邊框。但邊框僅顯示在uiimageview(一個正方形或矩形)的框架周圍。我的所有圖像都有粗黑的輪廓和自定義形狀(比如hellokitty),我想在輪廓周圍添加邊框。這是可能的嗎?

(我也嘗試添加圖像周圍的影子,但結果卻是太模糊了,反正讓他們實?我認爲是另一種方式來解決我的問題)

2)另外,如果我可以畫一個自定義的形狀邊框來粘貼圖像,是否可以在邊框內填充顏色??因爲我的一些圖像沒有填充顏色,任何想法??

在此先感謝。

回答

0

如果您的圖像是透明的隨機的形狀(即圖像的輪廓是凱蒂貓的形狀),那麼我會接近這個由...

首先,這裏忽略的UIImageView。 Prob更容易創建一個自定義的UIView子類。

在您看來的的drawRect ......

- (void)drawRect:(CGRect)rect 
{ 
    // calculate the rect of the image (aspect ratio etc...) so that it fits in the rect. 
    // see this link https://stackoverflow.com/questions/7645454/resize-uiimage-by-keeping-aspect-ratio-and-width 

    // change the colour of the image to black (or the border colour you want). 
    // see this link http://coffeeshopped.com/2010/09/iphone-how-to-dynamically-color-a-uiimage 

    // draw the black image in the rect you calculated 

    // make a new rect that is smaller by in x and y than the one for the black image. 
    // You can change it by different amounts to change the border size 

    // draw the colour image in the new rect 
} 

每一步都需要相當多的代碼,所以我只把鏈接和建議,但這是,如果我想我會做什麼做你正在做的事情。

鏈接1 - Resize UIImage by keeping Aspect ratio and width

鏈接2 - http://coffeeshopped.com/2010/09/iphone-how-to-dynamically-color-a-uiimage

+0

感謝您的回覆,我Quatz2D的初學者,我會問我的想法是好還是不好: – user1901664

+0

忘記上述評論。謝謝對於你的回覆,我是Quatz2D的初學者,作爲你提供的link1,uiimage可以調用drawRect:爲了在給定矩形(區域)內重繪整個圖像,是否可以重寫圖像的drawRect函數然後修改筆畫寬度? – user1901664