سؤال

أريد أن برمجيا إنشاء NSTextView.كيف يمكنني تحديد الإطار الصحيح الارتفاع بحيث يظهر عرض سطر واحد من النص الافتراضي الحالي الخط ؟

هل كانت مفيدة؟

المحلول

على NSFont فئة لديها طريقة التي يمكن أن تعطيك حجم المستطيل الذي سوف أرفق محددة يعزى السلسلة.على الخط المستخدم الخاص بك عرض النص, إنشاء سلسلة بمثابة معقول ما يكون في عرض النص واستخدام تلك إبلاغ ارتفاع الإطار.(ارتفاع الإطار سوف تحتاج إلى بعض عدد من النقاط أكبر من الفعلية المستطيل السلسلة سيتم عرضها في.)

بدلا من ذلك يمكنك الحصول على مقاييس مختلفة من الخط ومحاولة لحساب معقول إطار من ذلك.التي قد أو قد لا تعمل.على سبيل المثال, الخط مثل أبل الديوان يحتوي على كمية كبيرة من الاختلاف اعتمادا على الرموز التي يتم تقديمها ، حيث يتم في كلمة واحدة ، وما إلى ذلك ؛ أنا لا أعرف أنه يمكنك حساب ما يلزم أن يكون حجم مقدما دون أن يعرفوا بالضبط ما كنت تنوي تقديم.

نصائح أخرى

وسيكون من الطبيعي أن تكون باستخدام NSTextField من NSTextView على سطر واحد من النص.

مع NSTextField, فقط قم بما يلي:

[textField setFont:myFont];
[textField sizeToFit];

أوه, وليس هناك المدمج في الخط الافتراضي'.إذا كان أحد تطبيقات هذا المفهوم ، فإنه يحتاج إلى تتبع ذلك في حد ذاته.الخط لوحة لا تقرأ أو تكتب أي شيء العالمية ، انها كانت تعمل على نص معين الكائنات.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top