में फ़ॉन्ट एम्बेड करना मैं JUCE में फ़ॉन्ट एम्बेड करने के लिए एक सरल चरण-दर-चरण समाधान की तलाश में हूं।JUCE
मुझे अपने ऐप में फोंट एम्बेड करने में कुछ परेशानी हो रही है (पूरी तरह से ऐप रिलीज से पहले इसमें समय डालना भूल गया है, और अब मेरा ऐप उपयोगकर्ता सिस्टम पर अपना फ़ॉन्ट प्रदर्शित नहीं कर रहा है - समझ में आता है)।
मैंने इस विषय पर उपलब्ध सभी पोस्टों की खोज की और उनका पालन किया है, लेकिन अभी भी समस्याएं हैं। मैं एम्बेडेड फ़ॉन्ट को अपने ऐप में पहले से मौजूद लेबल में जोड़ना चाहता हूं जिसे हम प्रोजेकर जीयूआई घटक के माध्यम से बनाए और रखे गए हैं।
मैं अब तक क्या किया है:
1) मेरी ProJucer सत्र के लिए फ़ॉन्ट जोड़ा गया है ताकि यह BinaryData
2) बनाया गया एक वर्ग मैं कहा जाता है पर जुड़ जाता है "EmbeddedFont:"
#include "../JuceLibraryCode/JuceHeader.h"
class EmbeddedFonts
{
private:
Font calistoMT;
public:
EmbeddedFonts();
Font& getCalistoMT();
};
और
EmbeddedFonts::EmbeddedFonts()
{
// in the line below is where I'm getting the assertion error: jassert (typefaceName.isNotEmpty());
calistoMT = Font(Typeface::createSystemTypefaceFor(BinaryData::Calisto_MT,
BinaryData::Calisto_MTSize));
}
Font& EmbeddedFonts::getCalistoMT()
{
return calistoMT;
}
3) मेरी जीयूआई कंप्यूटर अनुप्रयोग के शीर्षक में इस का एक उदाहरण बना दिया onent वर्ग 4) लेबल फ़ॉन्ट के लिए इस फ़ॉन्ट गुजर कोशिश की थी:
genericLabelName->setFont(embeddedFont.getCalistoMT());
वास्तव में यहां से क्या करना सुनिश्चित नहीं हैं। साथ ही, जब मैं काम करने के लिए एम्बेडेड फ़ॉन्ट प्राप्त करता हूं, तो क्या कुछ विशिष्ट है जो मुझे प्रोजेक्टर जीयूआई घटक में फ़ॉन्ट फ़ील्ड में करना चाहिए? क्या मुझे इसे एक ही फ़ॉन्ट पर सेट करना चाहिए? मैं केवल इसलिए पूछता हूं क्योंकि मैं तकनीकी रूप से कन्स्ट्रक्टर में दो बार फ़ॉन्ट स्थापित कर रहा हूं (एक बार जीयूआई घटक विकल्प ड्रॉप-डाउन मेनू से और एक बार हाथ से एम्बेडेड फ़ॉन्ट कोडिंग)।
मैंने कुछ दिनों के लिए यह कोशिश की है और अभी भी समस्या हो रही है। किसी भी मदद के लिए धन्यवाद। यह मेरा आखिरी ऐप अपडेट जारी करने से पहले आखिरी चीज है, इसलिए किसी भी सहायता की सराहना की जाती है।
क्या आपने फ़ॉन्ट बनाने के बाद 'calistoMT-> setTypefaceName ("फ़ॉन्ट से टाइपफेस नाम")' और 'setTypefaceStyle()' को आजमाया था? फ़ॉन्ट ब्राउज़ करें और सुनिश्चित करें कि आपके द्वारा निर्दिष्ट टाइपफ़ेस एक फ़ॉन्ट का समर्थन करता है। –
मैंने उस समय कोशिश नहीं की, मैं वर्तमान में उन लोगों के साथ खेल रहा हूं जिनके बारे में आपने इसका उल्लेख किया है, लेकिन मुझे अभी भी वही जसर्ट मिल रहा है। दावा: 'jassert (typefaceName.isNotEmpty());' मुझे विश्वास है कि यह पॉप-अप हो रहा है क्योंकि टाइपफ़ेसनाम में कुछ टेक्स्ट है, जो मुझे लगता है कि इसमें कोई टेक्स्ट नहीं होना चाहिए, फिर भी, क्या इसमें टेक्स्ट है या नहीं, जेसर्ट अभी भी पॉप अप करता है। –
इसके अलावा, मैं प्रोजेकर में लेबल को हटाने और कोड के माध्यम से जोड़ने का विरोध नहीं कर रहा हूं, इससे अब और अधिक समझ हो सकती है। –