2009-05-16 15 views
7

जावा में ओपन टाइप फोंट को पढ़ने का कोई तरीका है जैसा कि मैं ट्रू टाइप फ़ॉन्ट्स के साथ करता हूं?जावा में ओपन टाइप फ़ॉन्ट्स का उपयोग कैसे करें?

यह टीटीएफ के लिए पूरी तरह से काम करता है लेकिन मुझे अभी तक पता नहीं चला कि ओपन टाइप फोंट के साथ ऐसा कैसे किया जाए।

Font f = Font.createFont(Font.TRUETYPE_FONT, 
new FileInputStream("f.ttf")); 

कृपया ध्यान दें कि मैं स्थापित फ़ॉन्ट्स पर रिले नहीं कर सकता। मैं अपने प्रोग्राम के साथ फ़ॉन्ट प्रदान करता हूं लेकिन इसे सिस्टम को व्यापक रूप से स्थापित नहीं करना चाहता हूं।

उत्तर

4

मुझे नहीं लगता कि जावा में ओपन टाइप फ़ॉन्ट समर्थन है (कम से कम नहीं), iText ने ऐसा समर्थन करने का दावा किया, कुछ महीने पहले इसे आजमाया और यह काम नहीं किया, मेरे लिए क्या काम किया गया एक कार्यक्रम है जिसे FontForge कहा जाता है जिसे मैं ओटीएफ से एक टीटीएफ बनाने के लिए उपयोग करता था जिसे मैंने तब उपयोग किया था।

+0

के बारे में का औचित्य साबित कर रहे हैं तो कहते हैं कि? जावा 6+ में है: http://mindprod.com/jgloss/opentype.html –

4

Java OpenType font support depends on your OS and JDK version.

जावा 6 से पहले, आप केवल ट्रू टाइप स्वाद ओपन टाइप फ़ॉन्ट का उपयोग कर सकते हैं। जावा 6 के साथ आप सभी ओपनटाइप फोंट का उपयोग कर सकते हैं लेकिन आपको उन्नत टाइपोग्राफिक फीचर्स जैसे लिगचर से लाभ नहीं होगा।

1

मैं एक फ़ॉन्ट परिवर्तक का उपयोग किया है एक टीटीएफ फाइल करने के लिए OTF कन्वर्ट करने के लिए। वहाँ कुछ ऑनलाइन सेवाएं हैं (जैसे www.freefontconverter.com) जो नौकरी करते हैं। मेरे लिए यह एक तेज़ और सरल कामकाज था।

0

ओपन टाइप (.otf) फ़ॉन्ट जावा 1.6 में समर्थित नहीं है। जावा 1.7 से, समर्थन जोड़ा जाता है। कोड के नीचे मेरे लिए काम किया:

Font font = Font.createFont(Font.TRUETYPE_FONT, new File("MyFont.otf")); 
font = font.deriveFont(Font.BOLD, 40); 
------ 
label.setFont(font); 

नीचे कुछ लिंक है कि इस

http://bugs.java.com/view_bug.do?bug_id=6992611 http://docs.oracle.com/javase/7/docs/webnotes/adoptionGuide/#swing

संबंधित मुद्दे