2011-12-15 20 views
9

मैं मैं वास्तव में पसंद है एक ढाल है, लेकिन मैं एक्सएमएल drawable का उपयोग कर इसे बनाया:एक पीएनजी छवि फ़ाइल के रूप में एक एंड्रॉइड एक्सएमएल को सहेजने, निर्यात करने या परिवर्तित करने के लिए कैसे?

<gradient 
    android:startColor="#DD181C18" 
    android:endColor="#809C7D5A" 
    android:angle="90"/> 

क्या एक आसान तरीका एक png या कुछ इसी तरह करने के लिए इस बनाने के लिए हो सकता है?

क्या मैं सच की तलाश में हूँ है: एक उपकरण है जो कर सकते हैं और है कि उपकरण का उपयोग कर एक #aarrggbb प्रारूप के रूप में यह इनपुट अल्फा/रंग (90 डिग्री के कोण का उपयोग ढ़ाल बनाने के लिए निर्देश, सामान्य रूप में कोण, एक होगा प्लस)।

किसी भी मदद के लिए धन्यवाद।

संपादित करें: ओह! मैं पूरी तरह से महसूस किया ImageMagick ऐसा करने में सक्षम होना चाहिए। मैं उस कोड को पोस्ट करूंगा जो मेरा जवाब जल्द ही है, जब तक कि कोई मुझे इसे मारना न भूलें और पूरी बक्षीस प्राप्त करे!

+0

इसे खाली लेआउट में दिखाएं और ग्रहण सुविधा से छवि स्नैपशॉट का उपयोग करें या डिवाइस पर चलाएं और उच्च रेज छवि – ingsaurabh

+0

प्राप्त करने के लिए उसी प्रक्रिया का पालन करें, जब तक कि मुझे कुछ याद आ रहा है ... यह पारदर्शिता को भी सुरक्षित नहीं रखेगा। – TryTryAgain

+0

कोड पोस्ट करने के बारे में क्या? :) – bluszcz

उत्तर

3

अंत में यह ImageMagick का उपयोग कर एक लाइनर था!

मुझे विश्वास नहीं है कि मैंने पहले ImageMagick का उपयोग करने के बारे में नहीं सोचा था, डुह !!!

convert -size 480x84 gradient:'rgba(156, 125, 90, 0.52)'-'rgba(24, 28, 24, 0.86)' tmp.png 

संदर्भ के लिए, मैं अपने Android एक्सएमएल drawable ## AARRGGBB मानों का उपयोग कर एक .png छवि फ़ाइल बनाने के लिए इस का इस्तेमाल किया। ImageMagick एफटीडब्ल्यू !!!

सभी के इनपुट के लिए धन्यवाद।

3

फ़ोटोशॉप या पेंट जैसे प्रोग्राम का उपयोग करें। नेट - दोनों में ढाल उपकरण हैं और आपको रंगों को उसी प्रारूप में सेट करने देना चाहिए जैसा आपके पास है।

+0

मेरे पास केवल नि: शुल्क और ओएसएस और ओएस तक पहुंच है। मुझे जीआईएमपी के साथ इसे हासिल करने का कोई तरीका नहीं मिला है। फिर, ढाल समस्या नहीं है, बल्कि, ढाल के साथ पारदर्शिता को संरक्षित करना वह समस्या है जिसका सामना मैं कर रहा हूं। – TryTryAgain

+1

पेंट.Net निःशुल्क है और पारदर्शिता को बरकरार रखता है। – Boude

1

आप पृष्ठभूमि के रूप में ढाल के साथ एक गतिविधि भी बना सकते हैं, और स्क्रीन पर और कुछ भी नहीं।

एमुलेटर या डिवाइस पर ऐप चलाएं, और स्क्रीन कैप्चर करने के लिए डीडीएमएस का उपयोग करें। आपके पास सहेजने के लिए एक अच्छी तरह से प्रस्तुत पीएनजी होगा, और आप जिस भी आकार का उपयोग कर रहे हैं उसके स्क्रीन आकार को बदलकर आप जो भी आकार चाहते हैं उसे बना सकते हैं।

आपका एक्सएमएल ऐसा दिखाई दे सकता:

<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@drawable/your_gradient"> 
</LinearLayout> 
+0

सुझाव के लिए धन्यवाद @ बूगर, दुर्भाग्य से, यह पारदर्शिता को संरक्षित नहीं करेगा हालांकि। – TryTryAgain

1

इस आजमाएँ:

try { 
    item.setDrawingCacheEnabled(true); 
    Bitmap bmp = item.getDrawingCache(); 
    FileOutputStream out = new FileOutputStream(filename); 
    bmp.compress(Bitmap.CompressFormat.PNG, 90, out); 
} catch (Exception e) { 
    e.printStackTrace(); 
} 

यहाँ item देखें/दृश्य समूह है कि मैं प्रस्तुत करना चाहते हैं।

मैं वास्तव में स्क्रीन रेंडरिंग पर कुछ के लिए एक ही टुकड़े (फ़ाइल लिखने से कम) का उपयोग करता हूं और ऐसा लगता है कि पारदर्शिता को संरक्षित करता है।

नोट रंग के बारे में:

रंग एंड्रॉयड हेक्साडेसिमल मान का उपयोग करने में निर्दिष्ट किया जा सकता। पैटर्न ARGB (कुल 32 बिट्स) में प्रत्येक रंग मान के लिए एक बाइट (8 बिट्स) उपलब्ध हैं। AAlpha के लिए खड़ा है, RRed, GGreen और BBlue के लिए खड़ा है। प्रत्येक घटक में (0, 255) के बीच मान हो सकते हैं। ध्यान दें कि:

decimal 0 = hex 0x00 
decimal 255 = hex 0xFF 

तो अगर आप अपारदर्शी 'अल्फा (no transparency) you would use #FFFFFFFF . For Black # FF000000 . For Grey # FF808080 80` आप ग्रे मंझला देता है के साथ एक सफेद रंग चाहता था।

अपने दशमलव रंगों के मान प्राप्त करने के लिए हेक्साडेसिमल अंकगणित का उपयोग करें।

AFAIK, रेडियल ढाल के लिए कोण को कोई फर्क नहीं पड़ता है। जीआईएमपी में यह सब कोशिश करें या जीआईएमपी ट्यूटोरियल पढ़ें।यदि आप कर सकते हैं तो बेहतर फ़ोटोशॉप का उपयोग करें (90 दिन परीक्षण संस्करण उपलब्ध हैं)।

+0

बीटीडब्ल्यू क्या आप निश्चित हैं कि जिंप पारदर्शिता के साथ ग्रेडियेंट को बचा नहीं सकता है? Http://docs.gimp.org/en/gimp-concepts-gradients.html पर एक त्वरित नज़र से पता चलता है कि सृजन संभव है। एक प्राकृतिक परिणाम के रूप में बचाता है। –

+0

धन्यवाद, मैं काफी ताजा हूं और मुझे नहीं पता कि उस कोड के साथ मेरी एक्सएमएल फ़ाइल से .png फ़ाइल बनाने के लिए क्या करना है। जिंप पूरी तरह से पारदर्शिता के साथ एक ढाल बचा सकता है। मुझे नहीं पता कि डीडी और 80 ग्रेडियेंट एए (अल्फा) के प्रतिशत के बराबर और 90 डिग्री कोण को कैसे शामिल किया जाए। – TryTryAgain

+0

मुझे डर है कि यहां कोई शॉर्टकट नहीं है। आपको कुछ पढ़ना चाहिए। यहां रंगों के लिए एक छोटा और प्यारा प्राइमर है: http://www.w3schools.com/html/html_colors.asp –

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

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