2012-05-18 11 views
13

प्रदान की गई यूटिलिटी खराब दिखती है, उदाहरण के लिए यह "सेव एज़" करने की अनुमति नहीं देती है, या समान स्लाइसिंग के साथ कई बटन स्टेटस खींचने की अनुमति नहीं देती है।फ़ोटोशॉप में 9 पैच कैसे बनाएं? 9.png एन्कोडिंग क्या है?

क्या फ़ोटोशॉप में 9.png आकर्षित करना संभव है? मैंने देखा, जेनरेट किए गए पीएनजी में बाहरी किनारे में काले पिक्सल हैं। क्या यह स्लाइस को चिह्नित कर रहा है?

क्या होगा अगर काले पिक्सल दो विपरीत किनारों में मौजूद हों, यह कैसे काम करता है?

एंड्रॉइड पर प्रदर्शित होने पर बाहरी किनारों काट दिया जाता है?

उत्तर

45

हाँ, मैं फ़ोटोशॉप में अपने सभी नौ पैच करता हूं। यहाँ एक 9-पैच बनाने के लिए बुनियादी नियम हैं:

  1. बाहरी 1px मार्जिन केवल 100% काला शामिल कर सकते हैं (आरजीबी 0, 0, 0) या पूरी तरह से पारदर्शी।

  2. शीर्ष मार्जिन और बाएं मार्जिन के लिए काले पिक्सेल खिंचाव बिंदु परिभाषित करते हैं, और या तो एक ठोस रेखा, एक बिंदु या दो अलग-अलग बिंदु होना चाहिए। यदि दो बिंदु परिभाषित किए गए हैं, तो यह दोनों के बीच समान रूप से फैला होगा।

  3. नीचे मार्जिन और दाएं मार्जिन के लिए काले पिक्सल सामग्री क्षेत्र को परिभाषित करते हैं। ये पिक्सेल एक संगत रेखा होनी चाहिए।

  4. सहेजते समय, .9.png एक्सटेंशन को जोड़ना सुनिश्चित करें।

उम्मीद है कि इससे मदद मिलती है। :)

संपादित करें: और हाँ, आपके लेआउट में उपयोग किए जाने पर उन्हें प्रदर्शित नहीं किया जाएगा, बशर्ते यह उचित रूप से स्वरूपित हो और आपने इसे .9.png के रूप में सहेजा है।

enter image description here

enter image description here

ठीक है, तो शीर्ष एक स्पिनर के लिए एक सरल नौ पैच होगा। दूसरी छवि में रेखाएं नीचे और नीचे दिखाती हैं कि पिक्सेल की पंक्तियों/स्तंभों को डुप्लिकेट किया जाएगा। दूसरी छवि में नीला आयत उस क्षेत्र को दिखाता है जिसमें एंड्रॉइड सामग्री को रखने की अनुमति देगा। तो पाठ, उदाहरण के लिए, बस इस आयताकार के अंदर रहने के लिए लपेट जाएगा।

+0

और खिंचाव क्षेत्र और सामग्री क्षेत्र के बीच क्या अंतर है? मुझे लगता है कि 9 पैच में 3x3 = 9 स्लाइस होते हैं जहां केंद्रीय सामग्री सामग्री और खींचने के लिए होती है, 4 किनारें 2 लंबवत और 2 क्षैतिज रूप से फैली होती हैं, और 4 कोनों को ठीक किया जाता है। तो, केवल केंद्रीय स्लाइस को परिभाषित किया जाना चाहिए, इसलिए केवल दो ब्लैक लाइन पर्याप्त हैं। अन्य दो क्या हैं? –

+0

खिंचाव क्षेत्र निर्धारित करता है कि कौन सी पंक्तियां और कॉलम दोहराए जाएंगे। यही है, यदि आप शीर्ष कॉलम में से किसी एक पर पिक्सेल चुनते हैं, तो यदि नौ पैच को व्यापक बनाया जाना चाहिए, तो यह केवल उस कॉलम का विस्तार करेगा (पिक्सेल के कॉलम को डुप्लिकेट करें) और इसके आस-पास के दोनों पक्षों को फैलाएं। पंक्तियों के साथ ही। सामग्री क्षेत्र - इसे पैडिंग को परिभाषित करने के रूप में सोचें। यदि आपके पास नौ पैच का हिस्सा है जिसमें सामग्री (टेक्स्ट, आमतौर पर) नहीं होनी चाहिए, तो आप उस क्षेत्र में पिक्सेल नहीं रखेंगे। मैं जल्द ही ग्राफिक उदाहरण डालने की कोशिश करूंगा। – kcoppock

+0

ऐसा लगता है कि मुझे यह मिला –

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