2010-03-30 6 views

उत्तर

25

एक कैलियर के भीतर प्रदर्शित करने के लिए कस्टम क्वार्ट्ज-तैयार सामग्री प्रदान करते समय, आप -drawInContext: ओवरराइड कर सकते हैं और वहां अपना कस्टम ड्राइंग कर सकते हैं। यह UIView या NSView के लिए -drawRect: के समान है। वैकल्पिक रूप से, आप एक और कक्षा को कैलियर के प्रतिनिधि बनने के लिए सेट कर सकते हैं और एक मानक कैलियर को कस्टम सामग्री प्रदान करने के लिए -drawLayer:inContext: लागू कर सकते हैं।

आप -renderInContext: ओवरराइड नहीं करते हैं, लेकिन इसके बजाय आप इसे एक परत पर कॉल कर सकते हैं और इसके सभी सबबियर को एक विशेष कोर ग्राफिक्स संदर्भ में प्रस्तुत कर सकते हैं। ध्यान दें कि यह कुछ प्रकार की परतें प्रस्तुत नहीं करेगा (जैसे ओपनजीएल सामग्री वाले)। यह पीडीएफ संदर्भ में प्रतिपादन करते समय आप जिस तरह से अपेक्षा करते हैं उससे व्यवहार नहीं करते हैं, जहां परतें शुद्ध वेक्टर तत्वों के बजाय बिटमैपड आयत के रूप में बाहर आ जाएंगी। इसके आसपास काम करने के लिए, आप Core Plot framework's CPTLayer implementation देखें, जहां हम अपने कैलियर सबक्लास से उत्पन्न पीडीएफ में वैक्टर को संरक्षित करने के लिए सामान्य प्रतिपादन प्रक्रिया को बाईपास करते हैं।

+0

कोर प्लॉट [github] में स्थानांतरित हो गया (https://github.com/core-plot) – lazi74