मैं जानना चाहता हूं कि एक विंडो में सार्वभौमिक अनुप्रयोग में Win2D का उपयोग करके किसी दिए गए फ़ॉन्ट (इसकी गुणों, जैसे आकार, वजन, शैली ...) की ऊंचाई की गणना कैसे करें।Win2D (लाइन स्पेसिंग) के साथ FontFamily की ऊंचाई की गणना कैसे करें?
मैं पहले एक CanvasTextLayout
इस्तेमाल किया है, लेकिन यह काम करने के लिए, इस पंक्ति में की तरह एक पाठ की आवश्यकता है:
var ctl = new CanvasTextLayout(session, "Some text", new CanvasTextFormat(), constraintWidth, constraintHeight
);
मेरे मामले में, मेरे पास कोई पाठ नहीं होगा क्योंकि जो मैं खोज रहा हूं वह ऊंचाई है जिसमें किसी दिए गए फ़ॉन्ट (इसकी शैली, आकार, वजन ... के साथ) के सभी ग्लिफ फिट हैं।
संपादित करें: मैंने CanvasFontFace
कक्षा के साथ भी प्रयास किया है, लेकिन ऐसा लगता है कि इसमें कोई सार्वजनिक निर्माता नहीं है।
क्या आप GetGlyphRunBounds https://microsoft.github.io/Win2D/html/Overload_Microsoft_Graphics_Canvas_Text_CanvasFontFace_GetGlyphRunBounds.htm ढूंढ रहे हैं? अन्यथा CanvasTexFormat में एक फ़ॉन्ट आकार संपत्ति है, सामान्य रूप से फ़ॉन्ट परिवारों के साथ –
मुझे लगता है कि GetGlyphRunBounds मुझे जो चाहिए वह नहीं है, क्योंकि मुझे कम से कम एक ग्लिफ़ निर्दिष्ट करना होगा। यह इस सवाल के बराबर सटीक है, लेकिन Win2D में। http://stackoverflow.com/questions/4509613/how-to-calculate-font-height-in-wpf। कृपया उत्तर देखें। डब्ल्यूपीएफ में इसे "लाइनस्पेसिंग" कहते हैं। – SuperJMN
मुझे नहीं लगता कि आप डिफ़ॉल्ट 'लाइनस्पेसिंग' जैसे WPF में प्राप्त कर सकते हैं। आपको पहले टेक्स्ट खींचना होगा। यह Win2D की एक सीमा है। –