[問題] 圖片裁切功能

看板MacDev作者 (小孩)時間12年前 (2013/06/13 14:46), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串1/1
iOS的相簿裁切功能,在選取範圍時, 選取的範圍是亮的,被裁掉的部分是暗的。 想請問這個功能是怎麼做的? 參閱此範例:http://i-software-developers.com/?s=crop 可以做出要裁切部分是暗的,其他地方是亮的。(選取範圍view的alpha設為0.7) 需要做什麼樣的修改,可以最簡單反轉選取的地方是亮的? 個人想法: 1. 上下左右增加view為不透明,裁切view設為透明。 移動時,一起調整全部view的大小與位置 (有其他更方便的方法嗎?) 2. 增加一個完全蓋住圖片的view為不透明,裁切view為透明。 想辦法讓背景view可以設某個rect為透明。 (不曉得怎麼設特定區域的alpha) -- 目前目標: 選取一張圖片, 可將該圖片旋轉, 可裁切特定比例的範圍, 此範圍可以放大縮小。 未完成項目: 選取範圍為亮,其他為暗。(目前選取範圍為半透明灰色,其他為亮) -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.251.136.103

06/13 15:07, , 1F
Layer的層級有一個setMask的功能 搭配透明圖片應該可以
06/13 15:07, 1F
剛參考google後,做了下列處理。 1. 增加一個View,大小等同ImageView,背景設為灰色,alpha=0.5。 2. 增加下列code,使用layer setMask CALayer *mask =[CALayer layer]; mask.contents = (id)[UIImage imageNamed:@"透明背景"].CGImage; mask.frame = CGRectMake(top, left, width, height); [BackGroundView.layer setMask:mask]; 得到的結果是View在指定區域有圖片,其他地方是透明的,設定的灰色背景失去作用。 我需要再做什麼處理才能把灰色的半透明背景保留下來? 還是我使用這個layer的想法錯了? ※ 編輯: Elfiend 來自: 60.251.136.103 (06/13 16:35)
文章代碼(AID): #1HkMhHWR (MacDev)
文章代碼(AID): #1HkMhHWR (MacDev)