नए iPhone 6 और 6+ के लिए छवि रिज़ॉल्यूशन, @ 3x समर्थन जोड़ा गया?


141

मैंने कुछ लेखों और चर्चा की तरह यहाँ और यहाँ चित्र संकल्पों के बारे में देखा है कि नए आईफ़ोन प्रदर्शन के लिए @ 3x छवियों का उपयोग करेंगे। क्या यह सच है?

तो क्या इसका मतलब है कि हमें तीन चित्र रखने होंगे? उदाहरण के लिए कहो कि मेरे पास 50 एक्स 50 की छवि है, क्या मुझे नए आईफ़ोन के लिए लुक को अनुकूलित करने के लिए 3 चित्र रखने होंगे?

  • सामान्य (50 X 50)
  • @ 2x - रेटिना (100 X 100)
  • @ 3x - रेटिना एचडी (150 X 150)

या नए फोन @ 2x छवियों का उपयोग करेंगे और @ 3x जैसा कुछ भी नहीं है?

मैंने एक नमूना परियोजना बनाकर परीक्षण किया है और सभी सिमुलेटर @ 3x छवियों का उपयोग करते हैं, यह भ्रामक है।

संपादित करें

यहाँ कुछ और जानकारी है

  • 3GS (163 पीपीआई तो सामान्य उपयोग करें)
  • 4, 4, 5 और 5s (326 पीपीआई तो हम @ 2x का उपयोग करते हैं)
  • 6 (326 पीपीआई तो ऐसा लगता है कि यह @ 2x का उपयोग करेगा)
  • 6 प्लस (401 पीपीआई यहां भ्रम की स्थिति है)

संपादित करें

Tsob और नाइटिन द्वारा दिए गए उत्तरों के आधार पर, मैंने अपने प्रोजेक्ट में @ 3x छवियां जोड़ीं।

सूचनात्मक संपादन

मुझे लगता है कि कुछ उपयोगकर्ताओं को भ्रम है कि iPhone 6 @ 2x छवियों का उपयोग क्यों करता है, भले ही इसका उच्च रिज़ॉल्यूशन हो, इसका कारण है

iPhone 6 में अलग-अलग रिज़ॉल्यूशन हो सकता है लेकिन प्रति पिक्सेल इंच (PPI) का घनत्व समान है

  • रिज़ॉल्यूशन पिक्सेल की पूर्ण संख्या की चिंता करता है।
  • घनत्व (उर्फ पिक्सेल प्रति इंच - पीपीआई) प्रति इंच पिक्सेल की एक सापेक्ष संख्या की चिंता करता है जो आईफोन 6 और पिछले आईफ़ोन के मामले में समान है, लेकिन आईफोन 6 प्लस में अलग है।

इसके बारे में और अधिक इस धागे में यहाँ देखें

इसलिए iPhone 6 @ 2x छवि का उपयोग iPhones 4, 5 और 5S के समान करता है क्योंकि इसमें समान PPI और iPhone 6 प्लस @ 3x का उपयोग करता है।


फिर रेटिना 4 2x का उपयोग क्या है, अगर कोई भी उपकरण इसका उपयोग नहीं कर रहा है?
मृणाल

1
मैं मानता हूं कि घनत्व 4, 5 और 6 iPhones के लिए समान है, लेकिन विभिन्न रिज़ॉल्यूशन समस्या को हल करने के लिए कैसे? तो यह बड़ा अंतर है 640x960 और 750 × 1334 पिक्सेल। अगर मुझे पूरी स्क्रीन को ओवरले करने वाली पृष्ठभूमि छवि का उपयोग करने की आवश्यकता है। मैं इस मामले में छवि xcassets कैसे सेट कर सकता हूं?
मटरू अलेक्जेंडर

@MatrosovAlexander आपने इसे कैसे हल किया?
मेरियो कार्वाल्हो

वर्कअराउंड के रूप में मैंने @ 2x छवि के लिए iphone 6 छवि का उपयोग किया, लेकिन यह अभिनीत है कि इसके लिए xcode की उपयुक्त छवि नहीं है
Matrosov Alexander

जवाबों:


54

मैंने मानक, @ 2x और @ 3x छवियों का उपयोग करने के लिए एक नमूना परियोजना में कोशिश की है, और iPhone 6+ सिम्युलेटर @ 3x छवि का उपयोग करता है। तो ऐसा लगता है कि वहाँ @ 3x छवियों किया जाना है (अगर सिम्युलेटर वास्तव में डिवाइस के व्यवहार की नकल करता है)। लेकिन अजीब बात यह है कि सभी डिवाइस (सिमुलेटर) इस @ 3x छवि का उपयोग तब करते हैं जब यह परियोजना संरचना, आईफोन 4 एस / 3 जीबी पर भी उपयोग किया जाता है।
संभावित @ 3x संरचना पर Apple से संचार की कमी, जबकि वे डेवलपर्स से अपने iOS8 ऐप प्रकाशित करने के लिए कहते हैं, विशेष रूप से सिम्युलेटर पर उन परिणामों को देखते हुए काफी भ्रमित हैं।

** Apple की वेबसाइट से संपादित **: यह भी Apple के डेवलपर स्थान पर "iOS 8 पर नया क्या है" अनुभाग में पाया गया:

नई स्क्रीन स्केल के लिए समर्थन आईफोन 6 प्लस 3.0 के स्क्रीन स्केल के साथ एक नया रेटिना एचडी डिस्प्ले का उपयोग करता है। इन उपकरणों पर सर्वोत्तम संभव अनुभव प्रदान करने के लिए, इस स्क्रीन स्केल के लिए डिज़ाइन की गई नई कलाकृति शामिल करें। Xcode 6 में, परिसंपत्ति कैटलॉग में 1x, 2x और 3x आकार की छवियां शामिल हो सकती हैं; बस नई छवि संपत्ति जोड़ें और आईफोन 6 प्लस पर चलने पर आईओएस सही संपत्ति का चयन करेगा। IOS में छवि लोड करने का व्यवहार @ 3x प्रत्यय को भी पहचानता है।

अभी भी समझ में नहीं आ रहा है कि सभी डिवाइस @ 3x लोड क्यों करते हैं। शायद यह इसलिए है क्योंकि मैं नियमित फ़ाइलों का उपयोग कर रहा हूं न कि xcassets का? जल्द ही कोशिश करेंगे।

आगे के परीक्षण के बाद संपादित करें: ठीक है, ऐसा लगता है कि iOS8 में इस पर बात हुई है। IOS 7.1 iPhone 5 सिम्युलेटर पर परीक्षण करते समय, यह @ 2x छवि का सही उपयोग करता है। लेकिन जब iOS 8 पर समान लॉन्च किया जाता है तो यह iPhone 5 पर @ 3x का उपयोग करता है। यकीन नहीं होता कि यह एक वांछित व्यवहार है या iOS8 GM में गलती / बग या Xcode 6 में सिमुलेटर हालांकि।


2
हां, मैंने सिम्युलेटर के साथ परीक्षण किया, सभी डिवाइस @ 3x छवियां लेते हैं, वास्तव में भ्रमित करते हैं
Bhumit Mehta

इसलिए निष्कर्ष रूप में, आज तक का सबसे अच्छा संभव तरीका छवि नामों में "@ 2x" का उपयोग करना होगा, लेकिन किसी तरह 6 प्लस के लिए डिवाइस-चेकिंग और "@ 3x" के बिना एक 3x छवि का उपयोग करना ताकि 2x उपकरणों को जहर न दें?
डार्कहार्टफ़ेल्ट

ऐसा लगता है कि iPhone 6 पर 3x पसंद केवल तभी होती है जब प्रश्न में संपत्ति PNG के बजाय JPG होती है।
13

102

अपडेट करें:

ऐप्पल द्वारा आइकन छवि आकार के लिए नया लिंक।

https://developer.apple.com/ios/human-interface-guidelines/graphics/image-size-and-resolution/

यहां छवि विवरण दर्ज करें


हां यह सच है यहां यह है कि Apple आइकन या छवि आकार के बारे में आधिकारिक दस्तावेज प्रदान करता है

यहां छवि विवरण दर्ज करें

आपको सेट करना होगा iPhone6 ​​और iPhone6 ​​+ के लिए चित्र करने होंगे

IPhone 6 के लिए:

750 x 1334 (@2x) for portrait

1334 x 750 (@2x) for landscape

IPhone 6 प्लस के लिए:

1242 x 2208 (@3x) for portrait

2208 x 1242 (@3x) for landscape

Images के बारे में अधिक जानकारी के लिए और यह संकल्प है यह सबसे अच्छा कभी सहायक पोस्ट है

नियंत्रणों के लिए चित्र आकार सेट करने के लिए आप 1x @ 2x और @ 3x निम्न प्रकार सेट कर सकते हैं:

यहां छवि विवरण दर्ज करें


8
यदि सभी डिवाइस रेटिना 2x या 3x हैं, तो संपत्ति सूची केवल iOS 7/8 पर iPhone के लिए लक्ष्यीकरण के लिए परियोजनाओं पर 1x चित्र क्यों मांगती है? मतलब नहीं है।
डक

1
हो सकता है कि iphone4 के लिए @RubberDuck :) देखें कि ipad 2 और iPad Mini जिसकी जरूरत 1x है
नितिन गोहेल

क्षमा करें, लेकिन आपने वह नहीं पढ़ा जो मैंने लिखा था। मैं आईओएस 7 के लिए केवल एक आईफोन प्रोजेक्ट के बारे में बात कर रहा हूं। 1x वाला कोई आईफोन नहीं है जो आईओएस 7 चला सकता है लेकिन संपत्ति सूची अभी भी इसके लिए पूछती है।
बत्तख

@RubberDuck अपनी छवि संपत्ति का चयन करें और फिर Xcode के दाईं ओर उपयोगिताओं के फलक को देखें। टैब में से एक में चेकबॉक्स का एक सेट है। शायद आपकी संपत्ति (ओं) में बहुत सारे चेकबॉक्स चुने गए हैं जिसके परिणामस्वरूप 1x एक विकल्प के रूप में प्रदर्शित होता है।
रामादेवी


10

मैंने एक नमूना परियोजना बनाकर परीक्षण किया है और सभी सिमुलेटर @ 3x छवियों का उपयोग करते हैं, यह भ्रामक है।

अपनी संपत्ति कैटलॉग में एक छवि के विभिन्न संस्करण बनाएं जैसे कि छवि आपको स्वयं बताती है कि वह कौन सा संस्करण है:

यहां छवि विवरण दर्ज करें

अब बारी में प्रत्येक सिम्युलेटर पर एप्लिकेशन चलाएं। आप देखेंगे कि 3x छवि का उपयोग केवल iPhone 6 प्लस पर किया जाता है।

यदि उनके नाम (जैसे one.png , one@2x.png , और one@3x.png ) का उपयोग करके छवियों को ऐप बंडल से निकाला जाता है, तो यह बात सही है।imageNamed: और एक छवि दृश्य में निर्दिष्ट जाता है।

(हालांकि, यदि आप इंटरफ़ेस बिल्डर में छवि को छवि को असाइन करते हैं तो एक अंतर है - 2x संस्करण को रिज़ॉल्यूशन-रिज़ॉल्यूशन डिवाइसों पर ध्यान नहीं दिया जाता है। यह संभवतः एक बग है, जाहिर तौर पर एक बग है pathForResource:ofType:।)


1
आपने संपत्ति को "सार्वभौमिक" के रूप में चिह्नित किया है, इसलिए आप लगातार व्यवहार क्यों देखते हैं। इसके बजाय ड्रॉप-डाउन मेनू में "डिवाइस विशिष्ट" चुनने का प्रयास करें!
निकोले स्पैसोव

1
@RalphZhouYuan अब यह मेरे लिए ठीक काम करता है। आप 2x संस्करण को सूचीबद्ध नहीं देखेंगे , लेकिन केवल 1x संस्करण असाइन करें और 2x या 3x संस्करण का सही उपयोग किया जाएगा। या, बस एक संपत्ति सूची का उपयोग करें।
मैट

1
@RalphZhouYuan यहां मेरा डाउनलोड करने योग्य उदाहरण है: github.com/mattneub/Programming-iOS-Book-Examples/tree/master/… - यह ऐप बंडल में छवि फ़ाइलों और एसेट कैटलॉग में छवि फ़ाइलों का उपयोग करके दोनों को प्रदर्शित करता है और वे सभी सही ढंग से काम करते हैं।
मैट

3
@ मैं अंत में पाता हूं कि मेरा मुद्दा मेरे ऐप की परिनियोजन लक्ष्य सेटिंग्स (6.0) से संबंधित है। मैंने एक प्रश्न खोला: stackoverflow.com/questions/26333278/… और Apple को एक बग रिपोर्ट निकाल दी।
अनिश्चय

1
@RalphZhouYuan वाह, महान जासूसी काम ट्रैकिंग कि नीचे! वापस रिपोर्टिंग के लिए धन्यवाद।
मैट

2

ios हमेशा सर्वश्रेष्ठ छवि लेने की कोशिश करेगा, लेकिन अन्य विकल्पों में वापस आ जाएगा .. इसलिए यदि आपके पास ऐप में केवल सामान्य छवियां हैं और इसे @ 2x छवियों की आवश्यकता है तो यह सामान्य छवियों का उपयोग करेगा।

यदि आप प्रोजेक्ट में केवल @ 2x डालते हैं और आप एक सामान्य डिवाइस पर ऐप खोलते हैं तो यह चित्रों को प्रदर्शित करने के लिए स्केल कर देगा।

यदि आप ios7 और ios8 उपकरणों को लक्षित करते हैं और सर्वोत्तम गुणवत्ता चाहते हैं, तो आपको फोन के लिए @ 2x और @ 3x की आवश्यकता होगी और ipad परिसंपत्तियों के लिए सामान्य और @ 2x को, क्योंकि कोई भी रेटिना फोन नहीं बचा है और @ 3x ipad नहीं है।

शायद वेक्टर ग्राफिक से ऐप में संपत्ति बनाना बेहतर है ... http://mattgemmell.com/use-pdf-images-in-ios-apps/ देखें


बस क्षुधा में वैक्टर के लिए अद्भुत पेंटकोड का उपयोग करें
Fattie
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.