कस्टम रेंडरर बनाना शुरू करने से पहले, रेंडरर बनाने वाले अलग-अलग कॉम्पोनेंट के बारे में जानना ज़रूरी होता है. साथ ही, यह भी जानना ज़रूरी है कि ब्लॉक को पंक्तियों और एलिमेंट में कैसे बांटा जाता है.
रेंडरर के कॉम्पोनेंट
रेंडरर, कई अलग-अलग कॉम्पोनेंट से बना होता है. कोड को दोबारा इस्तेमाल करने और उसे इस्तेमाल करने की संख्या को बढ़ाने के लिए, हर कॉम्पोनेंट का अपना खास काम होता है.
रेंडर करने वाला
रेंडर एक फ़ैक्ट्री क्लास है, जो बाकी सभी कॉम्पोनेंट को एक साथ बंडल करती है.
लगातार सेवा देने वाली कंपनी
कॉन्सटेंट प्रोवाइडर, संख्याओं और आकारों का एक संग्रह है, जिसका इस्तेमाल दूसरे सभी कॉम्पोनेंट के साथ-साथ बिल्ट-इन फ़ील्ड में किया जाता है.
इमेज बनाने से जुड़ी जानकारी
रेंडर की जानकारी, यह तय करती है कि किसी ब्लॉक को उसकी परिभाषा के आधार पर कैसे बनाया जाना चाहिए. इसके बाद, उस ब्लॉक के बारे में मेज़र किए जा सकने वाले डेटा और डेटा का एक कलेक्शन बनाया जाता है. ड्रॉर SVG पाथ बनाने के लिए इस डेटा का इस्तेमाल करता है.
पाथ ऑब्जेक्ट
पाथ ऑब्जेक्ट में SVG एलिमेंट होते हैं, जो डॉम में रहते हैं और ब्लॉक बनाते हैं.
ड्रॉवर
ड्रॉर ("वन-हो-ड्रॉ") रेंडर की जानकारी के आधार पर SVG पाथ बनाता है और उन्हें पाथ ऑब्जेक्ट पर लागू करता है.
मेज़र किए जा सकने वाले विज्ञापनों को ब्लॉक करें
मेज़र किए जा सकने वाले रेक्टैंगल, ब्लॉक के इलाके को दिखाने वाले रेक्टैंगल हैं. मेज़र करने लायक वे टूल हैं जिनका इस्तेमाल करके, रेंडर जानकारी ब्लॉक का लेआउट तय करती है.
मेज़र किए जा सकने वाले कुछ डेटा में ज़्यादा डेटा (जैसे कि वह विज़ुअल चीज़ जो वे दिखा रहे हैं) या सहायक तरीके भी शामिल होते हैं. इन तरीकों की मदद से रेंडर करने वाली जानकारी, ब्लॉक को तय करने के लिए इस्तेमाल कर सकती है.
अलग-अलग रेंडरर इन डेटा या सहायक तरीकों को बदलने के लिए कस्टम माप दे सकते हैं.
लाइन
पंक्ति में एलिमेंट और एलिमेंट स्पेसर का हॉरिज़ॉन्टल कलेक्शन होता है.
रो स्पेसर
रो स्पेसर एक खाली वर्टिकल स्पेस होता है, जो दो लाइनों के बीच में होता है.
एलिमेंट
एलिमेंट, किसी ब्लॉक में दिखने वाली चीज़ को दिखाता है. इनमें फ़ील्ड, आइकॉन, कनेक्शन वगैरह शामिल होते हैं.
एलिमेंट स्पेसर
एलिमेंट स्पेसर एक खाली स्पेस होता है, जो पंक्ति में मौजूद एलिमेंट के बीच जाता है.