logo

جافا الخط

في جافا، الخط هي فئة تنتمي إلى java.awt طَرد. ينفذ الواجهة القابلة للتسلسل. FontUIResource هي الفئة الفرعية المعروفة المباشرة لفئة Java Font.

وهو يمثل الخط المستخدم لتقديم النص. في Java، هناك مصطلحان تقنيان يُستخدمان لتمثيل الخط الشخصيات و الحروف الرسومية .

أنواع الخطوط في جافا

هناك نوعان من الخطوط في جافا:

  • الخطوط المادية
  • الخطوط المنطقية

الخطوط المادية

الخطوط المادية هي مكتبة خطوط Java الفعلية. يحتوي على جداول تقوم بتعيين تسلسل الأحرف إلى تسلسلات الحروف الرسومية باستخدام تقنية الخطوط مثل خطوط تروتايب (تتف) و خط بوستسكريبت من النوع 1 . لاحظ أن كافة تطبيقات Java يجب أن تدعم TTF. يعتمد استخدام تقنيات الخطوط الأخرى على التنفيذ. يتضمن الخط المادي اسمًا مثل هلفيتيكا، بالاتينو، هونمينتشو ، أسماء الخطوط الأخرى.

كيفية تحويل str إلى int

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

الخطوط المنطقية

تحدد جافا خمسة عائلات الخطوط المنطقية التي هي شريف، سانس سيريف، أحادي المسافة، حوار، و DialogInput . يجب أن تكون مدعومة من قبل JRE. لاحظ أن JRE يقوم بتعيين أسماء الخطوط المنطقية للخط الفعلي لأنها ليست مكتبات الخطوط الفعلية. عادة، يعتمد تنفيذ التعيين على اللغة. يتم تعيين كل اسم خط منطقي لعدة خطوط فعلية لتغطية نطاق كبير من الأحرف.

على سبيل المثال، مكونات AWT مثل ملصق و حقل النص يستخدم الخطوط المنطقية فقط.

وجوه الخطوط وأسماءها

قد يكون للخط العديد من الوجوه مثل الثقيل، العادي، المتوسط، المائل، القوطي، وما إلى ذلك. جميع وجوه الخطوط لها تصميم مطبعي مماثل.

كائن الخط له ثلاثة أسماء مختلفة هي:

    اسم الخط المنطقي:وهو الاسم الذي يستخدم لبناء الخط.اسم وجه الخط:إنه اسم وجه الخط معين. على سبيل المثال، هيلفيتيكا بولد.اسم العائلة:وهو اسم عائلة الخطوط. فهو يحدد تصميم الطباعة بين عدة وجوه.

تمثل فئة Java Font مثيلًا لوجه الخط من مجموعة وجوه الخطوط الموجودة في موارد النظام للنظام المضيف. من أمثلة وجوه الخطوط Arial Bold وCourier Bold Italic وما إلى ذلك. قد يرتبط وجه الخط (يختلف كل منها في الحجم والنمط والتحويل وميزة الخط) بعدة كائنات Font.

بيثون // المشغل

حقول فئة الخط

المعدل مجال وصف
كثافة العمليات ثابتة عريض النمط الجريء ثابت.
كثافة العمليات ثابتة CENTER_BASELINE خط الأساس المستخدم في النصوص الإيديولوجية مثل الصينية واليابانية والكورية عند تخطيط النص.
سلسلة ثابتة الحوار ثابت سلسلة لاسم العائلة الأساسي للخط المنطقي 'Dialog'.
سلسلة ثابتة DIALOG_INPUT ثابت سلسلة لاسم العائلة الأساسي للخط المنطقي 'DialogInput'.
كثافة العمليات ثابتة HANGING_BASELINE خط الأساس المستخدم في Devanigiri والنصوص المشابهة عند تخطيط النص.
كثافة العمليات ثابتة مائل ثابت النمط المائل.
كثافة العمليات ثابتة LAYOUT_LEFT_TO_RIGHT علامة للتخطيطGlyphVector تشير إلى أن النص من اليسار إلى اليمين كما هو محدد بواسطة تحليل Bidi.
كثافة العمليات ثابتة LAYOUT_NO_LIMIT_CONTEXT إشارة إلى LayoutGlyphVector تشير إلى أنه لا ينبغي فحص النص الموجود في صفيف char بعد الحد المشار إليه.
كثافة العمليات ثابتة LAYOUT_NO_START_CONTEXT إشارة إلى LayoutGlyphVector تشير إلى أنه لا ينبغي فحص النص الموجود في صفيف char قبل البداية المشار إليها.
كثافة العمليات ثابتة LAYOUT_RIGHT_TO_LEFT علامة للتخطيطGlyphVector تشير إلى أن النص من اليمين إلى اليسار كما هو محدد بواسطة تحليل Bidi.
سلسلة ثابتة أحادية المسافة ثابت سلسلة لاسم العائلة الأساسي للخط المنطقي 'Monospaced'.
سلسلة ثابتة اسم الاسم المنطقي لهذا الخط، كما تم تمريره إلى المُنشئ.
كثافة العمليات ثابتة سهل النمط البسيط ثابت.
تعويم ثابت pointSize حجم النقطة لهذا الخط في التعويم.
كثافة العمليات ثابتة ROMAN_BASELINE خط الأساس المستخدم في معظم النصوص الرومانية عند تخطيط النص.
سلسلة ثابتة بلا الرقيق ثابت سلسلة لاسم العائلة الأساسي للخط المنطقي 'SansSerif'.
سلسلة ثابتة شريف ثابت سلسلة لاسم العائلة الأساسي للخط المنطقي 'Serif'.
كثافة العمليات المحمية مقاس حجم النقطة لهذا الخط، مقربًا إلى عدد صحيح.
كثافة العمليات المحمية أسلوب نمط هذا الخط، كما تم تمريره إلى المنشئ.
كثافة العمليات ثابتة TRUETYPE_FONT تحديد مورد خط من النوع TRUETYPE.
كثافة العمليات ثابتة TYPE1_FONT تحديد مورد خط من النوع TYPE1.

منشئو فئة الخط

البناء وصف
الخط (الخط الخط) إنشاء خط جديد من الخط المحدد.
الخط (سمات الخريطة) إنشاء خط جديد بالسمات المحددة.
الخط (اسم السلسلة، نمط int، حجم int) ينشئ خطًا جديدًا من الاسم والنمط وحجم النقطة المحددين.

طرق فئة الخط

طُرق وصف
يمكن العرض (شار ج) يتحقق مما إذا كان هذا الخط يحتوي على حرف رسومي للحرف المحدد.
كانديسبلاي (كثافة العمليات كود بوينت) يتحقق مما إذا كان هذا الخط يحتوي على حرف رسومي للحرف المحدد.
canDisplayUpTo(char[] text, int start, int Limit) فهو يشير إلى ما إذا كان هذا الخط يمكنه عرض الأحرف في النص المحدد بدءًا من البداية وانتهاءً عند الحد أم لا.
canDisplayUpTo(مسار CharacterIterator، بداية int، حد int) يشير إلى ما إذا كان هذا الخط يمكنه عرض النص المحدد بواسطة المكرر بدءًا من البداية وينتهي عند الحد أم لا.
canDisplayUpTo(سلسلة سلسلة) يشير إلى ما إذا كان هذا الخط يمكنه عرض سلسلة محددة أم لا.
createFont(int FontFormat، File FontFile) تقوم بإرجاع خط جديد باستخدام نوع الخط المحدد وملف الخط المحدد.
createFont(int FontFormat، InputStream FontStream) يقوم بإرجاع خط جديد باستخدام نوع الخط المحدد وبيانات الإدخال.
createGlyphVector(FontRenderContext frc, char[] chars) يقوم بإنشاء GlyphVector عن طريق تعيين الأحرف إلى الحروف الرسومية واحد لواحد بناءً على Unicode cmap في هذا الخط.
createGlyphVector(FontRenderContext frc, CharacterIterator ci) يقوم بإنشاء GlyphVector عن طريق تعيين الأحرف المحددة إلى الحروف الرسومية واحد لواحد بناءً على Unicode cmap في هذا الخط.
createGlyphVector(FontRenderContext frc, int[] glyphCodes) يقوم بإنشاء GlyphVector عن طريق تعيين الأحرف إلى الحروف الرسومية واحد لواحد بناءً على Unicode cmap في هذا الخط.
createGlyphVector(FontRenderContext frc, String str) يقوم بإنشاء GlyphVector عن طريق تعيين الأحرف إلى الحروف الرسومية واحد لواحد بناءً على Unicode cmap في هذا الخط.
فك التشفير (سلسلة سلسلة) تقوم بإرجاع الخط الذي تصفه الوسيطة str.
deriveFont(AffineTransform trans) يقوم بإنشاء كائن خط جديد عن طريق تكرار كائن الخط الحالي وتطبيق تحويل جديد عليه.
مشتق الخط (الحجم العائم) يقوم بإنشاء كائن خط جديد عن طريق تكرار كائن الخط الحالي وتطبيق حجم جديد عليه.
مشتق الخط (نمط كثافة العمليات) يقوم بإنشاء كائن خط جديد عن طريق تكرار كائن الخط الحالي وتطبيق نمط جديد عليه.
deriveFont (نمط int، AffineTransform trans) يقوم بإنشاء كائن خط جديد عن طريق تكرار كائن الخط هذا وتطبيق نمط جديد وتحويل.
deriveFont (نمط int، حجم التعويم) يقوم بإنشاء كائن خط جديد عن طريق تكرار كائن الخط هذا وتطبيق نمط وحجم جديدين.
deriveFont(سمات الخريطة) يقوم بإنشاء كائن خط جديد عن طريق تكرار كائن الخط الحالي وتطبيق مجموعة جديدة من سمات الخط عليه.
يساوي (كائن كائن) يقوم بمقارنة كائن الخط هذا بالكائن المحدد.
الحصول على السمات () تقوم بإرجاع خريطة لسمات الخط المتوفرة في هذا الخط.
getAvailableAttributes() يقوم بإرجاع مفاتيح كافة السمات التي يدعمها هذا الخط.
getBaselineFor(شار ج) تقوم بإرجاع خط الأساس المناسب لعرض هذه الشخصية.
احصل على العائلة () تقوم بإرجاع اسم العائلة لهذا الخط.
getFamily(اللغة l) تقوم بإرجاع اسم العائلة لهذا الخط، مترجمًا للغة المحددة.
getFont(سمات الخريطة) تقوم بإرجاع الخط المناسب للسمات.
getFont(سلسلة نانومتر) تقوم بإرجاع كائن الخط من قائمة خصائص النظام.
getFont(سلسلة نانومتر، خط الخط) يحصل على الخط المحدد من قائمة خصائص النظام.
getFontName() تقوم بإرجاع اسم وجه الخط لهذا الخط.
getFontName(اللغة المحلية l) تقوم بإرجاع اسم وجه الخط للخط، مترجمًا للغة المحددة.
getItalicAngle() تقوم بإرجاع الزاوية المائلة لهذا الخط.
getLineMetrics(char[] chars, int beginIndex, int Limit, FontRenderContext frc) تقوم بإرجاع كائن LineMetrics الذي تم إنشاؤه باستخدام الوسائط المحددة.
getLineMetrics(CharacterIterator ci, int beginIndex, int Limit, FontRenderContext frc) تقوم بإرجاع كائن LineMetrics الذي تم إنشاؤه باستخدام الوسائط المحددة.
getLineMetrics (String str، FontRenderContext frc) تقوم بإرجاع كائن LineMetrics الذي تم إنشاؤه باستخدام String وFontRenderContext المحددين.
getLineMetrics (String str، int beginIndex، int Limit، FontRenderContext frc) تقوم بإرجاع كائن LineMetrics الذي تم إنشاؤه باستخدام الوسائط المحددة.
getMaxCharBounds(FontRenderContext frc) تقوم بإرجاع حدود الحرف بالحدود القصوى كما هو محدد في FontRenderContext المحدد.
getMissingGlyphCode() تقوم بإرجاع الرمز الرسومي الذي يتم استخدامه عندما لا يحتوي هذا الخط على حرف رسومي لنقطة رمز Unicode محددة.
الحصول على الاسم () تقوم بإرجاع الاسم المنطقي لهذا الخط.
getNumGlyphs() يقوم بإرجاع عدد الحروف الرسومية في هذا الخط.
getPeer() أصبح عرض الخط الآن مستقلاً عن النظام الأساسي.
getPSName() تقوم بإرجاع اسم التذييل لهذا الخط.
الحصول على الحجم () تقوم بإرجاع حجم النقطة لهذا الخط، مقربًا إلى عدد صحيح.
getSize2D() تقوم بإرجاع حجم النقطة لهذا الخط بالقيمة العائمة.
getStringBounds(char[] chars, int beginIndex, int Limit, FontRenderContext frc) تقوم بإرجاع الحدود المنطقية لمجموعة الأحرف المحددة في FontRenderContext المحدد.
getStringBounds(CharacterIterator ci, int beginIndex, int Limit, FontRenderContext frc) تقوم بإرجاع الحدود المنطقية للأحرف المفهرسة في CharacterIterator المحدد في FontRenderContext المحدد.
getStringBounds(String str، FontRenderContext frc) تقوم بإرجاع الحدود المنطقية للسلسلة المحددة في FontRenderContext المحدد.
getStringBounds (String str، int beginIndex، int Limit، FontRenderContext frc) تقوم بإرجاع الحدود المنطقية للسلسلة المحددة في FontRenderContext المحدد.
احصل على ستايل () تقوم بإرجاع نمط هذا الخط.
الحصول على التحويل () تقوم بإرجاع نسخة من التحويل المرتبط بهذا الخط.
رمز التجزئة () يقوم بإرجاع رمز التجزئة لهذا الخط.
hasLayoutAttributes() يتم إرجاعه صحيحًا إذا كان هذا الخط يحتوي على سمات تتطلب معالجة تخطيط إضافية.
hasUniformLineMetrics() فهو يتحقق مما إذا كان هذا الخط يحتوي على مقاييس خطية موحدة أم لا.
عريض () فهو يشير إلى ما إذا كان نمط كائن الخط هذا عريضًا أم لا.
مائل () فهو يشير إلى ما إذا كان نمط كائن الخط هذا مائلًا أم لا.
عادي () فهو يشير إلى ما إذا كان نمط كائن الخط هذا عاديًا أم لا.
تم تحويله () فهو يشير إلى ما إذا كان كائن الخط هذا يحتوي على تحويل يؤثر على حجمه بالإضافة إلى سمة الحجم أم لا.
LayoutGlyphVector(FontRenderContext frc, char[] text, int start, int Limit, int flags) تقوم بإرجاع كائن GlyphVector جديد، مع تنفيذ التخطيط الكامل للنص إن أمكن.
إلى سلسلة() يقوم بتحويل كائن الخط هذا إلى تمثيل سلسلة.

دعونا نرى مثالاً لخط جافا.

JavaFontExample.java

 import java.applet.Applet; import java.awt.Font; import java.awt.Graphics; public class JavaFontExample extends Applet { public void paint(Graphics gph) { //creating a constructor of the font class and passing name, style, and size of the font //we can change these three parameters accordingly Font font= new Font('Courier', Font.PLAIN, 20); //setting font by invoking the setFont() method gph.setFont(font); gph.drawString('Javatpoint is the best learning platform.', 12, 45); } } 

لتنفيذ البرنامج أعلاه، اتبع الخطوات الموضحة أدناه:

سلسلة json جافا

أنا. انسخ الكود أعلاه والصقه واحفظ الملف بالاسم JavaFontExample.java.

ثانيا. قم بإنشاء ملف HTM واكتب الكود التالي.

JavaFontExample.html

 

ثالثا. افتح موجه الأوامر وقم بتنفيذ الأوامر التالية:

في جافا
 JavaFontExample.java appletviewer JavaFontExample.java 

الإخراج 1:

جافا الخط

للحصول على الإخراج التالي، قم بإجراء التغييرات في العبارة التالية:

 Font font= new Font('Monospaced', Font.ITALIC, 30); //name, face and size of font is changed 

الإخراج 2:

جافا الخط