عندما تكون هناك حاجة إلى الشفافية في الصور على الويب ، فإن PNG هي أحد التنسيقات التي تتبادر إلى الذهن. تعد صورة SVG أيضًا واحدة من تنسيقات الصور الشائعة الاستخدام نظرًا لقابليتها للتوسع. لعرض الصور الثابتة الصغيرة والشعارات وللصور ذات الخلفيات الشفافة ، غالبًا ما يُفضل استخدام صور PNG. نظرًا للتوافق أو لأي سبب آخر ، غالبًا ما يكون مطلوبًا تحويل رسومات SVG المتجهة إلى تنسيقات أخرى. تتناول هذه المقالة كيفية تحويل رسومات SVG المتجهة إلى صور PNG باستخدام C#.

تحويل SVG إلى PNG باستخدام C# (تدرج الرمادي ، تدوير ، انعكاس ، علامة مائية ساطعة)

NET API لتحويل الصور

تعمل GroupDocs على تمكين المطورين من خلال واجهة برمجة تطبيقات التحويل لتحويل تنسيقات الصور إلى تنسيقات أخرى متنوعة. يمكن أيضًا تغيير الصورة المحولة أثناء عملية التحويل باستخدام خيارات متقدمة مختلفة. في هذه المقالة ، سأستخدم GroupDocs.Conversion for .NET لتحويل صورة SVG المتجهة إلى صور PNG.

يمكنك تنزيل مثبت DLL أو MSI من قسم التنزيلات أو تثبيت API عن طريق إضافة الحزمة الخاصة به إلى تطبيق .NET عبر NuGet.

PM> Install-Package GroupDocs.Conversion

أمثلة تشغيل لميزاته متاحة أيضًا على GitHub. تفضل بزيارة الوثائق و مرجع API للحصول على إرشادات.

تحويل SVG إلى صورة PNG باستخدام C#

لنبدأ بتحويل الرسومات المتجهة إلى تنسيق PNG باستخدام الإعدادات الافتراضية. توضح الخطوات التالية كيفية تحويل صورة SVG إلى PNG باستخدام C#.

  • قم بتحميل ملف SVG باستخدام فئة المحول.
  • جهز خيارات تحويل الصورة.
  • قم بتعيين نوع ملف التحويل على أنه PNG.
  • استدعاء طريقة التحويل () مع الخيارات المعدة.

يحول الكود المصدري C# التالي SVG إلى صورة PNG.

// كيفية تحويل ملف SVG إلى تنسيق PNG في C# باستخدام .NET Conversion API مع الخيارات الافتراضية
using (Converter converter = new Converter("path/vector-graphics.svg"))
{
    ImageConvertOptions options = new ImageConvertOptions
    {
        Format = ImageFileType.Png
    };
    converter.Convert("path/svg-to-png.png", options);
}

SVG إلى صورة PNG باستخدام خيارات متقدمة باستخدام C#

يمكن تطبيق تخصيصات مختلفة على إخراج PNG أثناء تحويل الرسومات المتجهة. فيما يلي بعض ميزات صورة PNG التي يمكننا تعديلها:

  • سطوع
  • التباين
  • جاما
  • تدرج الرمادي
  • وضع الانعكاس (أفقي / عمودي)
  • زوايا الدوران
  • ارتفاع
  • عرض
  • علامة مائية

توضح الخطوات التالية كيفية تحويل صورة SVG إلى PNG ، وتطبيق المزيد من التعديلات على ملف PNG الناتج.

  • قم بتحميل رسم SVG باستخدام فئة المحول.
  • جهز خيارات تحويل الصورة.
  • قم بتعيين نوع ملف التحويل على أنه PNG.
  • تحديد التخصيصات الانتقائية وضبط قيمها.
  • قم بالتحويل إلى صورة PNG باستخدام طريقة التحويل () مع الخيارات المعدة.

يطبق كود المصدر التالي التخصيص في SVG لتحويل PNG باستخدام C#. يمكنك تطبيق أي من هذه التأثيرات أو مجموعة من التأثيرات لمخرجات PNG المطلوبة.

// قم بتحويل ملف SVG إلى تنسيق PNG في C# باستخدام تخصيصات متنوعة
using (Converter converter = new Converter("path/vector-graphics.svg"))
{
    ImageConvertOptions options = new ImageConvertOptions
    {
        Format = ImageFileType.Png,
        FlipMode = ImageFlipModes.FlipY,
        RotateAngle = 45, 
        Grayscale = true
        /*
        Brightness = 50,
        Contrast = 50,
        Gamma = 0.5F,
        */
    };
    // تطبيق علامة مائية على الصورة المحولة
    WatermarkOptions watermark = new WatermarkTextOptions("Watermark")
    {
        Color = Color.Blue,
        Width = 150,
        Height = 150,
        Background = false,
        Top = 50,
        Left = 50,
        RotationAngle = -45,
        Transparency = 50,
    };
    options.Watermark = watermark;
    
    converter.Convert("path/svg-to-png-customized.png", options);
}

احصل على ترخيص API مجاني

يمكنك الحصول على ترخيص مؤقت مجاني لاستخدام واجهة برمجة التطبيقات بدون قيود التقييم.

استنتاج

دعونا نختتم. لقد تعلمنا الأساس والتحويل المتقدم القليل لرسومات SVG المتجهة إلى تنسيق PNG باستخدام C# داخل تطبيقات .NET. تعلمنا أيضًا كيفية تدوير أو قلب أو إضافة علامة مائية إلى ملفات SVG عند تحويلها إلى تنسيق PNG. بالإضافة إلى ذلك ، تعلمنا ضبط جاما والسطوع ، وكيفية تشغيل وإيقاف خيارات التدرج الرمادي.

جرب تشغيل أمثلة من GitHub ستساعدك على إنشاء محول SVG إلى PNG مماثل لتلك المتوفرة في groupdocs.app. اتصل بنا لأي استفسار عبر المنتدى.

أنظر أيضا