मैं जो करना चाहता हूं, वह मेरे चयन की स्थिति में स्क्रीन पर एक छवि का कटआउट खींचता है।स्क्रीन पर छवि का हिस्सा बनाएं (सभी को स्मृति में लोड किए बिना)
मैं इसे आसानी से बिटमैप में लोड कर सकता हूं। और उसके बाद एक उपधारा खींचें।
लेकिन जब छवि बड़ी है, तो यह स्पष्ट रूप से स्मृति को समाप्त कर देगा।
मेरी स्क्रीन एक सतहदृश्य है। तो एक कैनवास इत्यादि है
तो मैं किसी दिए गए ऑफ़सेट पर, छवि का हिस्सा कैसे आकर्षित कर सकता हूं और आकार बदल सकता हूं। उत्पत्ति को स्मृति के बिना लोड करने के बिना
मुझे एक उत्तर मिला जो सही रेखाओं के साथ देखा गया था, लेकिन यह ठीक से काम नहीं करता है। फ़ाइल से drawables के उपयोग के साथ। नीचे कोड प्रयास। यादृच्छिक आकार के अलावा यह उत्पादन करता है, यह अधूरा भी है।
उदाहरण:
Drawable img = Drawable.createFromPath(Files.SDCARD + image.rasterName);
int drawWidth = (int) (image.GetOSXWidth()/(maxX - minX)) * m_canvas.getWidth();
int drawHeight = (int)(image.GetOSYHeight()/(maxY - minY)) * m_canvas.getHeight();
// Calculate what part of image I need...
img.setBounds(0, 0, drawWidth, drawHeight);
// apply canvas matrix to move before draw...?
img.draw(m_canvas);
'बिटमैपरेगियन डिकोडर 'पर एक नज़र डालें। सोचो कि यह वही करता है जो आप खोज रहे हैं। – bobnoble
@bobnoble धन्यवाद javadocs के माध्यम से देख रहा है, ऐसा लगता है कि यह चाल करेगा। और उपयोग करने के लिए काफी आगे है। – Doomsknight
इसे उत्तर के रूप में लिखें @bobnoble - यह उपयोगी है और दूसरों के लिए जारी रहेगा। – Elemental