2011-08-26 7 views
6

मैं एसवीजी (स्केलेबल वेक्टर ग्राफिक्स) को एंड्रॉइड में रनटाइम पर बिटमैप में कैसे परिवर्तित कर सकता हूं?एंड्रॉइड में रनटाइम रूपांतरण पर बिटमैप के लिए एसवीजी

कृपया यदि संभव हो तो मुझे कोड या सटीक लिंक का सटीक हिस्सा प्रदान करें। मैं एंड्रॉइड एप्लिकेशन विकास के लिए काफी नया हूँ।

उत्तर

-1

क्या आप इसे मूल एंड्रॉइड ऐप में करने की कोशिश कर रहे हैं? या जावास्क्रिप्ट का उपयोग कर एंड्रॉइड ब्राउज़र में?

यदि आप बाद के शिविर में हैं, तो आप जावास्क्रिप्ट का उपयोग एसवीजी को पार्स करने के लिए कर सकते हैं और परिणामों को एचटीएमएल 5 कैनवास तत्व (जो बिटमैप सतह है) में प्रस्तुत कर सकते हैं।

एक बार जब आप कैनवास को एसवीजी रेंडर करने के लिए इन पुस्तकालयों का उपयोग, आप आगे से एक स्थिर छवि फ़ाइल हड़पने सकता है: वहाँ दो पुस्तकालयों मदद कर सकते हैं कि आप ऐसा कर रहे हैं कैनवास। उस दूसरे चरण पर अधिक जानकारी के लिए Refer to this Stack Overflow thread

+0

वह किसी वेब ब्राउज़र के बारे में कुछ नहीं कहता है, आपकी पोस्ट अप्रासंगिक है – animaonline

8

svg-android ट्यूटोरियल का पालन करें PictureDrawable को अपनी एसवीजी फ़ाइल से प्राप्त करने के लिए। फिर आपको PictureDrawable के आकार से Bitmap बनाने की आवश्यकता है और इसे Canvas पर दें। जब Canvas अब PictureDrawable से Picture खींचता है, तो आपको वर्तमान बिटमैप को रनटाइम पर खींचा जाता है (बनाया गया)।

PictureDrawable pictureDrawable = svg.createPictureDrawable(); 
Bitmap bitmap = Bitmap.createBitmap(pictureDrawable.getIntrinsicWidth(), pictureDrawable.getIntrinsicHeight(), Config.ARGB_8888); 
Canvas canvas = new Canvas(bitmap); 
canvas.drawPicture(pictureDrawable.getPicture()); 
currentBitmap = bitmap;