
تغيير حجم الصور هو عملية شائعة في معالجة الصور، مفيدة في سيناريوهات مختلفة مثل إعداد الصور للنشر على الويب، الصور المصغرة، أو تقليل حجم الملفات. في هذه المقالة، سنستكشف كيفية تغيير حجم الصور في C#. ستتعلم كيفية تغيير حجم الصور النقطية مثل JPG أو PNG، إجراء تغيير الحجم النسبي، ومعالجة الصور المتجهة مثل SVG بدقة.
لماذا يجب تغيير حجم الصور في C#؟
تغيير حجم الصور برمجياً يمنحك القدرة على أتمتة وتوسيع مهام معالجة الصور دون تدخل يدوي. فيما يلي بعض الأسباب التي تجعل ذلك ضرورياً:
- يساعد على تحسين أحجام الصور لتقليل أوقات التحميل واستخدام النطاق الترددي في تطبيقات الويب.
- يضمن عرضًا متسقًا عبر منصات وأحجام شاشات مختلفة.
- يساعد في إنشاء معاينات الصور والصور المصغرة ديناميكيًا.
- يتيح تعديلات تلقائية على الصور في سير العمل مثل إنشاء الوثائق أو الأرشفة أو النشر.
تغيير حجم الصور - تثبيت واجهة برمجة التطبيقات C#
يمكنك تثبيت أحدث إصدار مستقر من Conholdate.Total for .NET باستخدام أمر التثبيت NuGet التالي في نظامك:
PM> NuGet\Install-Package Conholdate.Total
إعادة حجم الصور في C#
دعنا نبدأ بتغيير حجم الصور النقطية الأساسية مثل JPGs باستخدام أبعاد ثابتة في C#. فقط اتبع الخطوات أدناه:
- قم بتحميل صورة JPG من الملف باستخدام Image.Load().
- استدعِ طريقة Resize() لتعيين العرض والارتفاع إلى 300 بكسل لكلٍ منهما.
- احفظ الصورة المعاد تغيير حجمها باستخدام image.Save().
الكود المثال أدناه يوضح تغيير حجم الصورة في C#:
// تحميل الصورة
using (Image image = Image.Load("aspose-logo.jpg"))
{
// قم بتغيير حجم الصورة وحفظ الصورة المعدلة الحجم
image.Resize(300, 300);
image.Save("SimpleResizing_out.jpg");
}
تغيير حجم الصور بشكل متناسب في C#
توضح هذه section كيفية تغيير حجم صورة PNG مع الحفاظ على نسبة العرض إلى الارتفاع الأصلية في C#.
- قم بتحميل صورة PNG باستخدام Image.Load().
- تحقق مما إذا كانت الصورة مخزنة مؤقتًا؛ إذا لم يكن الأمر كذلك، قم باستدعاء CacheData() من أجل الأداء.
- قسّم العرض والارتفاع الحاليين على 2 لحساب الأبعاد النسبية الجديدة.
- استخدم ResizeWidthProportionally() و ResizeHeightProportionally() للحفاظ على نسبة العرض إلى الارتفاع.
- احفظ الصورة المعاد تغيير حجمها باستخدام طريقة image.Save().
تُظهر مقتطفات الشيفرة التالية تغيير حجم الصورة بشكل نسبي في C#:
// تحميل الصورة
using (Image image = Image.Load("aspose-logo.png"))
{
// تخزين بيانات الصور
if (!image.IsCached)
{
image.CacheData();
}
// حدد العرض والارتفاع
int newWidth = image.Width / 2;
image.ResizeWidthProportionally(newWidth);
int newHeight = image.Height / 2;
image.ResizeHeightProportionally(newHeight);
// حفظ الصورة
image.Save("ResizeImageProportionally_out.png");
تغيير حجم صور المتجهات في C#
هذا المثال يوضح كيفية تغيير حجم صورة متجهية (SVG) في C#::
- تحميل صورة متجهة SVG باستخدام Image.Load().
- اضرب العرض الحالي والارتفاع في عوامل التحجيم (10 و 15).
- استدعاء Resize() مع العرض والارتفاع الجديدين.
- احفظ الصورة المعدلة كـ PNG باستخدام image.Save() مع PngOptions.
- حدد SvgRasterizationOptions لضمان العرض الصحيح لصورة المتجه.
عينة الشيفرة أدناه تشرح كيفية تغيير حجم صور المتجهات في C#:
// Load image
using (Image image = Image.Load("image.svg"))
{
// إعادة حجم الصورة كـ PNG
image.Resize(image.Width * 10,image.Height * 15);
image.Save("Logotype_10_15.png", new PngOptions()
{
VectorRasterizationOptions = new SvgRasterizationOptions()
});
}
رخصة تقييم مجانية
يمكنك تقييم هذه بالإضافة إلى العديد من الميزات الأخرى التي تقدمها واجهة برمجة التطبيقات عن طريق الحصول على رخصة مؤقتة مجانية.
تلخيص
تغيير حجم الصور هو وظيفة أساسية للتطبيقات التي تدير أو تعرض أو تصدر المحتوى المرئي. مع Conholdate.Total لـ .NET ، يصبح تغيير حجم الصور في C# فعالًا وودودًا للمطورين. إنه يدعم مجموعة متنوعة من التنسيقات ويوفر تحكمًا دقيقًا في سلوك تغيير الحجم، سواء كنت تعمل مع أبعاد ثابتة، أو تحافظ على نسب العرض إلى الارتفاع، أو تقوم بتحويل الصور المتجهة. ومع ذلك، إذا كانت لديك أي أسئلة، فلا تتردد في التواصل معنا على forum.