QFontMetrics :: الرائدة () بإرجاع 0
سؤال
وماذا بعد ذلك ترجع 0؟ (البيئة بلدي: ويندوز فيستا، VC ++ 9، Qt4.5)
int func()
{
QPushButton button("Blah blah");
QFontMetrics fm = button.fontMetrics();
return fm.leading();
}
والدعوة إلى "fm.height ()" ترجع نتائج معقولة (16 بكسل في حالتي).
والدعوة إلى "fm.lineSpacing ()" إرجاع نفس النتيجة مثل "fm.height ()".
والدعوة إلى "fm.boundingRect (QRect ()، 0،" أول خط \ ن السطر الثاني \ ن الخط الثالث ") ارتفاع ()؛" بإرجاع 16 * 3، أي مرة أخرى بين تباعد الأسطر غير المدرجة في نتيجة ...
هل هذا الاستخدام غير الصحيح من جانبي أو شيء آخر؟
المحلول
ووفقا للمستندات lineSpacing()
هو دائما يساوي height()
+ leading()
وheight()
هو دائما يساوي ascent()+descent()+1
(1 هو للخط القاعدة).
من <لأ href = "http://www.brightlemon.com/knowledge-base/blog/typography-01-font-basics-what-is-x-height-leading-kerning-tracking-ascender-de -0 "يختلط =" نوفولو noreferrer "> هنا الرائدة هو" الفضاء عموديا بين أسطر من النص - اسم يأتي من قطعة المادي من الرصاص التي كانت تستخدم في عملية الطباعة الميكانيكية لفصل أسطر من النص "
وهكذا، ما الخط الذي تستخدمه، وأنها لا تستخدم إحدى الشركات الرائدة في حجم الصفر؟