2010-03-14 12 views
5

मैं अपने ऐप के लिए कुछ जीयूआई पर काम करने के लिए जीटीके शार्प का उपयोग कर रहा हूं।GTKSharp, पेंगो, फ़ॉन्ट आकार quirkiness सेट

Pango.FontDescription fontdesc = new Pango.FontDescription(); 
fontdesc.Family = "Sans"; 
//fontdesc.Size = 12; 
fontdesc.Weight = Pango.Weight.Semibold; 
SyncInfo.ModifyFont(fontdesc); 
Gdk.Color fontcolor = new Gdk.Color(255,255,255); 
SyncInfo.ModifyFg(StateType.Normal, fontcolor); 

सूचना fontdesc.Size बाहर टिप्पणी की है:

कोड के इस खंड पर एक नजर डालें। क्योंकि जब मैं इसे टिप्पणी करता हूं, तो क्या मैं पाठ के साथ लेबल देखता हूं। यदि मैं इसके लिए कोई मान निर्धारित करता हूं, तो लेबल दिखाई नहीं देगा।

इसके अलावा, मैंने एक कंसोल किया था। राइटलाइन, और डिफ़ॉल्ट आकार 0 है। इसलिए मैंने frontdesc.Size = 0 की कोशिश की, और यह अभी भी गायब हो गया है, कोई विचार?

धन्यवाद!

उत्तर

5

this देखें। आपको इसे 12 * स्केल.पैंगस्केल पर सेट करने की आवश्यकता है। मुझे सी एपीआई के साथ एक ही समस्या थी।

Pango.FontDescription fontdesc = new Pango.FontDescription(); 
fontdesc.Size = Convert.ToInt32(12 * Pango.Scale.PangoScale); 
.... 

नोट्स:: FontDescription.Size एक पूर्णांक है और PangoScale टाइप डबल तो एक प्रकार कच्चा या अन्य int करने के लिए दोहरे रूपांतरण है

0

यह अनिवार्य रूप से अन्य PangoScale जवाब का एक सी # संस्करण है जरूरत है। स्केल संदर्भित नाम रिक्त स्थान में अस्पष्ट है, इसलिए पूर्ण संदर्भ Pango.Scale शायद सबसे अच्छा उपयोग किया जाता है।

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