مقدمة
يتميز الـ Visual Studio بإمكانية قراءة الأيقونات وحفظها وتحويل الصور
لأيقونات ولكن بدقات ضعيفة جدا وهذه هي المشكلة في Visual Studio
إذ في هذه الحالة لن نستطيع تصميم أيقونة لبرنامجنا تكون واضحة وبدقة عالية ...
فلذلك قمت ببرمجة برنامج يقوم بالتعامل مع ملفات Icons دون الحاجة إلى الـ Visual Studio لكي يقوم بحفظها وتحويلها
ما يجب عليك معرفته أولا عن الأيقونات
كيف تتم كتابة ملف الأيقونة ؟
ملف الأيقونة يكتب على النحو التالي :
Icon Header ( الرأس )
Reserved دائما تساوي 0 وهي تأخذ حجم (2 بايت) من الأيقونة
Type فإما أن يكون 0 أو 1 (0 = صورة , 1 = أيقونة) وهي أيضا تأخذ حجم (2 بايت) من الأيقونة
Count ويحدد عدد الأيقونات في الملف وهو أيضا يأخذ حجم (2 بايت) من الأيقونة
Icon Entry (بداية الأيقونة)
Width تحدد عرض الصورة وهي تأخذ حجم (1 بايت) من الأيقونة
Height تحدد طول الصورة وهي تأخذ حجم (1 بايت) من الأيقونة
ColorCount عدد الألوان في الصورة وهو يأخذ حجم (1 بايت) من الأيقونة
Reserved دائما تساوي 0 وهي تأخذ حجم (1 بايت) من الأيقونة
Planes التخطيط دائما يساوي 0 وهو يأخذ حجم (2 بايت) من الأيقونة
BitCount وهي تحدد حجم كل بكسل في الملف (Bits per pixel) وهي تأخذ حجم (2 بايت) من الأيقونة
BytesInRes حجم الصورة في الملف تأخذ حجم (4 بايت) من الأيقونة
ImageOffset تحدد مكان بداية الصورة في الملف تأخذ حجم (4 بايت) من الأيقونة
Icon Data (بيانات الصورة)
Data وهي الصورة في ملف الأيقونة
ملاحظة :
Byte يأخذ 1 byte
Short أو Int16 تأخذ 2 bytes
Integer أو Int32 تأخذ 4 bytes
أنواع الصور
XP With Alpha Channel (RGB/A - 32 bits per pixel)
True Colors (RGB - 24 bits per pixel)
256 Indexed Colors (8 bits per pixel)
16 Colors (4 bits per pixel)
Monochrome (1 bits per pixel)
طريقة استخدام البرنامج
البرنامج يتيح للمستخدم صنع أيقونة من صورة يقوم بتحديدها ثم يقوم المستخدم
باختيار أبعاد الصورة ونوعها وعند الإنتهاء من وضع الأحجام الأنواع يقوم
البرنامج بحفظ جميع الصور في الملف الذي يحدده المستخدم ويكون إمتداده .ico
أو يقوم المستخدم بإستدعاء ملف .Ico ويقوم بالتعديل عليه بإضافة صور أخرى أو حذفها
صور للبرنامج
واجهة البرنامج الرئيسية
واجهة تحديد نوع الصورة وحجمها
الأيقونة بعد حفظها وتشغيلها بعارض الصور الخاص بالويندوز
لتحميل البرنامج مع الأوامر
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]