2016-02-27 50 views
-1

的頂部渲染的CALayer我合併一些的UIImage的一個「基地的UIImage」的頂部。這是減速的方式。所以我想可能使用CALayer可能會加快速度。我找不到它的方向。上的UIImage

我當前的代碼: 有caluclations(變換,大小,產地),我have't添加

UIGraphicsBeginImageContextWithOptions(videoSize, true, UIScreen.mainScreen().scale) 

for image in images 
{ 
image!.drawInRect(areaSize) 
    image.drawInRect(CGRectMake(xp, yp ,sizeImg.width , sizeImg.height)) 
    } 
output = UIGraphicsGetImageFromCurrentImageContext() 

      UIGraphicsEndImageContext() 

如何重現此使用的CALayer(與內容等任何建議/方向」 )。多謝你們!

更新:

實例添加(用戶選擇變換,尺寸,產地,小規模比他點擊保存,我需要在「實像」規模重繪此。)

enter image description here

+0

看一看到核心映像或GPUImage。 – vikingosegundo

+0

@vikingosegundo GPUImage是偉大的,我寧願不要在我目前的應用程序中使用它。你介意精心製作/專注於Core Image的方向嗎? –

回答

0

是的,你確實可以使用圖層來做到這一點。您可以加載圖像,創建一個新的CALayer,並將圖像的CGImage安裝爲圖層的內容。然後,您將該圖層添加爲視圖的子圖層。

你怎麼想您的圖像結合?只需在舊圖上繪製新圖像,以便通過「透明位」顯示底部圖像?

+0

嘿鄧肯,當你回答這樣的問題時總是感到安全!哈哈,我會更新一個「應用場景」圖片。基本上是的。我有一個基本的UIImage(預覽),用戶可以添加幾個「貼紙」,當他點擊保存時,我需要創建相同的預覽,他只能看到「實際大小的圖像」,所以我轉換尺寸,從「預覽」出發,轉換成「真實圖像」尺寸比例。我所剩下的就是儘可能快地完成這個過程。我的方法產生非常緩慢的結果。你介意拿一些代碼嗎?所以我可以讓你更好? (斯威夫特,如果可能的話。謝謝! –

+0

嘿鄧肯增加視覺例如 –

+0

我會做這個有圖像視圖和平移手勢識別。如果你做「貼」上的圖像非不透明,使用阿爾法圖像它應該只是工作。 –