يتم استخدام الصورة النقطية لإنشاء رسومات الكمبيوتر وتخزينها. تُستخدم الصور النقطية على نطاق واسع على صفحات الويب والأجهزة الرقمية مثل الكاميرات والهواتف الذكية وما إلى ذلك. أكثر أنواع ملفات الرسومات النقطية شيوعًا هي BMP و GIF و PNG و JPEG. في هذه المقالة ، سوف نتعلم كيفية إنشاء صورة نقطية في #C.
سيتم تناول الموضوعات التالية في هذه المقالة:
- C# API لإنشاء وتحميل وتعبئة ورسم صورة نقطية
- إنشاء صورة نقطية جديدة من الصفر
- إنشاء صورة نقطية من صفيف بايت
- حفظ الصورة النقطية كملف صورة
- رسم الأشكال على صورة نقطية
- رسم نص على صورة نقطية
- املأ صورة نقطية بلون خالص
- تحميل صورة في صورة نقطية
- تغيير حجم صورة موجودة باستخدام صورة نقطية
C# API لإنشاء وتحميل وملء ورسم صورة نقطية - تنزيل مجاني
لإنشاء صورة نقطية ، سنستخدم Aspose.Drawing for .NET API. إنها مكتبة رسومات ثنائية الأبعاد عبر الأنظمة الأساسية لرسم النصوص والهندسة والصور برمجيًا. يسمح بتحميل وحفظ ومعالجة تنسيقات الملفات المدعومة.
يرجى إما تنزيل DLL الخاص بواجهة برمجة التطبيقات أو تثبيته باستخدام NuGet.
PM> Install-Package Aspose.Drawing
إنشاء صورة نقطية جديدة في #C
يمكننا إنشاء صورة نقطية جديدة من البداية باتباع الخطوات الواردة أدناه:
- أولاً ، قم بإنشاء صورة نقطية جديدة باستخدام فئة الصور النقطية بالحجم والتنسيق المحددين.
- بعد ذلك ، قم بإنشاء كائن رسومات جديد من كائن Bitmap باستخدام طريقة ()FromImage.
- بعد ذلك ، قم بتهيئة كائن فئة Pen باللون والحجم المحددين.
- بعد ذلك ، قم باستدعاء طريقة ()DrawEllipse لرسم شكل بيضاوي بالحجم المحدد.
- أخيرًا ، احفظ الصورة الناتجة باستخدام طريقة ()Save.
يوضح نموذج التعليمات البرمجية التالي كيفية إنشاء صورة نقطية جديدة في #C.
// يوضح مثال الرمز هذا كيفية إنشاء صورة نقطية جديدة برمجيًا في #C.
// تهيئة كائن الصورة النقطية
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// إنشاء رسومات جديدة
Graphics graphics = Graphics.FromImage(bitmap);
// تهيئة القلم
Pen pen = new Pen(Color.Red, 5);
// ارسم مستطيلاً
graphics.DrawEllipse(pen, new Rectangle(0, 0, 700, 700));
// حفظ الملف
bitmap.Save(@"C:\Files\Drawings\output.png");
إنشاء صورة نقطية من صفيف بايت في #C
يمكننا إنشاء صورة نقطية من وحدات بايت دفق الذاكرة باتباع الخطوات الواردة أدناه:
- قراءة ملف الصورة في مجموعة بايت.
- إنشاء مثيل جديد من MemoryStream باستخدام كائن صفيف البايت.
- قم بإنشاء صورة نقطية جديدة باستخدام فئة الصورة النقطية مع كائن MemoryStream.
- أخيرًا ، احفظ الصورة باستخدام طريقة Save().
يُظهر نموذج التعليمات البرمجية التالي كيفية إنشاء صورة نقطية من صفيف بايت باستخدام MemoryStream في #C.
// يوضح مثال الكود هذا كيفية إنشاء صورة نقطية جديدة من وحدات بايت دفق الذاكرة في #C.
// قم بتحميل الصورة واقرأ كل البايت
var file = File.ReadAllBytes(@"C:\Files\Drawings\sample.jpg");
// إنشاء دفق الذاكرة
MemoryStream stream = new MemoryStream(file);
// قم بإنشاء صورة نقطية جديدة
Bitmap bitmap = new Bitmap(stream);
// حفظ الملف
bitmap.Save(@"C:\Files\Drawings\output.jpg");
C# حفظ الصورة النقطية في ملف
يمكننا حفظ صورة نقطية في ملف بتنسيقات ملفات مختلفة مدعومة باتباع الخطوات المذكورة سابقًا. ومع ذلك ، نحتاج فقط إلى ذكر امتداد تنسيق ملف الحفظ المطلوب أثناء حفظ ملف الصورة باستخدام طريقة Save (اسم ملف سلسلة ، تنسيق ImageFormat) في الخطوة الأخيرة.
- احفظ صورة نقطية كملف BMP
bitmap.Save(@"C:\Files\output.bmp", ImageFormat.Bmp);
- احفظ صورة نقطية كملف PNG
bitmap.Save(@"C:\Files\output.png", ImageFormat.Png);
- احفظ صورة نقطية كملف JPG
bitmap.Save(@"C:\Files\output.jpg", ImageFormat.Jpeg);
- احفظ صورة نقطية كملف GIF
bitmap.Save(@"C:\Files\output.gif", ImageFormat.Gif);
C# ارسم على صورة نقطية
يمكننا رسم أشكال وصور مختلفة على صورة نقطية باتباع الخطوات المذكورة سابقًا. ومع ذلك ، نحتاج فقط إلى استخدام الأساليب المحددة للشكل لرسم الأشكال المطلوبة.
يمكننا رسم الأشكال التالية باستخدام الطرق المحددة المتوفرة للرسم على الصورة النقطية:
- القوس: يمكننا رسم قوس باستخدام طريقة DrawArc().
- بيزير: يمكننا رسم بيزيير باستخدام طريقة DrawBezier().
- سلسلة من شرائح بيزير: يمكننا رسم سلسلة من شرائح بيزيير باستخدام طريقة DrawBeziers().
- منحنى: يمكننا رسم شكل منحني باستخدام طريقة DrawCurve().
- منحنى مغلق: يمكننا رسم منحنى مغلق باستخدام طريقة DrawClosedCurve().
- Ellipse: يمكننا رسم Ellipse باستخدام طريقة DrawEllipse().
- الخط: يمكننا رسم خط باستخدام طريقة DrawLine().
- سلسلة من الخطوط: يمكننا رسم سلسلة من الخطوط باستخدام طريقة DrawLines().
- المسار: يمكننا رسم مسار باستخدام طريقة DrawPath().
- فطيرة: يمكننا رسم فطيرة باستخدام طريقة DrawPie().
- المضلع: يمكننا رسم مضلع باستخدام طريقة DrawPolygon().
- المستطيل: يمكننا رسم مستطيل باستخدام طريقة DrawRectangle().
- سلسلة من المستطيلات: يمكننا رسم سلسلة من المستطيلات باستخدام طريقة DrawRectangles().
يمكننا رسم الصور على الصورة النقطية بالطرق التالية:
- الأيقونة: يمكننا رسم الصورة الممثلة بالأيقونة المحددة داخل المنطقة المحددة بواسطة هيكل المستطيل باستخدام طريقة DrawIcon().
- صورة: يمكننا رسم أي صورة محددة باستخدام طريقة DrawImage().
C# رسم نص على صورة نقطية
يمكننا رسم أي سلسلة على صورة نقطية باتباع الخطوات الواردة أدناه:
- أولاً ، قم بإنشاء صورة نقطية جديدة باستخدام فئة الصور النقطية بالحجم المحدد.
- بعد ذلك ، قم بإنشاء كائن رسومات جديد من كائن Bitmap باستخدام طريقة ()FromImage.
- بعد ذلك ، حدد كائن فئة الخط مع عائلة الخط المطلوب ونمطه وحجمه.
- في غضون ذلك ، قم بتهيئة كائن SolidBrush باللون المحدد.
- بعد ذلك ، قم باستدعاء طريقة ()DrawString مع النص لإظهار كائنات الخط والفرشاة كوسائط.
- أخيرًا ، احفظ الصورة الناتجة باستخدام طريقة Save().
يوضح نموذج التعليمات البرمجية التالي كيفية رسم نص على صورة نقطية في #C.
// يوضح مثال الكود هذا كيفية رسم نص على صورة نقطية جديدة برمجيًا في #C.
// تهيئة كائن الصورة النقطية
Bitmap bitmap = new Bitmap(500,200);
// إنشاء رسومات جديدة
Graphics graphics = Graphics.FromImage(bitmap);
// تهيئة الخط
var font = new Font(FontFamily.GenericSerif, 40f, FontStyle.Bold);
// تهيئة الفرشاة
var brush = new SolidBrush(Color.Red);
// ارسم مستطيلاً
graphics.DrawString("Welcome to Bitmap!", font, brush, 10, 20);
// حفظ الملف
bitmap.Save(@"C:\Files\Drawings\output.png", ImageFormat.Png);
ملء صورة نقطية بلون خالص في C#
يمكننا ملء صورة نقطية بلون خالص باستخدام مستطيل ممتلئ وحفظها في صورة نقطية جديدة باتباع الخطوات الواردة أدناه:
- أولاً ، قم بإنشاء صورة نقطية جديدة باستخدام فئة الصور النقطية بالحجم المحدد.
- بعد ذلك ، قم بإنشاء كائن رسومات جديد من كائن Bitmap باستخدام طريقة ()FromImage.
- بعد ذلك ، قم بتهيئة كائن فئة Rectangle بالموقع والحجم المحددين.
- بعد ذلك ، قم باستدعاء طريقة ()FillRectangle بلون الفرشاة والمستطيل.
- أخيرًا ، احفظ الصورة الناتجة باستخدام طريقة ()Save.
يوضح نموذج التعليمات البرمجية التالي كيفية تعبئة صورة نقطية بلون خالص باستخدام مستطيل في #C.
// يوضح مثال الكود هذا كيفية إنشاء صورة نقطية جديدة باستخدام مستطيل معبأ في #C.
// تهيئة الصورة النقطية بحجم spefcified
Bitmap bitmap = new Bitmap(500, 500);
// إنشاء رسومات جديدة
Graphics graph = Graphics.FromImage(bitmap);
// حدد مستطيلاً
Rectangle ImageSize = new Rectangle(0, 0, 500, 500);
// ارسم مستطيلاً معبأ
graph.FillRectangle(Brushes.Gray, ImageSize);
// حفظ الملف
bitmap.Save(@"C:\Files\Drawings\output.png");
قم بتحميل صورة في صورة نقطية باستخدام #C
يمكننا أيضًا تحميل صورة موجودة في صورة نقطية وحفظها كصورة نقطية جديدة باتباع الخطوات الواردة أدناه:
- أولاً ، قم بتحميل صورة باستخدام فئة الصور النقطية.
- بعد ذلك ، قم بإنشاء صورة نقطية جديدة باستخدام فئة الصور النقطية بالحجم المحدد.
- بعد ذلك ، قم بإنشاء كائن رسومات جديد من كائن Bitmap الذي تم إنشاؤه حديثًا باستخدام أسلوب ()FromImage.
- بعد ذلك ، قم باستدعاء طريقة ()DrawImage مع إحداثيات الصورة والموقع كوسيطات.
- أخيرًا ، احفظ الصورة الناتجة باستخدام طريقة ()Save.
يوضح نموذج التعليمات البرمجية التالي كيفية تحميل صورة في صورة نقطية باستخدام #C.
// يوضح مثال الكود هذا كيفية تحميل صورة إلى صورة نقطية وحفظها كصورة نقطية جديدة.
// قم بتحميل الصورة:
Bitmap image = new Bitmap(@"C:\Files\Drawings\sample.jpg");
// تهيئة الصورة النقطية بحجم spefcified
Bitmap bitmap = new Bitmap(1000, 1000);
// إنشاء رسومات جديدة
Graphics graphics = Graphics.FromImage(bitmap);
// ارسم الصورة في الموقع المحدد
graphics.DrawImage(image, 10, 10);
// حفظ الملف
bitmap.Save(@"C:\Files\Drawings\output.png");
كيفية تغيير حجم الصورة باستخدام Bitmap في #C
يمكننا تحميل وتغيير حجم صورة موجودة في صورة نقطية وحفظها كصورة نقطية جديدة باتباع الخطوات الواردة أدناه:
- قم بتحميل صورة موجودة باستخدام فئة الصور النقطية.
- قم بإنشاء صورة نقطية جديدة باستخدام فئة الصورة النقطية مع الصورة المحملة والحجم المحدد.
- أخيرًا ، احفظ الصورة الناتجة باستخدام طريقة ()Save.
يوضح نموذج التعليمات البرمجية التالي كيفية تغيير حجم صورة موجودة وحفظها كصورة نقطية جديدة في #C.
// يوضح مثال الكود هذا كيفية إنشاء تغيير حجم صورة موجودة وإنشاء صورة نقطية جديدة في #C.
// قم بتحميل الصورة:
Bitmap image = new Bitmap(@"C:\Files\Drawings\sample.jpg");
// قم بإنشاء صورة نقطية جديدة بنصف حجم الصورة المحملة:
Bitmap bitmap = new Bitmap(image, (int)(image.Width * 0.5), (int)(image.Height * 0.5));
// حفظ الملف
bitmap.Save(@"C:\Files\Drawings\output.jpg");
احصل على رخصة مؤقتة مجانية
يمكنك الحصول على ترخيص مؤقت مجاني لتجربة Aspose.Drawing for .NET بدون قيود تقييم.
استنتاج
في هذه المقالة ، تعلمنا كيفية:
- إنشاء صورة نقطية جديدة ؛
- رسم مستطيل ، قطع ناقص ، إلخ على صورة نقطية ؛
- تحميل صورة موجودة ؛
- تغيير حجم صورة موجودة وإنشاء صورة نقطية جديدة بحجم جديد ؛
- حفظ صورة نقطية من MemoryStream أو صفيف بايت في ملف ؛
- قم بتعيين عرض وارتفاع الصورة النقطية في #C.
إلى جانب إنشاء صورة نقطية جديدة في #C ، يمكنك معرفة المزيد حول Aspose.Drawing for .NET باستخدام التوثيق واستكشاف الميزات المختلفة التي تدعمها واجهة برمجة التطبيقات. في حالة وجود أي غموض ، لا تتردد في الاتصال بنا على منتدى الدعم المجاني.