تُستخدم العلامات المائية في الصور عادةً للمطالبة بملكية المحتوى. من ناحية أخرى ، يتم وضع علامة مائية على الصور لتجنب الاستخدام غير المصرح به أو التزوير. في حالات مختلفة ، قد تحتاج إلى أتمتة ميزة العلامة المائية داخل تطبيقات الويب أو سطح المكتب. لمثل هذه السيناريوهات ، تتناول هذه المقالة كيفية إضافة علامة مائية إلى الصور برمجيًا باستخدام C#. قد يكون هذا مفيدًا أيضًا عندما تحتاج إلى وضع علامة مائية على مجموعة من الصور دفعة واحدة. فلنبدأ.
- C# API لإضافة علامة مائية إلى الصور
- أضف علامة مائية إلى صورة في C#
- أضف علامة مائية قطرية إلى الصور في C#
- احصل على ترخيص API مجاني
C# API لإضافة علامة مائية إلى الصور
لإضافة علامات مائية إلى الصور ، سنستخدم Aspose.Imaging for .NET. إنها واجهة برمجة تطبيقات قوية لمعالجة الصور تدعم مجموعة واسعة من تنسيقات الصور. علاوة على ذلك ، تسهل عليك واجهة برمجة التطبيقات معالجة الصور. يمكنك إما تنزيل ثنائيات API أو تثبيتها باستخدام NuGet.
PM> Install-Package Aspose.Imaging
أضف علامة مائية إلى صورة في C#
فيما يلي خطوات إضافة علامة مائية إلى صورة باستخدام C#.
- قم بتحميل الصورة باستخدام فئة صورة.
- قم بإنشاء مثيل لفئة رسومات وتهيئته باستخدام كائن صورة.
- عيّن عائلة الخط وحجمه ووجهه باستخدام فئة الخط.
- قم بإنشاء مثيل لفئة SolidBrush وضبط خصائصها مثل اللون وما إلى ذلك.
- إنشاء فئة StringFormat لتعيين محاذاة النص.
- أضف علامة مائية إلى الصورة باستخدام طريقة Graphics.DrawString (String، Font، SolidBrush، 0، 0، StringFormat).
- احفظ الصورة باستخدام طريقة Image.Save(String).
يوضح نموذج التعليمات البرمجية التالي كيفية إضافة علامة مائية إلى صورة في C#.
// قم بتحميل صورة PNG موجودة
using (Image image = Image.Load("image.png"))
{
// قم بتعريف كائن سلسلة بنص علامة مائية
string theString = "This is watermark";
// إنشاء وتهيئة مثيل لفئة الرسومات وتهيئة كائن من SizeF لتخزين حجم الصورة
Graphics graphics = new Graphics(image);
SizeF sz = graphics.Image.Size;
// يُنشئ مثيلاً للخط ، قم بتهيئته باستخدام خط الوجه والحجم والنمط
Font font = new Font("Times New Roman", 20, FontStyle.Bold);
// قم بإنشاء مثيل لـ SolidBrush وقم بتعيين خصائصه المختلفة
SolidBrush brush = new SolidBrush();
brush.Color = Color.Red;
brush.Opacity = 0;
// تهيئة كائن من فئة StringFormat وتعيين خصائصه المختلفة
StringFormat format = new StringFormat();
format.Alignment = StringAlignment.Center;
format.FormatFlags = StringFormatFlags.MeasureTrailingSpaces;
// ارسم السلسلة على إخراج حفظ الصورة على القرص
graphics.DrawString(theString, font, brush, 0, 0, format);
image.Save("watermarked.jpg");
}
أضف علامة مائية قطرية إلى الصور في C#
في حالات مختلفة ، يتم تطبيق العلامات المائية على الصور قطريًا. لهذا الغرض ، يسمح لك Aspose.Imaging for .NET بتحويل نص العلامة المائية إلى زاوية معينة. فيما يلي خطوات إضافة علامة مائية قطرية إلى صورة.
- قم بتحميل الصورة باستخدام فئة صورة.
- قم بإنشاء مثيل لفئة رسومات وتهيئته باستخدام كائن صورة.
- عيّن عائلة الخط وحجمه ووجهه باستخدام فئة الخط.
- قم بإنشاء مثيل لفئة SolidBrush وضبط خصائصها مثل اللون وما إلى ذلك.
- إنشاء فئة StringFormat لتعيين محاذاة النص.
- قم بإنشاء مثيل لفئة Matrix وضبط زاوية التحويل.
- قم بتعيين كائن Matrix إلى خاصية Graphics.Transform.
- أضف علامة مائية باستخدام طريقة Graphics.DrawString (String، Font، SolidBrush، 0، 0، StringFormat).
- احفظ الصورة باستخدام طريقة Image.Save(String).
يوضح نموذج التعليمات البرمجية التالي كيفية إضافة علامة مائية قطرية إلى الصور باستخدام C#.
// قم بتحميل صورة PNG موجودة
using (Image image = Image.Load("Image.png"))
{
// قم بتعريف كائن سلسلة بنص علامة مائية
string theString = "45 Degree Rotated Text";
// إنشاء وتهيئة مثيل لفئة الرسومات وتهيئة كائن من SizeF لتخزين حجم الصورة
Graphics graphics = new Graphics(image);
SizeF sz = graphics.Image.Size;
// يُنشئ مثيلاً للخط ، قم بتهيئته باستخدام خط الوجه والحجم والنمط
Font font = new Font("Times New Roman", 20, FontStyle.Bold);
// قم بإنشاء مثيل لـ SolidBrush وقم بتعيين خصائصه المختلفة
SolidBrush brush = new SolidBrush();
brush.Color = Color.Red;
brush.Opacity = 0;
// تهيئة كائن من فئة StringFormat وتعيين خصائصه المختلفة
StringFormat format = new StringFormat();
format.Alignment = StringAlignment.Center;
format.FormatFlags = StringFormatFlags.MeasureTrailingSpaces;
// قم بإنشاء كائن من فئة Matrix للتحويل
Matrix matrix = new Matrix();
// أولا ترجمة ثم تناوب
matrix.Translate(sz.Width / 2, sz.Height / 2);
matrix.Rotate(-45.0f);
// اضبط التحول من خلال المصفوفة
graphics.Transform = matrix;
// ارسم السلسلة على إخراج حفظ الصورة على القرص
graphics.DrawString(theString, font, brush, 0, 0, format);
image.Save("watermarked.png");
}
احصل على ترخيص API مجاني
في حالة رغبتك في تجربة واجهة برمجة التطبيقات بدون قيود تقييمية ، يمكنك الحصول على ترخيص مؤقت مجاني.
استنتاج
في هذه المقالة ، تعلمت كيفية إضافة علامة مائية إلى الصور باستخدام C#. علاوة على ذلك ، رأيت كيفية تحويل نص العلامة المائية إلى زاوية معينة. يمكنك استكشاف المزيد حول واجهة برمجة تطبيقات معالجة الصور C# باستخدام التوثيق. في حال كان لديك أي أسئلة أو استفسارات ، اتصل بنا عبر المنتدى.