الفئة JpegOptions
محتويات
[
يخفي
]JpegOptions class
أنشئ صور JPEG عالية الجودة بسهولة باستخدام واجهة برمجة التطبيقات الخاصة بنا، حيث توفر مستويات ضغط قابلة للتعديل لتحسين حجم التخزين دون المساس بجودة الصورة. استفد من الدعم لأنواع مختلفة من الضغط، الترميز شبه غير الفاقد، ملفات تعريف الألوان RGB و CMYK، بالإضافة إلى بيانات EXIF و JFIF، وحاويات XMP، مما يضمن خيارات متعددة وقابلة للتخصيص لإنشاء الصور وفقًا لاحتياجاتك.
public class JpegOptions : ImageOptionsBase, IHasJpegExifData
المنشئات
| الاسم | الوصف |
|---|---|
| JpegOptions() | يُهيئ مثيلاً جديدًا من الفئة JpegOptions. |
| JpegOptions(JpegOptions) | يُهيئ مثيلاً جديدًا من الفئة JpegOptions. |
الخصائص
| الاسم | الوصف |
|---|---|
| BitsPerChannel { get; set; } | يحصل أو يضبط عدد البتات لكل قناة في صورة JPEG غير مضغوطة. الآن ندعم من 2 إلى 8 بتات لكل قناة. |
| BufferSizeHint { get; set; } | الحصول على أو تعيين تلميح حجم المخزن المؤقت الذي يحدد الحد الأقصى المسموح به لجميع المخازن الداخلية. |
| CmykColorProfile { get; set; } | ملف تعريف اللون CMYK الوجهة لصور JPEG بنظام CMYK. يُستخدم لحفظ الصور. يجب أن يكون مقترنًا بملف تعريف اللون RGBColorProfile للتحويل اللوني الصحيح. |
| ColorType { get; set; } | يحصل أو يضبط نوع اللون لصورة JPEG. |
| Comment { get; set; } | يحصل أو يضبط تعليق ملف JPEG. |
| CompressionType { get; set; } | يحصل أو يضبط نوع الضغط. |
| Disposed { get; } | يحصل على قيمة تشير إلى ما إذا كان هذا المثال تم التخلص منه. |
| ExifData { get; set; } | احصل أو اضبط حاوية بيانات Exif. |
| virtual ExifData { get; set; } | الحصول على أو تعيين بيانات Exif. |
| FullFrame { get; set; } | يحصل أو يضبط قيمة تشير إلى ما إذا كان [full frame]. |
| HorizontalSampling { get; set; } | يحصل أو يضبط العينات الفرعية الأفقية لكل مكوّن. |
| Jfif { get; set; } | يحصل أو يضبط الـ jfif. |
| JpegLsAllowedLossyError { get; set; } | يحصل أو يضبط حد الفرق في JPEG-LS للترميز القريب من فقدان البيانات (معامل NEAR من مواصفة JPEG-LS). |
| JpegLsInterleaveMode { get; set; } | يحصل أو يضبط وضع التداخل في JPEG-LS. |
| JpegLsPreset { get; set; } | يحصل أو يضبط معلمات الإعداد المسبق لـ JPEG-LS. |
| KeepMetadata { get; set; } | يحصل على قيمة ما إذا كان يجب الاحتفاظ ببيانات تعريف الصورة الأصلية عند التصدير. |
| MultiPageOptions { get; set; } | خيارات الصفحات المتعددة |
| virtual Palette { get; set; } | يحصل أو يضبط لوحة الألوان. |
| PreblendAlphaIfPresent { get; set; } | يحصل أو يضبط قيمة تشير إلى ما إذا كان يجب خلط مكونات الأحمر والأخضر والأزرق مع لون الخلفية، إذا كان هناك قناة ألفا. |
| ProgressEventHandler { get; set; } | يحصل أو يضبط معالج حدث التقدم. |
| Quality { get; set; } | يحصل أو يضبط جودة الصورة. |
| RdOptSettings { get; set; } | يحصل أو يضبط إعدادات مُحسّن RD. |
| virtual ResolutionSettings { get; set; } | يحصل أو يضبط إعدادات الدقة. |
| ResolutionUnit { get; set; } | الحصول أو تعيين وحدة الدقة. |
| RgbColorProfile { get; set; } | ملف تعريف اللون RGB الوجهة لصور JPEG بنظام CMYK. يُستخدم لحفظ الصور. يجب أن يكون مقترنًا بـ CMYKColorProfile للتحويل اللوني الصحيح. |
| SampleRoundingMode { get; set; } | يحصل أو يعيّن وضع تقريب العينة لتلائم قيمة 8-بت إلى قيمة n-بت. BitsPerChannel |
| ScaledQuality { get; } | الجودة المُقاسة. |
| Source { get; set; } | يحصل أو يضبط المصدر لإنشاء الصورة فيه. |
| VectorRasterizationOptions { get; set; } | يحصل أو يضبط خيارات تحويل المتجه إلى نقطية. |
| VerticalSampling { get; set; } | يحصل أو يعيّن عمليات التقليل العمودي لكل مكوّن. |
| virtual XmpData { get; set; } | يحصل أو يضبط حاوية بيانات تعريف XMP. |
الطرق
| الاسم | الوصف |
|---|---|
| virtual Clone() | ينشئ نسخة عضوية من هذه الحالة. |
| Dispose() | يتخلص من المثيل الحالي. |
| TrySetMetadata(IImageMetadataFormat) | يحاول تعيين مثيل metadata، إذا كان مثيل Image يدعم ويطبق مثيل IImageMetadataFormat. |
أمثلة
يوضح هذا المثال استخدام System.IO.Stream لإنشاء ملف صورة جديد (نوع JPEG).
[C#]
//ينشئ مثيلًا من JpegOptions ويضبط خصائصه المتنوعة.
Aspose.Imaging.ImageOptions.JpegOptions jpegOptions = new Aspose.Imaging.ImageOptions.JpegOptions();
//إنشاء مثيل من System.IO.Stream
System.IO.Stream stream = new System.IO.FileStream(@"C:\temp\sample.jpeg", System.IO.FileMode.Create);
//حدد خاصية المصدر للمثيل من JpegOptions.
//المعامل المنطقي الثاني يحدد ما إذا كان سيتم التخلص من الـ Stream بمجرد الخروج من النطاق.
jpegOptions.Source = new Aspose.Imaging.Sources.StreamSource(stream, true);
//ينشئ مثيلًا من Image ويستدعي طريقة Create مع JpegOptions كمعامل لتهيئة كائن Image.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Create(jpegOptions, 500, 500))
{
//قم ببعض معالجة الصورة.
}
يوضح هذا المثال استخدام فئات مختلفة من مساحة الأسماء SaveOptions لأغراض التصدير. يتم تحميل صورة من نوع Gif في مثيل من الفئة Image ثم يتم تصديرها إلى عدة تنسيقات.
[C#]
string dir = "c:\\temp\\";
//حمّل صورة موجودة (من نوع Gif) في مثيل من الفئة Image
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
{
//تصدير إلى تنسيق ملف BMP باستخدام الخيارات الافتراضية
image.Save(dir + "output.bmp", new Aspose.Imaging.ImageOptions.BmpOptions());
//تصدير إلى تنسيق ملف JPEG باستخدام الخيارات الافتراضية
image.Save(dir + "output.jpg", new Aspose.Imaging.ImageOptions.JpegOptions());
//تصدير إلى تنسيق ملف PNG باستخدام الخيارات الافتراضية
image.Save(dir + "output.png", new Aspose.Imaging.ImageOptions.PngOptions());
//تصدير إلى تنسيق ملف TIFF باستخدام الخيارات الافتراضية
image.Save(dir + "output.tif", new Aspose.Imaging.ImageOptions.TiffOptions(Aspose.Imaging.FileFormats.Tiff.Enums.TiffExpectedFormat.Default));
}
يوضح المثال التالي كيفية تحويل صورة متجه متعددة الصفحات إلى تنسيق JPEG بطريقة عامة دون الإشارة إلى نوع صورة معين.
[C#]
string dir = "C:\\aspose.imaging\\net\\misc\\ImagingReleaseQATester\\Tests\\testdata\\2548";
string inputFilePath = System.IO.Path.Combine(dir, "Multipage.cdr");
string outputFilePath = System.IO.Path.Combine(dir, "Multipage.cdr.jpeg");
Aspose.Imaging.ImageOptionsBase exportOptions = new Aspose.Imaging.ImageOptions.JpegOptions();
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(inputFilePath))
{
exportOptions.MultiPageOptions = null;
// تصدير الصفحتين الأوليين فقط. في الواقع، سيتم تحويل صفحة واحدة فقط إلى نقطية لأن JPEG ليس تنسيقًا متعدد الصفحات.
Aspose.Imaging.IMultipageImage multipageImage = image as Aspose.Imaging.IMultipageImage;
if (multipageImage != null && (multipageImage.Pages != null && multipageImage.PageCount > 2))
{
exportOptions.MultiPageOptions = new Aspose.Imaging.ImageOptions.MultiPageOptions(new Aspose.Imaging.IntRange(0, 2));
}
if (image is Aspose.Imaging.VectorImage)
{
exportOptions.VectorRasterizationOptions = (Aspose.Imaging.ImageOptions.VectorRasterizationOptions)image.GetDefaultOptions(new object[] { Aspose.Imaging.Color.White, image.Width, image.Height });
exportOptions.VectorRasterizationOptions.TextRenderingHint = Aspose.Imaging.TextRenderingHint.SingleBitPerPixel;
exportOptions.VectorRasterizationOptions.SmoothingMode = Aspose.Imaging.SmoothingMode.None;
}
image.Save(outputFilePath, exportOptions);
}
انظر أيضًا
- class ImageOptionsBase
- interface IHasJpegExifData
- namespace Aspose.Imaging.ImageOptions
- assembly Aspose.Imaging