2012-01-18 14 views
8

Harici bir kitaplık (veya kaliteyi bozmayan Apple çerçevelerini kullanan bir yöntem) arıyorum.UIImage Kalite kaybı olmadan yeniden boyutlandırın

Bu 'basit görüntü işleme kitaplığını' denedim, ancak yalnızca siyah beyaz için işe yarıyor - Renkli görüntüler için nasıl çalışacağını bilmiyorum. (http://code.google.com/p/simple-iphone-image-processing/)

Ben Çekirdek Grafik, UIKit, "Trevor'la" (http://vocaro.com/trevor/blog/2009/10/12/resize-a-uiimage-the-right-way/) yöntemi denedi - ÇOK bulanık görüntüleri yapar ve gerçekten ben başka ne yapabilirim bilmiyorum - Uygulamamı programlama devam edemez En azından yarı-iyi görüntü ölçekleme çalışmadan. İyi sonuç almak için enterpolasyon gerektiğini düşünüyorum.

iOS'taki son gelişmeler göz önünde bulundurulduğunda, birisinin bana yardım edebileceğini umuyorum. Bu, sadece sahip olduğum bir problem değil, diğer birçok insan aynı soruna sahip gibi görünüyor, bu yüzden eğer birisi burada çözebilirse, çok geniş bir seyirci tarafından beğenilecek olsa eminim!

Çok teşekkür ederim

+0

Denediğiniz yöntemlerle yaşadığınız sorunları anlatabilir misiniz? Yukarıdaki yöntemden "EXTREMELY bulanık görüntü" örneği gönderirseniz size nasıl yardımcı olabileceğimizi söyleyebilir miyiz? – user1118321

+0

UIImage kategorilerinin sizin için yeterince yüksek kalitede olup olmadığını bilmiyorum. Kitaplığımı uygulamalardan birinde kullanıyorum ve kaliteyi buluyorum. Özellikle çalışmanın ne kadar kolay olduğu düşünülür. Bunu deneyebilirsin. https://github.com/jchatard/UIImage-categories – simonbs

+0

Bazı ekran görüntülerini alın ve ne demek istediğini bize göster – john

cevap

10

Yanıtım:

Tamam - aslında sonradan ben gerçekten neden emin değilim, onların cevabını kaldırıldı aslen sonra soruma cevap birisi.

Aşağıda üç farklı yaklaşım vardır: Trevor'un Kategori yaklaşımı kullanarak

  • - Bu keskinliğini korumak için korkunç olduğunu düşünüyorum. Tırtıklı çizgilerin görünmesini engellemeye çalışırken daha yararlıdır.
  • iOS5'in Core Image desteğini ve AffineTransform filtresini kullanarak, daha gelişmiş CILanczosScaleTransform iOS'ta mevcut değil (bildiğim kadarıyla). Aslında oldukça kötü sonuçlar üretir.
  • MGImageUtilities 'kategorisini kullanarak - bu, ölçeklemede mükemmel sonuçlar üretir. (https://github.com/mattgemmell/MGImageUtilities)

Dört resmin bir ekran görüntüsü. BÜYÜLEYİN! : http://i.stack.imgur.com/M3DVE.jpg Soldan Sağa: Orijinal, Trevor, Çekirdek Resim, MGIU.

enter image description here

Onun üzerine resim sağında soldaki resimde yaklaşık SIXTEEN kat daha az bellek kullanımı olduğunu şaşırtıcı. Hemen hemen aynı kalitede. Küçük bir ekranda - büyük resimleri her zaman yeniden boyutlandırın!

+0

MGImageUtilities sonucu oldukça iyi görünüyor. Neden bunu kullanmıyorsun? – vocaro

+0

Evet harika, şimdi kullanıyorum! – Vazzyb

+0

kesinlikle kullandığım Trevor'ın kütüphanesinden elde edilen sonuçlardan daha iyi. Teşekkürler! –