Android फ़्रेमवर्क, 2D और 3D ग्राफ़िक रेंडर करने के लिए कई एपीआई उपलब्ध कराता है. ये एपीआई, ग्राफ़िक ड्राइवर के मैन्युफ़ैक्चरर के लागू किए गए वर्शन के साथ इंटरैक्ट करते हैं. इसलिए, यह समझना ज़रूरी है कि ये एपीआई, हाई लेवल पर कैसे काम करते हैं. इस पेज पर, ग्राफ़िक हार्डवेयर ऐब्स्ट्रैक्शन लेयर (एचएएल) के बारे में बताया गया है. ये ड्राइवर, इसी लेयर पर बने होते हैं. इस सेक्शन को पढ़ने से पहले, इन शब्दों के बारे में जान लें:
Canvas (एपीआई एलिमेंट)Surface ऑब्जेक्ट के मुकाबले होती है. Canvas क्लास में, बिटमैप, लाइन, सर्कल, रेक्टैंगल, टेक्स्ट वगैरह को कंप्यूटर पर ड्रॉ करने के स्टैंडर्ड तरीके मौजूद होते हैं. यह क्लास, बिटमैप या सरफेस से जुड़ी होती है. कैनवस, स्क्रीन पर 2D ऑब्जेक्ट ड्रॉ करने का सबसे आसान तरीका है. बेसिक क्लास, Canvas है.
android.graphics.drawable.
ड्रॉएबल और अन्य रिसॉर्स के बारे में ज़्यादा जानने के लिए, ऐप्लिकेशन के रिसॉर्स की खास जानकारी देखें.
android.opengl
` और `javax.microedition.khronos.opengles
` पैकेज, OpenGL ES की सुविधाएं उपलब्ध कराते हैं.Surface (एपीआई एलिमेंट)Surface ऑब्जेक्ट का साइज़ बदलने के लिए, कई हेल्पर तरीके उपलब्ध होते हैं.
SurfaceView
क्लास के बजाय, सीधे
Surface क्लास का इस्तेमाल करें.
SurfaceView (एपीआई एलिमेंट)View ऑब्जेक्ट होता है. यह ड्रॉ करने के लिए,
Surface ऑब्जेक्ट को रैप करता है. साथ ही, इसका साइज़ और फ़ॉर्मैट
डाइनैमिक तरीके से तय करने के लिए, तरीके उपलब्ध कराता है. सरफ़ेस व्यू, रिसॉर्स-इंटेंसिव कार्रवाइयों के लिए, यूज़र इंटरफ़ेस (यूआई) थ्रेड से अलग ड्रॉ करने का तरीका उपलब्ध कराता है.
जैसे, गेम या कैमरे के प्रीव्यू. हालांकि, इसके लिए ज़्यादा मेमोरी का इस्तेमाल किया जाता है.
सरफ़ेस व्यू, कैनवस और OpenGL ES
ग्राफ़िक, दोनों को सपोर्ट करता है. SurfaceView ऑब्जेक्ट के लिए, बेसिक क्लास
SurfaceView है.