الاهداف
-
استعمال
الخطوط في البريمج
اختيار قياس
ونمط الخط
اختيار
الخط
استعمال ثوابت
الالوان
عرض الالوان في
البريمجات
اعداد لون
الخلفية
استعمال قيم نظام
الالوان
انشاء تأثيرات نص
خاصة باستعمال الالوان
العرض
اولا استعمال فئة
الخط
مرحبا بكم معنا
في هذا الدرس الذي يتناول استعمال الخطوط
والالوان في بريمجات الجافا ابليت
بالنسبة للخط
يهمنا فيه معرفة ثلاثة مواصفات اولها نوع
الخط ومن أنواع الخطوط
Helvetica , Courier ,
Dialog , Times Roman
نمط الخط [ أسود .
مائل . عادي ] وهكذا
حجم الخط بالنقاط
استاذي الكريم
ماذا اصنع لأتمكن من عرض النص ؟
لكي تتمكن من عرض
النص بأنواع خطوط وانماط وأحجام معينة
يجب ان تكون الكائن فونت مائل بحجم 12 نقطة
مع مراعاة اختيار الاسماء الوصفية للخط
مثل خط أحادي التباعد
لوسمحت اريد
توضيحا أكثر
يمكنك اختيار نمط
الخط باستعمال متغير ثابت واحد أو أكثر
على سبيل المثال
Font.Plain يجعل
الخط غير اسود وغير مائل
يجعل الخط أسود
Font.Bold
يجعل الخط
مائل Font.Italic
يجعل الخط
اسود ومائل Font.Bold+Font.Italic
import java.awt.*;
public class Fonts extends java.applet.Applet {
public void paint(Graphics screen) {
Font currentFont = new Font("TimesRoman", Font.PLAIN, 20);
screen.setFont(currentFont);
screen.drawString("أحبب حبيبك هونا ما ", 210, 50);
currentFont = new Font("TimesRoman", Font.PLAIN, 20);
screen.setFont(currentFont);
screen.drawString("فلربما صار عدوك يوما ما", 180, 80);
currentFont = new Font("TimesRoman", Font.PLAIN, 20);
screen.setFont(currentFont);
screen.drawString("وابغض بغيضك هونا ما ", 200, 110);
currentFont = new Font("TimesRoman", Font.PLAIN, 20);
screen.setFont(currentFont);
screen.drawString("فلربما صار حبيبك يوما ما ", 180, 140);
}
}
المثال السابق
مثال سهل لاستعمال الخطوط في البريمج بعد
ان تترجمه وتعرضه في صفحة انترنت يكون
الناتج كالاتي
-
-
والان الى
الالوان
الطريقة السهلة
هي استعمال واحد من المتغيرات الثابتة
للفئة كلر وهي 13 لون
وهذه الثوابت
هي
Black , blue , cyan ,
darkGray , gray , green , Lightgray , magenta , orange , pink , red ,
white , yellow
حيث يمكنك ضبط
لون الخلفية لإطار البريمج باستعمال هذه
الثوابت
لو سمحت استاذي
العزيز اريد مثالا على ذلك
setBackground(Color.gray);
وماذا نفعل عندما
نريد عرض نص لون معين أو رسم رسوم بألوان
مختلفة
في هذه الحالة
نستعمل نهج يضبط اللون وتستطيع عمل هذا
من النهج بينت باستعمال النهج سيت كلر
كما في المثال
public void paint(Graphics screen) {
super.paint(screen);
graphics2D screen2D = (Graphics2D) screen;
screen2D.setColor(Color.orang);
screen2D.drawString("الجافا لغة العصر ", 5 ,
50);
استاذي الفاضل
ماذا اصنع اذا اردت استعمال لون غير وارد
في الثوابت السابقة يعني اذا اردت
استعمال درجة معينة من درجات الاخضر ماذا
افعل ؟
صديقي العزيز اذا
اردت استعمال لون غير الالوان الثابتة
الثلاثة عشر في هذه الحالة يجب تحديد
القيم التالية للون
R
G B [ red
-- green - blue
]
كما في الصورة
اعلاه وفي هذه الحالة نحدد اللون حسب
كمية الأحمر والأخضر والأزرق الموجودة
في اللون حيث تتراوح كل قيمة من القيم
الثلاثة بين صفر ويعني هذا اتعدام اللون
وبين مائتان وخمس وعشرون وتعني اعلى قيمة
للون وهذا موجود في برنامج الرسم بينت
شوب او فوتو شوب وكما في الصورة
كما في الصورة
اذا اردت اختيار اللون الفيروزي فان قيمته
كما في الصورة 89 للأحمر 193 للأخضر 247
للأزرق
وللبرتقالي
الفاتح 230 للأحمر 220 للأخضر 0 للأزرق
واستعمال القيم
احمر اخضر ازرق تمكنك من الاختيار من بين
اكثر من 16.5 مليون تركيبه والحمد لله الذي
علم الانسان وانظر الى هذه المعلومة
للتتأكد اننا في الكون لسنا سوى قطرة في
محيط
الكون كله من الذرة الى المجرة يسبح
بحمد الله فسبح معه حتى تكون في انسجام مع
الكون وقل ربي زدني علما
وماذا عن النظام
الثاني لاختيار الالوان الذي توفره
الجافا
تقصد نظام
الالوان اتش اس بي
H S B [ Hue
Saturation Brightness ]
في هذا النظام
نغير درجة سطوع اللون دون تغيير أي شيء
أخر في اللون
واليك هذا
المثال
import java.awt.*;
public class Marhaba extends java.applet.Applet {
String text = "No text has been specified";
float hue = (float) 0.5;
float saturation = (float) 0.8;
float brightness = (float) 0.0;
Font textFont = new Font("Dialog", Font.BOLD, 20);
int textX;
public void init() {
setBackground(Color.blue);
String paramName = getParameter("TEXT");
if (paramName != null)
text = paramName;
FontMetrics fm = getFontMetrics(textFont);
textX = size().width / 2 - fm.stringWidth(text) / 2;
}
public void paint(Graphics screen) {
Color textColor = Color.getHSBColor(hue, saturation, brightness);
screen.setColor(textColor);
screen.setFont(textFont);
screen.drawString(text, textX, 30);
pause(250000);
brightness += 0.05;
if (brightness > 1) {
brightness = (float) 0.0;
pause(250000);
}
repaint();
}
public void update(Graphics screen) {
paint(screen);
}
void pause(int duration) {
for (int pause = 0; pause < duration; pause++);
}
}
بعد ترجمة الملف
انشأ صفحة لعرضه
<html>
<head></head><body>
<applet code="Marhaba.class" height=60 width=400><param name="TEXT" value="مرحبا بكم مع الجافا "></applet>
</html>
صديقي العزيز
الان اطلب منك الدعاء لأبو دعاء فقد وصلت
الى مرحلة متقدمة في تصميم بريمجات
متألقة تستعمل فيها الخطوط والالوان
الى اللقاء في
الدرس القادم حيث نلتقي مع انشاء الرسوم
المتحركة والعمل مع الرسوم ثنائية
الابعاد ان شاء المولى عز وجل