تخصيص إعادة تدوير صورة مجموعة، Aspose.تصور إعادة تدوير صورة مجموعة، أمر ضروري لتطبيقات الصورة الثقيلة (كتالوجات التجارة الإلكترونية، المعارض، المواد الغذائية). Aspose.Imaging for .NET يسمح لك تحميل وإعادة تدوير وتشفير الصور بفعالية لتحسين إعادة تدوير الصور .NET مع الحفاظ على رمزك مدعوم بالكامل وعبر المنصة.

مثال كامل


الخطوة 1: اختيار استراتيجية إعادة التدوير المناسبة

اختر استراتيجية تتوافق مع قيود الإنتاج الخاصة بك:

  • مربع الحدود (موصى به للأطفال الصغار): استخدام FitInto صور تناسب داخل targetWidth × targetHeight الـبدون التآكل (يحتفظ بنسبة الجانب).
  • الحجم المطلق (البيكسلات الدقيقة) : استخدم إعادة التكلفة المطلقة إذا كان المستهلكون بحاجة إلى أبعاد ثابتة (يمكن أن يكون تشوه إذا كانت النسبة الجانبية مختلفة).
  • نسبة التوسع : مجهزة للانخفاض الوحيد من أحجام مختلفة (على سبيل المثال، 50٪ من الأصلي).

نصيحة : تداول الصور والبطاقات الاجتماعية،, FitInto عادة ما تكون آمنة.


الخطوة 2: التحكم في الذاكرة والشيينغ

Aspose.Imaging supports configurable caching so large batches don’t overwhelm RAM:

  • تفضيل كاشينغ على القرص للعمل الكبير، معالجة الصور C#، (طريق مدعوم من SSD).
  • حدد مجلد التخزين وحجم الميزانية قبل المعالجة.
// Configure once at startup (example values)
Aspose.Imaging.Cache.CacheType   = Aspose.Imaging.Cache.CacheType.CacheOnDisk;
Aspose.Imaging.Cache.CacheFolder = @"D:\imaging-cache";
Aspose.Imaging.Cache.CacheSize   = 1L * 1024 * 1024 * 1024; // 1 GB

أيضًا :

  • كلها متوفرة Image وبمجرد أن يتم إنقاذها.
  • تجنب الحفاظ على العديد من الصور الزهرة على قيد الحياة في نفس الوقت - عملية لكل ملف.

الخطوة الثالثة: التوازن بأمان

استخدام Parallel.ForEach (كما هو الحال في Gist) ، يجدد صورة متوازية Aspose النهج ، لكنه يرفعها:

  • مجموعة MaxDegreeOfParallelism إلى قيمة حساسة لملفك (أعمدة CPU، سرعة I/O، غرفة الذاكرة).
  • يجب أن تعمل كل مهمة على من تلقاء نفسها الـImage لا تشارك صور الأشياء عبر الأسلاك.
  • الحفاظ على خيارات الترميز الخاصة بك غير قابلة للتغيير لتجنب الارتباك.

التوجيه : ابدأ مع MaxDegreeOfParallelism = Environment.ProcessorCount بعد تعديل الملفات.


الخطوة 4: اختيار الترميزات والجودة عن قصد

  • لـ JPEG النتائج، حجم الملف صوت مقابل. جودة الاستخدام JpegOptions.Quality (المكان المعتاد الحلو: 75 - 90).
  • بالنسبة للأصول التي تتطلب الشفافية أو الإنتاج الخالي من الخسائر، PngOptions بدلاً من ذلك.
  • الحفاظ على تنسيق الناتج متسق لكل حالة استخدام (على سبيل المثال، JPEG للصور، PNG لأصول UI).

الخطوة 5: الفشل في الدائرة القصيرة؛ الحفاظ على التردد في الحركة

قم بتحريك كل ملف في محاولة/التحريك (كما فعلت) وتسجيل المسار + الاستثناء لتحقيق أداء عالي الصورة إعادة تدوير .NET.:

  • إزالة الملفات غير الصورة (تمديد الفلتر إلى الأمام).
  • تسجيل الأصلي والأحجام الناتجة لتأكيد الادخار.
  • كتابة الفشل في CSV لإعادة التشغيل.

الخطوة 6: I/O النظافة

  • تأكد من أن الأدلة الإيجابية موجودة و القرص السريع (SSD).
  • تجنب كتابة النتيجة عن طريق الإدخال؛ اكتب في دليل منفصل.
  • إذا كان لديك الملايين من الملفات، وتجفيف النتائج في المجلدات الفرعية للحفاظ على قائمة الدليل سريعة.

الخطوة 7: التحقق من النتائج مع فحص سريع للصحة

بعد إعادة التدوير :

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

أفضل الممارسات (مراجعة التحقق)

  • كاش : مجموعة CacheType, CacheFolder,وَمَا كَانَ عَلَى CacheSize.
  • التوازن : استخدام Parallel.ForEach مع تونس MaxDegreeOfParallelism;• لا تشارك Image الحالات .
  • متوفر : دائما متوفرة Image عاجلاً.
  • الرمز : استخدام JpegOptions.Quality في JPEG؛ انتقل إلى PngOptions في الفائدة / ألف.
  • I/O: أصل الدخول / الخروج منفصلة؛ السجلات المسبقة.
  • تصفية : يقتصر على التمديدات المعروفة للصورة قبل تحميلها.
  • تسجيل الدخول : تسجيل الفشل والميثاق الأساسي (العدد، MB في / خارج).
  • تحديثات : الحفاظ على Aspose.تحديث التحديثات للحصول على تحسينات الأداء المستمرة.

More in this category