में बहुभाषी यूनिकोड प्रतिपादन मुझे अंतर्राष्ट्रीय पात्रों (विशेष रूप से हिब्रू, अरबी और सिरिलिक) का समर्थन करने के लिए ओपनजीएल-रेंडरिंग सिस्टम का विस्तार करना होगा। (| विस्टा | XP 7)ओपनगल
विकास मंच विंडोज है, Embercardero डेल्फी 2010
मैं वर्तमान में wglOutLineFont का उपयोग (...) glCallLists(length(m_Text), UNSIGNED_SHORT, PWchar(m_Text))
का उपयोग कर मेरे फ़ॉन्ट के प्रदर्शन सूची बनाने के लिए और मेरे तार रेंडर करने के लिए अफसोस।
हालांकि यह लैटिन -1 अक्षरों के लिए व्यवहार्य है, पूर्ण यूनिकोड चरित्र सेट अग्रिम में निर्माण करना काफी समय लेने वाला है (मेरी मशीन पर लगभग 8.5 मिनट), इसलिए मैं एक और अधिक कुशल समाधान की तलाश में हूं। मैंने आपको + 0020 - यू +07 एफ (लैटिन, यूनानी, सिरिलिक, अरबी और हिब्रू) से रेंज को सीमित करने के बारे में सोचा था, जिसमें मुझे केवल ग्लिफ चाहिए, लेकिन यह मेरी वर्तमान जरूरतों के लिए एक समाधान होगा, और एक बार अपर्याप्त हो जाएगा अन्य एन्कोडिंग की आवश्यकता है।
ऊपर की ओर, मुझे बाएं से दाएं या दाएं से बाएं दिशा के बारे में चिंता करने की ज़रूरत नहीं है क्योंकि हमारा एप्लिकेशन पहले से ही इसे संभाल सकता है।
मुझे उम्मीद है कि यह एक प्रसिद्ध समस्या होगी, इसलिए मैं यह पूछना चाहूंगा कि वेब पर इस पर कोई संदर्भ सामग्री है या आप इस पर कुछ अंतर्दृष्टि साझा कर सकते हैं?
संपादित करें एक स्पष्टीकरण: मैं बहुभुज फ़ॉन्ट प्रस्तुतियों का उपयोग करता हूं। प्रत्येक फ़ॉन्ट इकाई आकार (1.0) पर पहले से बनाया गया है और प्रतिपादन से पहले glScalef(...)
का उपयोग करके उचित रूप से स्केल किया गया है। मैंने पूर्व-रास्टराइजिंग के खिलाफ फैसला किया क्योंकि उपयोगकर्ता काफी निकटता से ज़ूम कर सकते हैं (एप्लिकेशन सीएडी के लिए उपयोग किया जाता है), इसलिए रास्टरिंग कलाकृतियों को दिखाई देगा।
इसके अतिरिक्त, चूंकि एक दृश्य शायद ही कभी अधिक सौ वर्ण (मुख्य रूप से लेबल और माप) से अधिक हो जाता है, पूर्व-रास्टराइजेशन से गति लाभ नगण्य है।
वर्टेक्स बफर ऑब्जेक्ट्स का उपयोग करना बहुत अच्छा होगा!फ़ॉन्ट रास्टर्स उच्च रिज़ॉल्यूशन में हो सकते हैं, फिर mipmaps और multisampling बाकी करते हैं। – Luca
तो मेरा मतलब है कि मुझे सूचियां उत्पन्न करनी चाहिए जब मुझे पता चले कि मुझे कौन से पात्रों को किसी दिए गए स्ट्रिंग के लिए आकर्षित करने की आवश्यकता होगी? – sum1stolemyname
हां। इसी तरह की समस्या का सामना करना - और ओपनटाइप लाइब्रेरी का उपयोग करना (wgl के बजाए प्लेटफ़ॉर्म विचारधारा के लिए) हम शब्दों के प्रस्तुतकर्ता वाले रास्टरराइज्ड बनावट के साथ गए थे। फिर हम दृश्यमान शब्दों को कैश करते हैं, और स्क्रीन से स्क्रॉल किए गए किसी भी शब्द को त्याग देते हैं। हमारा आवेदन केवल बहुत ही जटिल प्रारूपण आवश्यकताओं के बिना, पाठ की एक छोटी राशि दिखाता है, लेकिन पर्याप्त संभावित पाठ है जो इसे पूर्व-प्रस्तुत करने में सभी को देरी दिखाई देगी। –