2012-01-18 17 views
8

मैं बाहरी पुस्तकालय की तलाश में हूं (या ऐप्पल फ्रेमवर्क का उपयोग करने वाली विधि जो गुणवत्ता को नष्ट नहीं करती है) जो मुझे छवियों को स्केल करने देगी।UIImage गुणवत्ता के नुकसान के बिना आकार

मैंने इस 'सरल-छवि-प्रसंस्करण-पुस्तकालय' की कोशिश की है, लेकिन यह केवल काले और सफेद के लिए काम करता है - मुझे नहीं पता कि यह रंगीन छवियों के लिए कैसे काम करे। (http://code.google.com/p/simple-iphone-image-processing/)

मैं मुख्य ग्राफ़िक्स, UIKit, "ट्रेवर" (http://vocaro.com/trevor/blog/2009/10/12/resize-a-uiimage-the-right-way/) विधि की कोशिश की है - जो बेहद अस्पष्ट चित्र बनाता है और वास्तव में मुझे लगता है मैं और क्या कर सकते हैं पता नहीं है - मैं अपने एप्लिकेशन प्रोग्रामिंग जारी नहीं रख सकते कम से कम आधा सभ्य छवि स्केलिंग काम करने के बिना। मुझे लगता है कि सभ्य परिणाम प्राप्त करने के लिए इंटरपोलेशन की आवश्यकता है।

आईओएस में हालिया प्रगति को देखते हुए, मुझे उम्मीद है कि कोई मेरी मदद कर सकता है। यह कोई समस्या नहीं है जो केवल मेरे पास है, बहुत से अन्य लोगों को एक ही समस्या है, इसलिए यदि कोई इसे यहां हल कर सकता है, तो मुझे यकीन है कि अगर बहुत व्यापक दर्शकों द्वारा सराहना की जाएगी!

आपको बहुत बहुत धन्यवाद

+0

क्या आप वर्णन कर सकते हैं कि आपने जिस तरीके से प्रयास किया है, उसके साथ आप क्या समस्याएं कर रहे हैं? क्या आप उपर्युक्त विधि से "बेहद धुंधली छवि" का एक उदाहरण पोस्ट कर सकते हैं ताकि हम आपको बता सकें कि आपकी मदद कैसे करें? – user1118321

+0

मुझे नहीं पता कि UIImage- श्रेणियां आपके लिए पर्याप्त गुणवत्ता प्रदान करती हैं या नहीं। मैं अपने ऐप्स में से एक में लाइब्रेरी का उपयोग कर रहा हूं और मुझे गुणवत्ता सभ्य मिलती है। विशेष रूप से माना जाता है कि साथ काम करना कितना आसान है। आप इसे आजमा सकते हैं। https://github.com/jchatard/UIImage-categories – simonbs

+0

कुछ स्क्रीनशॉट लें और हमें दिखाएं कि आपका क्या मतलब है – john

उत्तर

10

मेरे उत्तर:

ठीक है - कोई है जो वास्तव में मेरे सवाल का मूल रूप से तो जवाब बाद में उनके जवाब से हटाया, मैं सच में यकीन है कि क्यों नहीं कर रहा हूँ।

यहाँ तीन अलग अलग दृष्टिकोण हैं:

  • ट्रेवर की श्रेणी दृष्टिकोण का उपयोग करना - मुझे लगता है कि इस तीखेपन के संरक्षण के लिए भयानक है। जब आप जाली वाली रेखाओं को दिखने से रोकने की कोशिश कर रहे हैं तो यह अधिक उपयोगी होता है।
  • आईओएस 5 के कोर इमेज सपोर्ट और एफ़िनट्रांसफॉर्म फ़िल्टर का उपयोग करना - अधिक उन्नत CILanczosScaleTransform आईओएस में उपलब्ध नहीं है (जहां तक ​​मुझे पता है)। वास्तव में बहुत खराब परिणाम पैदा करता है।
  • एमजीआईमेज यूटिलिटीज श्रेणी का उपयोग करना - ऐसा लगता है कि यह स्केलिंग में उत्कृष्ट परिणाम प्रदान करता है। (https://github.com/mattgemmell/MGImageUtilities)

यहां चार छवियों का एक स्क्रीनशॉट है। इसे बढ़ाएं! : http://i.stack.imgur.com/M3DVE.jpg बाएं से>> दाएं: मूल, ट्रेवर, कोर छवि, एमजीआईयू।

enter image description here

यह अद्भुत है कि पर तस्वीर एकदम दाएं बाईं तरफ के चित्र से के बारे में सोलह गुना कम स्मृति उपयोग है। बहुत ज्यादा गुणवत्ता। एक छोटी सी स्क्रीन पर - हमेशा बड़ी छवियों का आकार बदलें!

+0

एमजीआईमेज यूटिलिटीज परिणाम बहुत अच्छा दिखता है। इसका उपयोग क्यों नहीं करें? – vocaro

+0

हाँ यह बहुत अच्छा है, अब मैं इसका उपयोग कर रहा हूं! ट्रेवर की लाइब्रेरी द्वारा प्राप्त परिणामों से – Vazzyb

+0

निश्चित रूप से बेहतर है, जिसका मैं उपयोग कर रहा था। धन्यवाद! –

संबंधित मुद्दे