Class JpegImage
اسم الفضاء : Aspose.Imaging.FileFormats.Jpeg تجميع: Aspose.Imaging.dll (25.4.0)
التعامل بفعالية مع صور JPEG مع API لدينا، وتوفير الدعملمختلف ملفات تعريف الألوان مثل RGB و CMYK ، يمكن تخصيص البيتات لكل بكسلحل ومعالجة حاويات EXIF و JFIF و XMP.استمتع بالدوران التلقائي استنادا إلى بيانات التوجه واختر من بينمستويات الضغط، بما في ذلك JPEG بلا خسائر، لتحقيق جودة الصورة المثلىوتسجيل حجم التوازن لمشاريعك.
[JsonObject(MemberSerialization.OptIn)]
public sealed class JpegImage : RasterCachedImage, IDisposable, IObjectWithBounds, IRasterImageArgb32PixelLoader, IRasterImageRawDataLoader, IHasXmpData, IHasJpegExifData, IHasExifData, IHasMetadata
Inheritance
object ← DisposableObject ← DataStreamSupporter ← Image ← RasterImage ← RasterCachedImage ← JpegImage
Implements
IDisposable , IObjectWithBounds , IRasterImageArgb32PixelLoader , IRasterImageRawDataLoader , IHasXmpData , IHasJpegExifData , IHasExifData , IHasMetadata
الأعضاء الموروثين
RasterCachedImage.CacheData() , RasterCachedImage.Blend(Point, RasterImage, Rectangle, byte) , RasterCachedImage.Resize(int, int, ResizeType) , RasterCachedImage.Resize(int, int, ImageResizeSettings) , RasterCachedImage.RotateFlip(RotateFlipType) , RasterCachedImage.Rotate(float, bool, Color) , RasterCachedImage.Crop(Rectangle) , RasterCachedImage.Dither(DitheringMethod, int, IColorPalette) , RasterCachedImage.Grayscale() , RasterCachedImage.NormalizeHistogram() , RasterCachedImage.BinarizeFixed(byte) , RasterCachedImage.BinarizeOtsu() , RasterCachedImage.BinarizeBradley(double, int) , RasterCachedImage.BinarizeBradley(double) , RasterCachedImage.AdjustBrightness(int) , RasterCachedImage.AdjustContrast(float) , RasterCachedImage.AdjustGamma(float, float, float) , RasterCachedImage.AdjustGamma(float) , RasterCachedImage.IsCached , RasterImage.RemoveMetadata() , RasterImage.Save(Stream, ImageOptionsBase, Rectangle) , RasterImage.GetModifyDate(bool) , RasterImage.Dither(DitheringMethod, int) , RasterImage.Dither(DitheringMethod, int, IColorPalette) , RasterImage.GetDefaultPixels(Rectangle, IPartialArgb32PixelLoader) , RasterImage.GetDefaultRawData(Rectangle, IPartialRawDataLoader, RawDataSettings) , RasterImage.GetDefaultArgb32Pixels(Rectangle) , RasterImage.GetDefaultRawData(Rectangle, RawDataSettings) , RasterImage.GetArgb32Pixel(int, int) , RasterImage.GetPixel(int, int) , RasterImage.SetArgb32Pixel(int, int, int) , RasterImage.SetPixel(int, int, Color) , RasterImage.ReadScanLine(int) , RasterImage.ReadArgb32ScanLine(int) , RasterImage.WriteScanLine(int, Color[]) , RasterImage.WriteArgb32ScanLine(int, int[]) , RasterImage.LoadPartialArgb32Pixels(Rectangle, IPartialArgb32PixelLoader) , RasterImage.LoadPartialPixels(Rectangle, IPartialPixelLoader) , RasterImage.LoadArgb32Pixels(Rectangle) , RasterImage.LoadArgb64Pixels(Rectangle) , RasterImage.LoadPartialArgb64Pixels(Rectangle, IPartialArgb64PixelLoader) , RasterImage.LoadPixels(Rectangle) , RasterImage.LoadCmykPixels(Rectangle) , RasterImage.LoadCmyk32Pixels(Rectangle) , RasterImage.LoadRawData(Rectangle, RawDataSettings, IPartialRawDataLoader) , RasterImage.LoadRawData(Rectangle, Rectangle, RawDataSettings, IPartialRawDataLoader) , RasterImage.SaveRawData(byte[], int, Rectangle, RawDataSettings) , RasterImage.SaveArgb32Pixels(Rectangle, int[]) , RasterImage.SavePixels(Rectangle, Color[]) , RasterImage.SaveCmykPixels(Rectangle, CmykColor[]) , RasterImage.SaveCmyk32Pixels(Rectangle, int[]) , RasterImage.SetResolution(double, double) , RasterImage.SetPalette(IColorPalette, bool) , RasterImage.Resize(int, int, ImageResizeSettings) , RasterImage.Rotate(float, bool, Color) , RasterImage.Rotate(float) , RasterImage.BinarizeFixed(byte) , RasterImage.BinarizeOtsu() , RasterImage.BinarizeBradley(double) , RasterImage.BinarizeBradley(double, int) , RasterImage.Blend(Point, RasterImage, Rectangle, byte) , RasterImage.Blend(Point, RasterImage, byte) , RasterImage.Grayscale() , RasterImage.NormalizeHistogram() , RasterImage.AdjustBrightness(int) , RasterImage.AdjustContrast(float) , RasterImage.AdjustGamma(float, float, float) , RasterImage.AdjustGamma(float) , RasterImage.GetSkewAngle() , RasterImage.NormalizeAngle() , RasterImage.NormalizeAngle(bool, Color) , RasterImage.Filter(Rectangle, FilterOptionsBase) , RasterImage.ReplaceColor(Color, byte, Color) , RasterImage.ReplaceColor(int, byte, int) , RasterImage.ReplaceNonTransparentColors(Color) , RasterImage.ReplaceNonTransparentColors(int) , RasterImage.ToBitmap() , RasterImage.PremultiplyComponents , RasterImage.UseRawData , RasterImage.UpdateXmpData , RasterImage.XmpData , RasterImage.RawIndexedColorConverter , RasterImage.RawCustomColorConverter , RasterImage.RawFallbackIndex , RasterImage.RawDataSettings , RasterImage.UsePalette , RasterImage.RawDataFormat , RasterImage.RawLineSize , RasterImage.IsRawDataAvailable , RasterImage.HorizontalResolution , RasterImage.VerticalResolution , RasterImage.HasTransparentColor , RasterImage.HasAlpha , RasterImage.TransparentColor , RasterImage.ImageOpacity , Image.CanLoad(string) , Image.CanLoad(string, LoadOptions) , Image.CanLoad(Stream) , Image.CanLoad(Stream, LoadOptions) , Image.Create(ImageOptionsBase, int, int) , Image.Create(Image[]) , Image.Create(MultipageCreateOptions) , Image.Create(string[], bool) , Image.Create(string[]) , Image.Create(Image[], bool) , Image.GetFileFormat(string) , Image.GetFileFormat(Stream) , Image.GetFittingRectangle(Rectangle, int, int) , Image.GetFittingRectangle(Rectangle, int[], int, int) , Image.Load(string, LoadOptions) , Image.Load(string) , Image.Load(Stream, LoadOptions) , Image.Load(Stream) , Image.GetProportionalWidth(int, int, int) , Image.GetProportionalHeight(int, int, int) , Image.RemoveMetadata() , Image.CanSave(ImageOptionsBase) , Image.Resize(int, int) , Image.Resize(int, int, ResizeType) , Image.Resize(int, int, ImageResizeSettings) , Image.GetDefaultOptions(object[]) , Image.GetOriginalOptions() , Image.ResizeWidthProportionally(int) , Image.ResizeHeightProportionally(int) , Image.ResizeWidthProportionally(int, ResizeType) , Image.ResizeHeightProportionally(int, ResizeType) , Image.ResizeWidthProportionally(int, ImageResizeSettings) , Image.ResizeHeightProportionally(int, ImageResizeSettings) , Image.RotateFlip(RotateFlipType) , Image.Rotate(float) , Image.Crop(Rectangle) , Image.Crop(int, int, int, int) , Image.Save() , Image.Save(string) , Image.Save(string, ImageOptionsBase) , Image.Save(string, ImageOptionsBase, Rectangle) , Image.Save(Stream, ImageOptionsBase) , Image.Save(Stream, ImageOptionsBase, Rectangle) , Image.GetSerializedStream(ImageOptionsBase, Rectangle, out int) , Image.SetPalette(IColorPalette, bool) , Image.BitsPerPixel , Image.Bounds , Image.Container , Image.Height , Image.Palette , Image.UsePalette , Image.Size , Image.Width , Image.InterruptMonitor , Image.BufferSizeHint , Image.AutoAdjustPalette , Image.HasBackgroundColor , Image.FileFormat , Image.BackgroundColor , DataStreamSupporter.CacheData() , DataStreamSupporter.Save() , DataStreamSupporter.Save(Stream) , DataStreamSupporter.Save(string) , DataStreamSupporter.Save(string, bool) , DataStreamSupporter.DataStreamContainer , DataStreamSupporter.IsCached , DisposableObject.Dispose() , DisposableObject.Disposed , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Examples
الوصول إلى ملاحظات المصنع الكاميرا في صورة Jpeg.
using (var image = (JpegImage)Image.Load("Sample.jpg"))
{
foreach (var makerNote in image.ExifData.MakerNotes)
{
Console.WriteLine("Name = {0}, Value = {1}", makerNote.Name, makerNote.Value);
}
}
يظهر المثال كيفية تحميل JpegImage من ملف.
string dir = "c:\\temp\\";
// Load a JPEG image from a file.
using (Aspose.Imaging.FileFormats.Jpeg.JpegImage jpegImage = new Aspose.Imaging.FileFormats.Jpeg.JpegImage(dir + "sample.jpg"))
{
// Do some image processing.
// Save to another JPEG file.
jpegImage.Save(dir + "sample.output.jpg");
}
Constructors
JpegImage(الستار)
يبدأ فئة Aspose.Imaging.FileFormats.Jpeg.JpegImage بسهولة من خلال استدعاءالبناء مع المعايير المحددة الطريق.هذا البناء يسمح بلا ملامحإنشاء صور JPEG، لضمان التكامل السريع في مشاريعك بسهولة.
public JpegImage(string path)
Parameters
path
string
الطريق إلى تحميل الصورة من وبدء البيانات بكسل وباليه مع.
Examples
يظهر المثال كيفية تحميل JpegImage من ملف.
string dir = "c:\\temp\\";
// Load a JPEG image from a file.
using (Aspose.Imaging.FileFormats.Jpeg.JpegImage jpegImage = new Aspose.Imaging.FileFormats.Jpeg.JpegImage(dir + "sample.jpg"))
{
// Do some image processing.
// Save to another JPEG file.
jpegImage.Save(dir + "sample.output.jpg");
}
JpegImage(Stream)
يبدأ كائن صورة JPEG باستخدام فئة Aspose.Imaging.FileFormats.Jpeg.JpegImage باستخدامهذا البناء يسهل عملية العمل مع JPEGصور، وتوفير نهج بسيط لدمجها في مشاريعكبسهولة .
public JpegImage(Stream stream)
Parameters
stream
Stream
يتدفق لتحميل الصورة من وبدء البيانات بكسل وباليه مع.
Examples
يظهر المثال كيفية تحميل JpegImage من تدفق الملفات.
string dir = "c:\\temp\\";
// Load a JPEG image from a file stream.
using (System.IO.Stream stream = System.IO.File.OpenRead(dir + "sample.jpg"))
{
using (Aspose.Imaging.FileFormats.Jpeg.JpegImage jpegImage = new Aspose.Imaging.FileFormats.Jpeg.JpegImage(stream))
{
// Do some image processing.
// Save to another JPEG file.
jpegImage.Save(dir + "sample.output.jpg");
}
}
JpegImage(RasterImage)
إطلاق مثال جديد من فئة Aspose.Imaging.FileFormats.Jpeg.JpegImage مع صورة راسترهذا البناء يوفر وسيلة مريحة لإنشاء صور JPEGمباشرة من صور راستر، وتسريع تدفق العمل للعمل مع صور JPEGفي تطبيقاتك
public JpegImage(RasterImage rasterImage)
Parameters
rasterImage
RasterImage
الصورة لتسليط الضوء على البيانات البلاستيكية والبكسل مع.
Examples
يظهر المثال كيفية تحميل JpegImage من RasterImage آخر.
string dir = "c:\\temp\\";
// Load a JPEG image from another raster image.
// First, create a temporal PNG image that will be a foundation for building a JPEG image.
// You can also load PNG image from a file or use an image of any other raster format.
Aspose.Imaging.ImageOptions.PngOptions createOptions = new Aspose.Imaging.ImageOptions.PngOptions();
createOptions.Source = new Aspose.Imaging.Sources.StreamSource(new System.IO.MemoryStream(), false);
using (Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Create(createOptions, 100, 100))
{
// Fill the entire PNG image in red.
Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(rasterImage);
Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
graphics.FillRectangle(brush, rasterImage.Bounds);
// Create a JPEG image based on the PNG image.
using (Aspose.Imaging.FileFormats.Jpeg.JpegImage jpegImage = new Aspose.Imaging.FileFormats.Jpeg.JpegImage(rasterImage))
{
// Save to a JPEG file
jpegImage.Save(dir + "output.jpg");
}
}
JpegImage(إنت، إنت)
إنشاء مثال جديد من فئة Aspose.Imaging.FileFormats.Jpeg.JpegImage مع العرض المحددهذا البناء يسمح لك لإنشاء صور JPEG معالأبعاد المخصصة ، مما يتيح لك المرونة في إدارة أحجام الصورة في تطبيقك.
public JpegImage(int width, int height)
Parameters
width
int
عرض الصورة .
height
int
ارتفاع الصورة .
Examples
يظهر المثال التالي كيفية إنشاء صورة JPEG من الحجم المحدد.
string dir = "c:\\temp\\";
// Create a JPEG image of 100x100 px.
using (Aspose.Imaging.FileFormats.Jpeg.JpegImage jpegImage = new Aspose.Imaging.FileFormats.Jpeg.JpegImage(100, 100))
{
// Do some image processing.
// Save to a file.
jpegImage.Save(dir + "output.jpg");
}
في المثال التالي ، يتم تحميل صورة BMP وتخزينها إلى JPEG باستخدام خيارات التخزين المختلفة.
string dir = "c:\\temp\\";
// Load a BMP image from a file.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.bmp"))
{
// Do some image processing.
// Use additional options to specify the desired image parameters.
Aspose.Imaging.ImageOptions.JpegOptions saveOptions = new Aspose.Imaging.ImageOptions.JpegOptions();
// The number of bits per channel is 8.
// When a palette is used, the color index is stored in the image data instead of the color itself.
saveOptions.BitsPerChannel = 8;
// Set the progressive type of compression.
saveOptions.CompressionType = Aspose.Imaging.FileFormats.Jpeg.JpegCompressionMode.Progressive;
// Set the image quality. It is a value between 1 and 100.
saveOptions.Quality = 100;
// Set the horizontal/vertical resolution to 96 dots per inch.
saveOptions.ResolutionSettings = new Aspose.Imaging.ResolutionSetting(96.0, 96.0);
saveOptions.ResolutionUnit = Aspose.Imaging.ResolutionUnit.Inch;
// If the source image is colored, it will be converted to grayscaled.
saveOptions.ColorType = Aspose.Imaging.FileFormats.Jpeg.JpegCompressionColorMode.Grayscale;
// Use a palette to reduce the output size.
saveOptions.Palette = Aspose.Imaging.ColorPaletteHelper.Create8BitGrayscale(false);
image.Save(dir + "sample.palettized.jpg", saveOptions);
}
JpegImage(JpegOptions، int، int)
إطلاق كائن Aspose.Imaging.FileFormats.Jpeg.JpegImage الجديد مع خيارات JPEG المقدمة.هذا المصمم يتيح لك تكييف الإعدادات المختلفة للصورة JPEG، مثل:على مستوى الضغط والجودة والمعايير الإضافية، وتوفير التحكم الدقيقعلى شكل الصورة الناتجة.
public JpegImage(JpegOptions jpegOptions, int width, int height)
Parameters
jpegOptions
JpegOptions
خيارات jpeg
width
int
عرض الصورة
height
int
ارتفاع الصورة .
Examples
في المثال التالي ، يتم تحميل صورة BMP وتخزينها إلى JPEG باستخدام خيارات التخزين المختلفة.
string dir = "c:\\temp\\";
// Load a BMP image from a file.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.bmp"))
{
// Do some image processing.
// Use additional options to specify the desired image parameters.
Aspose.Imaging.ImageOptions.JpegOptions saveOptions = new Aspose.Imaging.ImageOptions.JpegOptions();
// The number of bits per channel is 8.
// When a palette is used, the color index is stored in the image data instead of the color itself.
saveOptions.BitsPerChannel = 8;
// Set the progressive type of compression.
saveOptions.CompressionType = Aspose.Imaging.FileFormats.Jpeg.JpegCompressionMode.Progressive;
// Set the image quality. It is a value between 1 and 100.
saveOptions.Quality = 100;
// Set the horizontal/vertical resolution to 96 dots per inch.
saveOptions.ResolutionSettings = new Aspose.Imaging.ResolutionSetting(96.0, 96.0);
saveOptions.ResolutionUnit = Aspose.Imaging.ResolutionUnit.Inch;
// If the source image is colored, it will be converted to grayscaled.
saveOptions.ColorType = Aspose.Imaging.FileFormats.Jpeg.JpegCompressionColorMode.Grayscale;
// Use a palette to reduce the output size.
saveOptions.Palette = Aspose.Imaging.ColorPaletteHelper.Create8BitGrayscale(false);
image.Save(dir + "sample.palettized.jpg", saveOptions);
}
يظهر المثال التالي كيفية إنشاء صورة JPEG من الحجم المحدد مع المعلمات المحددة.
string dir = "c:\\temp\\";
// Create a JPEG image of 100x100 px.
// Use additional options to specify the desired image parameters.
Aspose.Imaging.ImageOptions.JpegOptions createOptions = new Aspose.Imaging.ImageOptions.JpegOptions();
// The number of bits per channel is 8, 8, 8 for Y, Cr, Cb components accordingly.
createOptions.BitsPerChannel = 8;
// Set the progressive type of compression.
createOptions.CompressionType = Aspose.Imaging.FileFormats.Jpeg.JpegCompressionMode.Progressive;
// Set the image quality. It is a value between 1 and 100.
createOptions.Quality = 100;
// Set the horizontal/vertical resolution to 96 dots per inch.
createOptions.ResolutionSettings = new Aspose.Imaging.ResolutionSetting(96.0, 96.0);
createOptions.ResolutionUnit = Aspose.Imaging.ResolutionUnit.Inch;
// This is a standard option for JPEG images.
// Two chroma components (Cb and Cr) can be bandwidth-reduced, subsampled, compressed.
createOptions.ColorType = Aspose.Imaging.FileFormats.Jpeg.JpegCompressionColorMode.YCbCr;
using (Aspose.Imaging.FileFormats.Jpeg.JpegImage jpegImage = new Aspose.Imaging.FileFormats.Jpeg.JpegImage(createOptions, 100, 100))
{
Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(jpegImage);
Aspose.Imaging.Brushes.LinearGradientBrush gradientBrush = new Aspose.Imaging.Brushes.LinearGradientBrush(
new Aspose.Imaging.Point(0, 0),
new Aspose.Imaging.Point(jpegImage.Width, jpegImage.Height),
Aspose.Imaging.Color.Yellow,
Aspose.Imaging.Color.Blue);
// Fill the image with a grayscale gradient
graphics.FillRectangle(gradientBrush, jpegImage.Bounds);
// Save to a file.
jpegImage.Save(dir + "output.explicitoptions.jpg");
}
Properties
BitsPerPixel
استرداد عمق بكسل الصورة بسهولة مع هذه الخصائص، وتقديمإدراك في ثروة اللون أو التمثيل الرمادي.التصوير الفوتوغرافي الحيوي أو التصوير الفوتوغرافي الوحيد ، هذه الممتلكات توفر أهميةمعلومات عن تعقيد الصورة البصرية.
public override int BitsPerPixel { get; }
قيمة الممتلكات
CmykColorProfile
يضمن ملف تعريف الألوان CMYK المرتبط بالصور CMYK و YCCK JPEG دقةتحويل الألوان والولاء. يعمل جنبا إلى جنب مع RGBColorProfileضمان التمثيل الدقيق للألوان على مختلف الأجهزة والتطبيقات.هذا التوازن أمر حيوي للحفاظ على اتساق في عرض الألوان وتحقيق جودة الصورة المثلى.
public StreamSource CmykColorProfile { get; set; }
قيمة الممتلكات
Examples
مثال التالي يحمل PNG ويحفظها إلى CMYK JPEG باستخدام ملف تعريف ICC المخصص. ثم يحمل CMYK JPEG ويحفظها مرة أخرى إلى PNG. يتم إجراء تحويل الألوان من RGB إلى CMYK ومن CMYK إلى RGB باستخدام ملفات تعريف ICC المخصصة.
string dir = "c:\\temp\\";
// Load PNG and save it to CMYK JPEG
using (Aspose.Imaging.FileFormats.Png.PngImage image = (Aspose.Imaging.FileFormats.Png.PngImage)Image.Load(dir + "sample.png"))
{
using (System.IO.Stream rgbProfileStream = System.IO.File.OpenRead(dir + "eciRGB_v2.icc"))
using (System.IO.Stream cmykProfileStream = System.IO.File.OpenRead(dir + "ISOcoated_v2_FullGamut4.icc"))
{
Aspose.Imaging.ImageOptions.JpegOptions saveOptions = new Aspose.Imaging.ImageOptions.JpegOptions();
saveOptions.ColorType = Aspose.Imaging.FileFormats.Jpeg.JpegCompressionColorMode.Cmyk;
// Use custom ICC profiles
saveOptions.RgbColorProfile = new Aspose.Imaging.Sources.StreamSource(rgbProfileStream);
saveOptions.CmykColorProfile = new Aspose.Imaging.Sources.StreamSource(cmykProfileStream);
image.Save(dir + "output.cmyk.jpg", saveOptions);
}
}
// Load CMYK JPEG and save it to PNG
using (Aspose.Imaging.FileFormats.Jpeg.JpegImage image = (Aspose.Imaging.FileFormats.Jpeg.JpegImage)Image.Load(dir + "output.cmyk.jpg"))
{
using (System.IO.Stream rgbProfileStream = System.IO.File.OpenRead(dir + "eciRGB_v2.icc"))
using (System.IO.Stream cmykProfileStream = System.IO.File.OpenRead(dir + "ISOcoated_v2_FullGamut4.icc"))
{
// Use custom ICC profiles
image.RgbColorProfile = new Aspose.Imaging.Sources.StreamSource(rgbProfileStream);
image.CmykColorProfile = new Aspose.Imaging.Sources.StreamSource(cmykProfileStream);
Aspose.Imaging.ImageOptions.PngOptions saveOptions = new Aspose.Imaging.ImageOptions.PngOptions();
image.Save(dir + "output.rgb.png", saveOptions);
}
}
Comment
إدارة التعليقات على ملف JPEG مع هذه الممتلكات، مما يتيح لك إضافة أو استردادالملاحظات الوصفية المرتبطة بالصورة.سواء كان علامة الصور معميتايتايتايتايتايتايتايتايتايتايتايتايتايتايتايتايتايتايتايتايتايتايتايتاتنظيم وتصنيف ملفات JPEG الخاصة بك.
public string Comment { get; set; }
قيمة الممتلكات
DestinationCmykColorProfile
ملف تعريف الألوان CMYK أمر حيوي لتحويل الألوان الدقيق لـ CMYK و YCCKصور JPEG أثناء عملية التخزين. يعمل بالتوازي مع RGBColorProfileلضمان التمثيل الصحيح للألوان، والحفاظ على الاتساق والجودة بينالأجهزة والبرمجيات المختلفة.هذا المزامنة أمر حيوي لتحقيقتحديد الألوان الدقيقة والموثوقة في الصور النهائية التي تم حفظها.
public StreamSource DestinationCmykColorProfile { get; set; }
قيمة الممتلكات
DestinationRgbColorProfile
RGBColorProfile أمر ضروري لتحويل الألوان الدقيقة لـ CMYK و YCCKصور JPEG أثناء عملية التخزين.عندما يتم توزيعها مع CMYKColorProfile،يضمن أن الألوان يتم عرضها بشكل صحيح ويحافظ على الاتساق بينمختلف الأجهزة والتطبيقات.هذا المزيج أمر حيوي للحفاظ علىعرض الألوان المستهدفة وتحقيق إنتاج الصورة عالي الجودة.
public StreamSource DestinationRgbColorProfile { get; set; }
قيمة الممتلكات
ExifData
إدارة بيانات EXIF مع هذه الممتلكات، مما يسمح لك بإضافة أو استرداد البيانات الميتاالمرتبطة بالصورة.سواء كان استخراج المعلومات عن الكاميراإعدادات أو تعديل البيانات المعدلة الموجودة، هذه الممتلكات توفر مرونة فيإدارة حاوية البيانات EXIF.
public JpegExifData ExifData { get; set; }
قيمة الممتلكات
Examples
يظهر المثال التالي كيفية استخراج علامات EXIF من صورة JPEG.
string dir = "c:\\temp\\";
using (Aspose.Imaging.FileFormats.Jpeg.JpegImage image = (Aspose.Imaging.FileFormats.Jpeg.JpegImage)Image.Load(dir + "original.jpg"))
{
Aspose.Imaging.Exif.ExifData exifData = image.ExifData;
System.Console.WriteLine("The general EXIF data");
System.Console.WriteLine("------------------------------------------");
if (exifData != null)
{
System.Console.WriteLine("The EXIF version: {0}", exifData.ExifVersion);
System.Console.WriteLine("The camera serial number: {0}", exifData.BodySerialNumber);
System.Console.WriteLine("The color space: {0}", exifData.ColorSpace);
System.Console.WriteLine("The brightness: {0}", exifData.BrightnessValue);
System.Console.WriteLine("The contrast: {0}", exifData.Contrast);
System.Console.WriteLine("The gamma: {0}", exifData.Gamma);
System.Console.WriteLine("The sharpness: {0}", exifData.Sharpness);
System.Console.WriteLine("The aperture: {0}", exifData.ApertureValue);
System.Console.WriteLine("The exposure mode: {0}", exifData.ExposureMode);
System.Console.WriteLine("The exposure bias: {0}", exifData.ExposureBiasValue);
System.Console.WriteLine("The exposure time: {0}", exifData.ExposureTime);
System.Console.WriteLine("The focal length: {0}", exifData.FocalLength);
System.Console.WriteLine("The focal plane resolution unit: {0}", exifData.FocalPlaneResolutionUnit);
System.Console.WriteLine("The lens model: {0}", exifData.LensModel);
System.Console.WriteLine("The shutter speed: {0}", exifData.ShutterSpeedValue);
}
System.Console.WriteLine("The JPEG EXIF data");
System.Console.WriteLine("------------------------------------------");
Aspose.Imaging.Exif.JpegExifData jpegExifData = image.ExifData as Aspose.Imaging.Exif.JpegExifData;
if (jpegExifData != null)
{
System.Console.WriteLine("The camera manufacturer: {0}", jpegExifData.Make);
System.Console.WriteLine("The camera model: {0}", jpegExifData.Model);
System.Console.WriteLine("The photometric interpretation: {0}", jpegExifData.PhotometricInterpretation);
System.Console.WriteLine("The artist: {0}", jpegExifData.Artist);
System.Console.WriteLine("The copyright: {0}", jpegExifData.Copyright);
System.Console.WriteLine("The image description: {0}", jpegExifData.ImageDescription);
System.Console.WriteLine("The orientation: {0}", jpegExifData.Orientation);
System.Console.WriteLine("The software: {0}", jpegExifData.Software);
}
}
//The output looks like this:
//The general EXIF data
//------------------------------------------
//The EXIF version: System.Byte[]
//The camera serial number: 7100536
//The color space: SRgb
//The brightness:
//The contrast: Normal
//The gamma:
//The sharpness: 0
//The aperture: 4.64(4643856 / 1000000)
//The exposure mode: Manual
//The exposure bias: 0.67(4 / 6)
//The exposure time: 0.01(1 / 160)
//The focal length: 145.00(1450 / 10)
//The focal plane resolution unit: Cm
//The lens model: 70.0 - 200.0 mm f/ 4.0
//The shutter speed: 7.32(7321928 / 1000000)
//The JPEG EXIF data
//------------------------------------------
//The camera manufacturer: NIKON CORPORATION
//The camera model: NIKON D5
//The photometric interpretation: 0
//The artist:
//The copyright:
//The image description:
//The orientation: TopLeft
//The software: Adobe Photoshop Camera Raw 9.9(Macintosh)
FileFormat
استرداد تنسيق الصورة بسهولة مع هذه الممتلكات.إدراك قيمة في تنسيق الملفات، والمساعدة في التكامل اللامبالاة والتحقق من التوافق عبر مختلف المنصات والتطبيقات.
public override FileFormat FileFormat { get; }
قيمة الممتلكات
Height
احصل على ارتفاع الصورة بسهولة مع هذه الممتلكات.الوصول إلى الحجم الرأسي للصورة، مما يسمح لك بفعاليةيحدد حجمها ونسبة الجانب دون الحاجة إلى حسابات معقدة أوأساليب إضافية
public override int Height { get; }
قيمة الممتلكات
HorizontalResolution
يتيح لك هذا الممتلكات إمكانية الوصول إلى التصحيح الأفقيAspose.Imaging.RasterImage، يقيس في بكسل لكل بوصة.هذه القيمة، يمكنك التحكم بدقة في دقة الصورة، وضمانيلبي متطلباتك المحددة للجودة والشفافية.
public override double HorizontalResolution { get; set; }
قيمة الممتلكات
Examples
يظهر المثال التالي كيفية تعيين الدقة الأفقية / العمودية لصورة JPEG.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.jpg"))
{
Aspose.Imaging.FileFormats.Jpeg.JpegImage jpegImage = (Aspose.Imaging.FileFormats.Jpeg.JpegImage)image;
// Get horizontal and vertical resolution of the BmpImage
double horizontalResolution = jpegImage.HorizontalResolution;
double verticalResolution = jpegImage.VerticalResolution;
System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", horizontalResolution);
System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", verticalResolution);
if (horizontalResolution != 96.0 || verticalResolution != 96.0)
{
// Use the SetResolution method for updating both resolution values in a single call.
System.Console.WriteLine("Set resolution values to 96 dpi");
jpegImage.SetResolution(96.0, 96.0);
System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", jpegImage.HorizontalResolution);
System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", jpegImage.VerticalResolution);
}
// The output may look like this:
// The horizontal resolution, in pixels per inch: 300
// The vertical resolution, in pixels per inch: 300
// Set resolution values to 96 dpi
// The horizontal resolution, in pixels per inch: 96
// The vertical resolution, in pixels per inch: 96
}
Remarks
ملاحظة الافتراضية هذه القيمة هي دائما 96 لأن المنصات المختلفة لا يمكن إرجاع دقة الشاشة.يمكنك التفكير في استخدام طريقة SetResolution لتحديث كل من قيم الدقة في مكالمة واحدة.
IgnoreEmbeddedColorProfile
يعيد أو يغير العلم يحدد ما إذا كان ملف تعريف الألوان المدمج هومن خلال إعداد هذا العلم ، يمكن للمستخدمين تحديد ما إذا كان اللون الافتراضيينبغي استخدام الملف بدلا من المدمج واحد.هذا الخيار يضمن أكبرالسيطرة على إدارة الألوان، وتسهيل التعديلات على الاتساق والتوافق بين مختلف المنصات والتطبيقات.
public bool IgnoreEmbeddedColorProfile { get; set; }
قيمة الممتلكات
Jfif
هذه الممتلكات تسمح لك بالوصول أو تعديل JFIF (JPEG File Interchange)تنسيق) البيانات المرتبطة بالصورة JPEG.JFIF هو تنسيق قياسي لتبادل الصور المضغوطة JPEG بين أجهزة الكمبيوتر والأجهزة الأخرى.أو إعداد هذه الممتلكات، يمكنك التفاعل مع بيانات JFIF، والتي قد تشملمعلومات مثل دقة الصورة، ونسبة الجانب، والحد الأدنى.
public JFIFData Jfif { get; set; }
قيمة الممتلكات
JpegOptions
الحصول على إمكانية الوصول إلى خيارات JPEG المستخدمة أثناء إنشاء أو تحميل هذافيديوهات متعلقة بـ “ Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.Jpeg.حول الإعدادات المحددة المستخدمة ، مما يتيح للمستخدمين فهمها وتكرارهامعالجة الصور تدفقات العمل بفعالية.سواء كان مستوى الضغط، والجودةالإعدادات، أو غيرها من المعلمات، هذه الممتلكات توفر أدلة أساسية علىالتلاعب بالصور اللامبالاة.
public JpegOptions JpegOptions { get; }
قيمة الممتلكات
Examples
يظهر المثال التالي كيفية استخراج معلومات العنوان من صورة JPEG.
string dir = "c:\\temp\\";
using (Aspose.Imaging.FileFormats.Jpeg.JpegImage image = (Aspose.Imaging.FileFormats.Jpeg.JpegImage)Image.Load(dir + "original.jpg"))
{
Aspose.Imaging.ImageOptions.JpegOptions jpegOptions = image.JpegOptions;
System.Console.WriteLine("The number of bits per channel: {0}", jpegOptions.BitsPerChannel);
System.Console.WriteLine("The max allowed size for all internal buffers: {0}", jpegOptions.BufferSizeHint);
System.Console.WriteLine("The color type: {0}", jpegOptions.ColorType);
System.Console.WriteLine("The compression type: {0}", jpegOptions.CompressionType);
System.Console.WriteLine("The image quality: {0}", jpegOptions.Quality);
if (jpegOptions.ResolutionSettings != null)
{
System.Console.WriteLine("The horizontal resolution: {0}", jpegOptions.ResolutionSettings.HorizontalResolution);
System.Console.WriteLine("The vertical resolution: {0}", jpegOptions.ResolutionSettings.VerticalResolution);
}
for (int i = 0; i < jpegOptions.HorizontalSampling.Length; i++)
{
System.Console.WriteLine("The sampling for component {0}: {1}x{2}", i, jpegOptions.HorizontalSampling[i], jpegOptions.VerticalSampling[i]);
}
}
//The output looks like this:
//The number of bits per channel: 8
//The max allowed size for all internal buffers: 0
//The color type: YCbCr
//The compression type: Baseline
//The image quality: 75
//The sampling for component 0: 1x1
//The sampling for component 1: 1x1
//The sampling for component 2: 1x1
RawDataFormat
هذا الممتلكات يحصل على تنسيق البيانات الخام للصورة، والتي تشير إلى كيفيةيتم ترتيب بيانات الصورة وتشفيرها.فهم تنسيق البيانات الخام هومن الضروري معالجة أو التلاعب ببيانات الصورة بفعالية.التفكير في التمثيل الأساسي للصورة، على سبيل المثال، ما إذا كانتيتم ضغطها أو ترميزها في مساحة معينة من الألوان أو تخزينها في ملف معينالوصول إلى هذا الممتلكات يسمح لك للحصول على معلومات قيمة حولهيكل البيانات للصورة، مما يسمح لك بإجراء العديد من العمليات أو التحسيناتتناسب شكلها المحدد.
public override PixelDataFormat RawDataFormat { get; }
قيمة الممتلكات
RgbColorProfile
يضمن ملف تعريف الألوان RGB لصور CMYK و YCCK JPEG اللون الدقيقالتحويل والتمثيل.يجب أن يكون مع CMYKColorProfile إلىالحفاظ على التماسك والولاء في إعطاء الألوان.هذا الزوجة ضروريةالتطبيقات التي تتطلب إدارة الألوان الدقيقة وتكرار الصور،ضمان أن يتم تفسير بيانات RGB بشكل صحيح وعرضها.
public StreamSource RgbColorProfile { get; set; }
قيمة الممتلكات
Examples
مثال التالي يحمل PNG ويحفظها إلى CMYK JPEG باستخدام ملف تعريف ICC المخصص. ثم يحمل CMYK JPEG ويحفظها مرة أخرى إلى PNG. يتم إجراء تحويل الألوان من RGB إلى CMYK ومن CMYK إلى RGB باستخدام ملفات تعريف ICC المخصصة.
string dir = "c:\\temp\\";
// Load PNG and save it to CMYK JPEG
using (Aspose.Imaging.FileFormats.Png.PngImage image = (Aspose.Imaging.FileFormats.Png.PngImage)Image.Load(dir + "sample.png"))
{
using (System.IO.Stream rgbProfileStream = System.IO.File.OpenRead(dir + "eciRGB_v2.icc"))
using (System.IO.Stream cmykProfileStream = System.IO.File.OpenRead(dir + "ISOcoated_v2_FullGamut4.icc"))
{
Aspose.Imaging.ImageOptions.JpegOptions saveOptions = new Aspose.Imaging.ImageOptions.JpegOptions();
saveOptions.ColorType = Aspose.Imaging.FileFormats.Jpeg.JpegCompressionColorMode.Cmyk;
// Use custom ICC profiles
saveOptions.RgbColorProfile = new Aspose.Imaging.Sources.StreamSource(rgbProfileStream);
saveOptions.CmykColorProfile = new Aspose.Imaging.Sources.StreamSource(cmykProfileStream);
image.Save(dir + "output.cmyk.jpg", saveOptions);
}
}
// Load CMYK JPEG and save it to PNG
using (Aspose.Imaging.FileFormats.Jpeg.JpegImage image = (Aspose.Imaging.FileFormats.Jpeg.JpegImage)Image.Load(dir + "output.cmyk.jpg"))
{
using (System.IO.Stream rgbProfileStream = System.IO.File.OpenRead(dir + "eciRGB_v2.icc"))
using (System.IO.Stream cmykProfileStream = System.IO.File.OpenRead(dir + "ISOcoated_v2_FullGamut4.icc"))
{
// Use custom ICC profiles
image.RgbColorProfile = new Aspose.Imaging.Sources.StreamSource(rgbProfileStream);
image.CmykColorProfile = new Aspose.Imaging.Sources.StreamSource(cmykProfileStream);
Aspose.Imaging.ImageOptions.PngOptions saveOptions = new Aspose.Imaging.ImageOptions.PngOptions();
image.Save(dir + "output.rgb.png", saveOptions);
}
}
VerticalResolution
هذه الخصائص تتحكم في الدقة العمودية ، والتي تعبر عنها بكسل لكل بوصة ، لالمرتبط Aspose.Imaging.RasterImage. تعديل هذا القرار يؤثر علىالحجم والجودة للصورة عند الطباعة أو عرضها بحجم جسدي ثابت.من خلال إعداد هذه الخصائص ، يمكنك التحكم في مدى كثافة التعبئة والتغليف في بكسل الصورة.عموديًا ، مما يؤثر على حادة وضوحها العام.
public override double VerticalResolution { get; set; }
قيمة الممتلكات
Examples
يظهر المثال التالي كيفية تعيين الدقة الأفقية / العمودية لصورة JPEG.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.jpg"))
{
Aspose.Imaging.FileFormats.Jpeg.JpegImage jpegImage = (Aspose.Imaging.FileFormats.Jpeg.JpegImage)image;
// Get horizontal and vertical resolution of the BmpImage
double horizontalResolution = jpegImage.HorizontalResolution;
double verticalResolution = jpegImage.VerticalResolution;
System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", horizontalResolution);
System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", verticalResolution);
if (horizontalResolution != 96.0 || verticalResolution != 96.0)
{
// Use the SetResolution method for updating both resolution values in a single call.
System.Console.WriteLine("Set resolution values to 96 dpi");
jpegImage.SetResolution(96.0, 96.0);
System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", jpegImage.HorizontalResolution);
System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", jpegImage.VerticalResolution);
}
// The output may look like this:
// The horizontal resolution, in pixels per inch: 300
// The vertical resolution, in pixels per inch: 300
// Set resolution values to 96 dpi
// The horizontal resolution, in pixels per inch: 96
// The vertical resolution, in pixels per inch: 96
}
Remarks
ملاحظة الافتراضية هذه القيمة هي دائمًا 72 لأن المنصات المختلفة لا تستطيع إرجاع دقة الشاشة.يمكنك التفكير في استخدام طريقة SetResolution لتحديث قيم الدقة في مكالمة واحدة.
Width
هذا الممتلكات يحصل على عرض الصورة، والتي يتم التعبير عنها في بكسل.المعلومات الأساسية حول أبعاد الصورة، مما يتيح عرض دقيق،التلاعب، أو عرض البيانات الصورة.
public override int Width { get; }
قيمة الممتلكات
XmpData
يحصل على أو يضع بيانات XMP، مما يتيح التكامل المباشرالمعلومات الوصفية في ملف الصورة.إذا كنت استخراج XMP الحاليالميتا بيانات أو تحديثها مع معلومات جديدة، وهذا الممتلكات يسهلإدارة البيانات الموسعة، وضمان التوافق مع التطبيقات المختلفةوتدفقات العمل.
public override XmpPacketWrapper XmpData { get; set; }
قيمة الممتلكات
Methods
AutoRotate()
يدور تلقائيًا الصورة استنادًا إلى بيانات التوجه المستخرجة من Exifهذه الطريقة تضمن أن الصور يتم عرضها في الاتجاه الصحيح ،تحسين تجربة المستخدم والقضاء على الحاجة إلى التعديلات اليدوية.من خلال تحليل معلومات Exif ، يتم توجيه الصورة وفقًا لذلك ، مما يوفرعرض الخبرة عبر مختلف المنصات والأجهزة.هذا الدوران التلقائيعملية تبسيط التعامل مع الصورة وتحسين الاستخدام العام، وخاصة عندماالتعامل مع مجموعات كبيرة من الصور مع اتجاهات مختلفة.
public void AutoRotate()
Exceptions
قيمة “التوجيه” لـ “JpegExifData” خارج نطاق المسموح به [1…8] ، لذلك لا يمكن تطبيق الدوران الذاتي.
GetModifyDate(بول)
يعيد التاريخ والوقت الذي تعرض فيه صورة المصدر لأحدثهذه الطريقة توفر بيانات معدنية قيمة، مما يتيح للمستخدمين تتبع وإدارة التحديثات إلى ملف الصورة بفعالية.من خلال الوصول إلى هذه المعلومات، المستخدمينيمكن أن تضمن سلامة وعملة أصول الصورة الخاصة بهم، وتسهيلاتخاذ القرارات المتعلقة باستخدام الصورة والصيانة.
public override DateTime GetModifyDate(bool useDefault)
Parameters
useDefault
bool
إذا قمت بتعيين “الحقيقة” تستخدم المعلومات من FileInfo كقيمة افتراضية.
Returns
تاريخ ووقت تم آخر تعديل لصورة المصدر.
ReleaseManagedResources()
تأكد من عدم إطلاق الموارد غير المعالجة هنا، لأنها قد تكون قد تم إطلاقها بالفعل.
protected override void ReleaseManagedResources()
RemoveMetadata()
إزالة هذه البيانات الميتا من حالة الصورة عن طريق إعداد هذه Aspose.Imaging.Xmp.IHasXMPData.xmpDate و VL16 .Exif.IhasExIFDat.ExivDati قيم إلى صفر.
public override void RemoveMetadata()
SaveData(Stream)
تخزين البيانات
protected override void SaveData(Stream stream)
Parameters
stream
Stream
تدفق لتخزين البيانات.
SetResolution(المزدوج، المزدوج)
يحدد القرار المحدد لـ Aspose.Imaging.RasterImage ، ويضمنالقدرات الدقيقة للقياس والطباعة.هذه الطريقة تسمح للمستخدمين بتعديلالضوء على الصورة لتتناسب مع متطلباتهم الخاصة، سواء بالنسبة للصورة الرقميةعرض أو التكرار الجسدي.من خلال إعداد القرار، يمكن للمستخدمين تحسينجودة الصورة وضمان التوافق مع أجهزة الإنتاج والوسائط المختلفة،تحسين الخبرة البصرية العامة واستخدام الصورة.
public override void SetResolution(double dpiX, double dpiY)
Parameters
dpiX
double
القرار الأفقي، في نقاط لكل بوصة، من Aspose.Imaging.RasterImage.
dpiY
double
القرار الرأسي، في نقاط لكل بوصة، من Aspose.Imaging.RasterImage.
Examples
يظهر المثال التالي كيفية تعيين الدقة الأفقية / العمودية لصورة JPEG.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.jpg"))
{
Aspose.Imaging.FileFormats.Jpeg.JpegImage jpegImage = (Aspose.Imaging.FileFormats.Jpeg.JpegImage)image;
// Get horizontal and vertical resolution of the BmpImage
double horizontalResolution = jpegImage.HorizontalResolution;
double verticalResolution = jpegImage.VerticalResolution;
System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", horizontalResolution);
System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", verticalResolution);
if (horizontalResolution != 96.0 || verticalResolution != 96.0)
{
// Use the SetResolution method for updating both resolution values in a single call.
System.Console.WriteLine("Set resolution values to 96 dpi");
jpegImage.SetResolution(96.0, 96.0);
System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", jpegImage.HorizontalResolution);
System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", jpegImage.VerticalResolution);
}
// The output may look like this:
// The horizontal resolution, in pixels per inch: 300
// The vertical resolution, in pixels per inch: 300
// Set resolution values to 96 dpi
// The horizontal resolution, in pixels per inch: 96
// The vertical resolution, in pixels per inch: 96
}
UpdateDimensions(إنت، إنت)
تحديث أبعاد الصورة.
protected override void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
عرض الصورة الجديد.
newHeight
int
ارتفاع الصورة الجديدة.
UpdateMetadata()
تحديث بيانات الصورة.
protected override void UpdateMetadata()