मैं फॉन्ट के बीच विसंगति समझने की कोशिश कर में मेरे दिमाग wracking हूँ आकार उपयोगकर्ताओं का चयन करें या (उदाहरण के लिए एक FontDialog का उपयोग कर,) और उन्हें आकार .NET में फ़ॉन्ट वर्ग द्वारा रिपोर्ट निर्दिष्ट करें।.NET GDI + में फ़ॉन्ट आकार विसंगति?
उदाहरण के लिए:
संवाद में 11 का चयन का उत्पादन 11.25
संवाद में 12 का चयन का उत्पादन 12
:using (FontDialog dlg = new FontDialog()) {
if (dlg.ShowDialog() == DialogResult.OK) {
Console.WriteLine("Selected font size: " + dlg.Font.SizeInPoints.ToString("0.##"));
}
}
उपरोक्त कोड का उपयोग करना, आप कुछ भ्रामक परिणाम मिलेंगे
संवाद में 14 का चयन 14.25
संवाद में 16 का चयन 15.75
यह व्यवहार आपके द्वारा चुने गए फ़ॉन्ट के बावजूद होता है। जैसा कि आप ऊपर से देख सकते हैं, विसंगति में कोई पैटर्न नहीं है, ऐसा लगता है कि यह +0.25 और -0.25 के बीच यादृच्छिक रूप से भिन्न होता है।
मैं उपयोगकर्ता इंटरफ़ेस में केवल गोल आकार को एक गोलाकार पूर्ण संख्या के रूप में प्रदर्शित करके प्राप्त करता हूं, लेकिन मैं कसम खाता हूं कि मैंने वर्ड प्रोसेसिंग/डीटीपी पैकेज देखे हैं जो उपयोगकर्ताओं को आंशिक फ़ॉन्ट आकार चुनने की अनुमति देते हैं - और ये पैकेज नहीं हैं विंडोज फ़ॉन्ट संवाद बॉक्स के साथ बातचीत करते समय उपर्युक्त व्यवहार दिखाएं।
क्या कोई इस के लिए तर्कसंगत स्पष्टीकरण प्रदान कर सकता है? यूआई में फ़ॉन्ट आकार प्रदर्शित करने के लिए कोई सर्वोत्तम अभ्यास तकनीक है? जब उपयोगकर्ता '10 .5 'जैसे आंशिक आकार चाहता है तो कैसे?
को परिवर्तित करता है तो अनिवार्य रूप से बदल जाएगा, (और हमेशा किया गया है) अनुमानित मान ? क्या मैं अकेला हूं जो इसे थोड़ा परेशान करता है? :/ स्पष्ट रूप से मेरे उपयोगकर्ताओं को आंशिक फ़ॉन्ट आकार देने में कोई बात नहीं है, क्योंकि स्थापित सम्मेलनों में पहले से ही अपर्याप्तता का एक तत्व है ... –
@ ब्रैडली स्मिथ: जो मैं समझता हूं, हां। लेकिन यह अलग हो सकता है, अगर आप अपनी मॉनीटर को एक अलग डीपीआई सेटिंग में चलाते हैं। मेरा सुझाव है कि आप इसके साथ खेलें, जवाब पाने में नाकाम रहे, एमएस से खुद से पूछें। – leppie