MaxDiff

GifOptions.MaxDiff property

الحصول على أو تحديد أقصى فرق بكسل مسموح به. إذا كانت القيمة أكبر من الصفر ، فسيتم استخدام ضغط الفقد . القيمة الموصى بها للضغط الأمثل مع فقدان البيانات هي 80. 30 ضغط خفيف جدًا ، و 200 ثقيل . يعمل بشكل أفضل عند تقديم خسارة قليلة فقط ، وبسبب قيود خوارزمية الضغط مستويات الخسارة العالية جدًا لن تعطي قدرًا كبيرًا من المكاسب . نطاق القيم المسموح بها هو [0 ، 1000] .

public int MaxDiff { get; set; }

أمثلة

يوضح هذا المثال كيفية حفظ صورة BMP بتنسيق GIF باستخدام خيارات متنوعة.

[C#]

string dir = "c:\\temp\\";

using (Aspose.Imaging.Image bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(1000, 1000))
{
    // املأ الصورة بأكملها بالتدرج اللوني الأزرق والأصفر.
    Aspose.Imaging.Brushes.LinearGradientBrush gradientBrush = new Aspose.Imaging.Brushes.LinearGradientBrush(
            new Aspose.Imaging.Point(0, 0),
            new Aspose.Imaging.Point(bmpImage.Width, bmpImage.Height),
            Aspose.Imaging.Color.Blue,
            Aspose.Imaging.Color.Yellow);

    Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(bmpImage);
    graphics.FillRectangle(gradientBrush, bmpImage.Bounds);

    Aspose.Imaging.ImageOptions.GifOptions saveOptions = new Aspose.Imaging.ImageOptions.GifOptions();

    // عدد البتات المطلوبة لتخزين لون ، ناقص 1.
    saveOptions.ColorResolution = 7;

    // تصحيح اللوحة يعني أنه كلما تم تصدير الصورة إلى GIF سيتم تحليل ألوان الصورة المصدر
    // من أجل بناء أفضل لوحة مطابقة (في حالة عدم وجود لوحة الألوان أو عدم تحديدها في الخيارات)
    saveOptions.DoPaletteCorrection = true;

    // قم بتحميل صورة GIF بطريقة تدريجية.
    // لا يعرض GIF المتشابك خطوط المسح الخاصة به خطيًا من أعلى إلى أسفل ، ولكن بدلاً من ذلك يعيد ترتيبها
    // حتى يصبح محتوى GIF واضحًا حتى قبل انتهاء التحميل.
    saveOptions.Interlaced = true;

    // حفظ كملف GIF بدون فقدان.
    using (System.IO.Stream stream = System.IO.File.OpenWrite(dir + "output.gif"))
    {
        bmpImage.Save(stream, saveOptions);
        System.Console.WriteLine("The size of the lossless GIF: {0} bytes.", stream.Length);
    }

    // تعيين أقصى فرق بكسل مسموح به. إذا كانت أكبر من الصفر ، فسيتم استخدام الضغط مع الفقد.
    // القيمة الموصى بها للضغط الأمثل مع فقدان البيانات هي 80. 30 ضغط خفيف جدًا ، و 200 ثقيل.
    saveOptions.MaxDiff = 80;

    // حفظ كملف GIF ضائع.
    using (System.IO.Stream stream = System.IO.File.OpenWrite(dir + "output.lossy.gif"))
    {
        bmpImage.Save(stream, saveOptions);
        System.Console.WriteLine("The size of the lossy GIF: {0} bytes.", stream.Length);
    }
}

// قد يبدو الإخراج كالتالي:
// حجم ملف GIF غير المفقود: 212816 بايت.
// حجم ملف GIF المفقود: 89726 بايت.

أنظر أيضا