Class BmpImage

Class BmpImage

Названий на: Aspose.Imaging.FileFormats.Bmp Асамблея: Aspose.Imaging.dll (25.4.0)

Ви можете без зусиль обробляти Bitmap (BMP) і Device Independent bitmap(DIB) файли, що сприяють ефективному маніпулюванню та обробці растерздійснюючи різні операції на зображеннях, цей API стримуєробочий потік, що пропонує розробникам надійний інструмент для роботи з BMP іФормати DIB у своїх програмних додатках.

[JsonObject(MemberSerialization.OptIn)]
public sealed class BmpImage : RasterCachedImage, IDisposable, IObjectWithBounds, IRasterImageArgb32PixelLoader, IRasterImageRawDataLoader, IHasXmpData, IHasMetadata

Inheritance

object DisposableObject DataStreamSupporter Image RasterImage RasterCachedImage BmpImage

Implements

IDisposable , IObjectWithBounds , IRasterImageArgb32PixelLoader , IRasterImageRawDataLoader , IHasXmpData , 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

Декомпрес BMP зображення, яке раніше було компресовано за допомогою алгоритму стримування DXT1.

using (var image = Image.Load("CompressedTiger.bmp"))
                                                                                                 {
                                                                                                     image.Save("DecompressedTiger.bmp", new BmpOptions());
                                                                                                 }

Компрес BMP зображення за допомогою алгоритму компресії DXT1.

using (var image = Image.Load("Tiger.bmp"))
                                                               {
                                                                   image.Save("CompressedTiger.bmp", new BmpOptions { Compression = BitmapCompression.Dxt1 });
                                                               }

Приклад показує, як видалити будь-який об’єкт з зображення за допомогою графічного шляху з алгоритмом Telea.

var imageFilePath = "ball.png"; 
                                                                                                              using (var image = Image.Load(imageFilePath))
                                                                                                              {
                                                                                                                  var pngImage = (PngImage)image;

                                                                                                                  var mask = new GraphicsPath();
                                                                                                                  var firstFigure = new Figure();
                                                                                                                  firstFigure.AddShape(new EllipseShape(new RectangleF(350, 170, 570 - 350, 400 - 170)));
                                                                                                                  mask.AddFigure(firstFigure);

                                                                                                                  var options = new TeleaWatermarkOptions(mask);

                                                                                                                  var result = WatermarkRemover.PaintOver(pngImage, options);

                                                                                                                  result.Save(outputPath);
                                                                                                              }

Приклад показує, як експортувати BmpImage з типом компресії Rgb.

string sourcePath = "input.png";
                                                                                    // Load a PNG image from a file.
                                                                                    using (Image pngImage = Image.Load(sourcePath))
                                                                                    {
                                                                                        // BMP image is saved with transparency support by default, that is achieved by using the BitmapCompression.Bitfields compression method. 
                                                                                        // To save a BMP image with the Rgb compression method, the BmpOptions with the Compression property set to BitmapCompression.Rgb should be specified.
                                                                                        pngImage.Save(outputPath, new BmpOptions() { Compression = BitmapCompression.Rgb });
                                                                                    }

У прикладі показано, як видалити будь-який об’єкт з зображення за допомогою графічного шляху з алгоритмом заповнення контенту.

var imageFilePath = "ball.png"; 
                                                                                                                           using (var image = Image.Load(imageFilePath))
                                                                                                                           {
                                                                                                                               var pngImage = (PngImage)image;

                                                                                                                               var mask = new GraphicsPath();
                                                                                                                               var firstFigure = new Figure();
                                                                                                                               firstFigure.AddShape(new EllipseShape(new RectangleF(350, 170, 570 - 350, 400 - 170)));
                                                                                                                               mask.AddFigure(firstFigure);

                                                                                                                               var options = new ContentAwareFillWatermarkOptions(mask) 
                                                                                                                               { 
                                                                                                                                   MaxPaintingAttempts = 4
                                                                                                                               };

                                                                                                                               var result = WatermarkRemover.PaintOver(pngImage, options);

                                                                                                                               result.Save(outputPath);
                                                                                                                           }

Наступний приклад показує, як створити зображення BMP визначеного розміру.

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

                                                                                       // Create a BMP image 100 x 100 px.
                                                                                       using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100))
                                                                                       {
                                                                                           // Fill the image with a simple linear red-black gradient.
                                                                                           int width = bmpImage.Width;
                                                                                           int height = bmpImage.Height;
                                                                                           for (int y = 0; y < height; y++)
                                                                                           {
                                                                                               for (int x = 0; x < width; x++)
                                                                                               {
                                                                                                   int hue = (255 * x) / width;
                                                                                                   bmpImage.SetPixel(x, y, Aspose.Imaging.Color.FromArgb(255, hue, 0, 0));
                                                                                               }
                                                                                           }

                                                                                           using (System.IO.FileStream stream = new System.IO.FileStream(dir + "output.bmp", System.IO.FileMode.Create))
                                                                                           {
                                                                                               bmpImage.Save(stream);
                                                                                           }
                                                                                       }

Приклад показує, як експортувати BmpImage з файлу Png при збереженні альфа-каналу, зберігаючи файл BMP з прозорості.

string sourcePath = "input.png";
                                                                                                                                         // Load a PNG image from a file.
                                                                                                                                         using (Image pngImage = Image.Load(sourcePath))
                                                                                                                                         {
                                                                                                                                             // BMP image is saved with transparency support by default. 
                                                                                                                                             // If you want to explicitly specify such mode, the BmpOptions's Compression property should be set to BitmapCompression.Bitfields.
                                                                                                                                             // The BitmapCompression.Bitfields compression method is the default compression method in the BmpOptions.
                                                                                                                                             // So the same result of exporting a Bmp image with transparency can be achieved by either one of the following ways.
                                                                                                                                             // With an implicit default options:
                                                                                                                                             pngImage.Save(outputPath);
                                                                                                                                             // With an explicit default options:
                                                                                                                                             pngImage.Save(outputPath, new BmpOptions());
                                                                                                                                             // Specifying the BitmapCompression.Bitfields compression method:
                                                                                                                                             pngImage.Save(outputPath, new BmpOptions() { Compression = BitmapCompression.Bitfields });
                                                                                                                                         }

Constructors

BmpImage(стрічка)

Почніть користуватися класом BmpImage без зусиль з цим конструктором, якийІніціалізація нового прикладу. ідеально підходить для розробників, які хочуть піднятися іВикористовуйте Aspose.Imaging.FileFormats.Bmp.MmpImage об’єкти швидко і ефективно.

public BmpImage(string path)

Parameters

path string

Дорога до завантаження зображення і ініціалізації пікселів і палетів даних з.

Examples

Приклад показує, як завантажити BmpImage з файлу.

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

                                                                // Load a BMP image from a file.
                                                                // The source pixels will be converted to 32-bpp format if required.
                                                                using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(dir + "sample.bmp"))
                                                                {
                                                                    // Do some image processing.
                                                                    // Save to another BMP file.
                                                                    bmpImage.Save(dir + "sample.output.32bpp.bmp");
                                                                }

Exceptions

ArgumentNullException

Растер зображення є нульовим.

BmpImageException

Висота повинна бути позитивною.

ArgumentException

Палет повинен бути визначений для зображень з 8 бітами на піксель або менше.

BmpImage(колір, шорт, BitmapCompression, подвійний)

Створюйте без зусиль нову інстанцію класу Aspose.Imaging.FileFormats.Bmp.MmpImage з цим конструктором,з використанням визначених параметрів, таких як шлях, бітPerPixel, і компресія.прагнуть ініціювати об’єкти BmpImage швидко і ефективно, з точним контролемнад характеристиками зображення.

public BmpImage(string path, ushort bitsPerPixel, BitmapCompression compression, double horizontalResolution, double verticalResolution)

Parameters

path string

Дорога до завантаження зображення і ініціалізації пікселів і палетів даних з.

bitsPerPixel ushort

Біт на піксель.

compression BitmapCompression

Компресія для використання.

horizontalResolution double

Зауважимо, що через обертання результат резолюції може трохи відрізнятися від минулого.

verticalResolution double

Зауважимо, що через обертання результат резолюції може трохи відрізнятися від минулого.

Examples

Приклад показує, як завантажити BmpImage з файлу з зазначеною глибиною і роздільною здатністю.

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

                                                                                                            // Load a BMP image from a file.
                                                                                                            // The source pixels will be converted to 24-bpp format if required.
                                                                                                            // The resolution will be set to 96 dpi.
                                                                                                            using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage =
                                                                                                                new Aspose.Imaging.FileFormats.Bmp.BmpImage(dir + "sample.bmp", 24, Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rgb, 96.0, 96.0))
                                                                                                            {
                                                                                                                // Do some image processing.
                                                                                                                // Save to another BMP file.
                                                                                                                bmpImage.Save(dir + "sample.output.24bpp.96dpi.bmp");
                                                                                                            }

Exceptions

ArgumentNullException

Растер зображення є нульовим.

BmpImageException

Висота повинна бути позитивною.

ArgumentException

Палет повинен бути визначений для зображень з 8 бітами на піксель або менше.

BmpImage(Stream)

Почніть користуватися класом Aspose.Imaging.FileFormats.bmp.BmpImage без зусиль, ініціюючи нову інстанціюз цим конструктором, використовуючи потік як вхід. ідеально підходить для розробників, які шукаютьзручний спосіб роботи з об’єктами BmpImage з різних джерел даних,забезпечення гнучкості та легкої інтеграції;

public BmpImage(Stream stream)

Parameters

stream Stream

Потік для завантаження зображення і ініціювати з пікселів і палетів даних.

Examples

Приклад показує, як завантажити BmpImage з потоку файлів.

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

                                                                       // Load a BMP image from a file stream.
                                                                       // The source pixels will be converted to 32-bpp format if required.
                                                                       using (System.IO.Stream stream = System.IO.File.OpenRead(dir + "sample.bmp"))
                                                                       {
                                                                           using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(stream))
                                                                           {
                                                                               // Do some image processing.
                                                                               // Save to another BMP file.
                                                                               bmpImage.Save(dir + "sample.output.32bpp.bmp");
                                                                           }
                                                                       }

Exceptions

ArgumentNullException

Растер зображення є нульовим.

BmpImageException

Висота повинна бути позитивною.

ArgumentException

Палет повинен бути визначений для зображень з 8 бітами на піксель або менше.

BmpImage(Stream, ushort, BitmapCompression, подвійний, двосторонній)

Почніть працювати з класом Aspose.Imaging.FileFormats.Bmp.BMpImage безперервно, створюючинова інстанція з використанням потоку, разом з визначеними параметрами, такими як bitsPerPixelІдеальний для розробників, які шукають простий спосіб справлятисяBmpImage об’єкти, забезпечуючи гнучкість і ефективність у своїх проектах.

public BmpImage(Stream stream, ushort bitsPerPixel, BitmapCompression compression, double horizontalResolution, double verticalResolution)

Parameters

stream Stream

Потік для завантаження зображення і ініціювати з пікселів і палетів даних.

bitsPerPixel ushort

Біт на піксель.

compression BitmapCompression

Компресія для використання.

horizontalResolution double

Зауважимо, що через обертання результат резолюції може трохи відрізнятися від минулого.

verticalResolution double

Зауважимо, що через обертання результат резолюції може трохи відрізнятися від минулого.

Examples

Приклад показує, як завантажити BmpImage з потоку файлів з зазначеною глибиною і роздільною здатністю.

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

                                                                                                                   // Load a BMP image from a file stream.
                                                                                                                   // The source pixels will be converted to 24-bpp format if required.
                                                                                                                   // The resolution will be set to 96 dpi.
                                                                                                                   using (System.IO.Stream stream = System.IO.File.OpenRead(dir + "sample.bmp"))
                                                                                                                   {
                                                                                                                       using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage =
                                                                                                                           new Aspose.Imaging.FileFormats.Bmp.BmpImage(stream, 24, Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rgb, 96.0, 96.0))
                                                                                                                       {
                                                                                                                           // Do some image processing.
                                                                                                                           // Save to another BMP file.
                                                                                                                           bmpImage.Save(dir + "sample.output.24bpp.96dpi.bmp");
                                                                                                                       }
                                                                                                                   }

Exceptions

ArgumentNullException

Растер зображення є нульовим.

BmpImageException

Висота повинна бути позитивною.

ArgumentException

Палет повинен бути визначений для зображень з 8 бітами на піксель або менше.

BmpImage(RasterImage)

Без зусиль створюйте нову інстанцію Aspose.Imaging.FileFormats.Bmp.Ініціалізуючи його з об’єктом RasterImage. ідеально підходить для розробників, які шукаютьбезперервно конвертувати існуючі растерні зображення в формат BmpImage, забезпечуючиСпіввідношення та легкість інтеграції в їхні проекти.

public BmpImage(RasterImage rasterImage)

Parameters

rasterImage RasterImage

Зображення для ініціалізації пікселів і палетних даних з.

Examples

У прикладі показано, як завантажити BmpImage з іншої інстанції Raster Image.

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

                                                                                         // Create a new PNG image.
                                                                                         Aspose.Imaging.ImageOptions.PngOptions createOptions = new Aspose.Imaging.ImageOptions.PngOptions();
                                                                                         createOptions.Source = new Aspose.Imaging.Sources.StreamSource(new System.IO.MemoryStream(), true);
                                                                                         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 gr = new Aspose.Imaging.Graphics(rasterImage);
                                                                                             Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
                                                                                             gr.FillRectangle(brush, rasterImage.Bounds);

                                                                                             // Create a BMP image based on the PNG image.
                                                                                             // The source pixels will be converted to 32-bpp format if required.
                                                                                             using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(rasterImage))
                                                                                             {
                                                                                                 // Save to a BMP file
                                                                                                 bmpImage.Save(dir + "output.32bpp.bmp");
                                                                                             }
                                                                                         }

Exceptions

ArgumentNullException

Растер зображення є нульовим.

BmpImageException

Висота повинна бути позитивною.

ArgumentException

Палет повинен бути визначений для зображень з 8 бітами на піксель або менше.

BmpImage(RasterImage, ushort, BitmapCompression, подвійний)

Почніть працювати з класом Aspose.Imaging.FileFormats.Bmp.BMpImage безперервно, створюючи нову інстанціювикористовуючи RasterImage разом з визначеними параметрами, такими як bitsPerPixel і компресія.Ідеальний для розробників, які шукають простий спосіб обробки об’єктів BmpImage,забезпечення гнучкості та ефективності проектів.

public BmpImage(RasterImage rasterImage, ushort bitsPerPixel, BitmapCompression compression, double horizontalResolution, double verticalResolution)

Parameters

rasterImage RasterImage

Зображення для ініціалізації пікселів і палетних даних з.

bitsPerPixel ushort

Біт на піксель.

compression BitmapCompression

Компресія для використання.

horizontalResolution double

Зауважимо, що через обертання результат резолюції може трохи відрізнятися від минулого.

verticalResolution double

Зауважимо, що через обертання результат резолюції може трохи відрізнятися від минулого.

Examples

Приклад показує, як завантажити BmpImage з іншої інстанції RasterImages з зазначеною глибиною і компресією.

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

                                                                                                                                      // Create a new PNG image.
                                                                                                                                      Aspose.Imaging.ImageOptions.PngOptions createOptions = new Aspose.Imaging.ImageOptions.PngOptions();
                                                                                                                                      createOptions.Source = new Aspose.Imaging.Sources.StreamSource(new System.IO.MemoryStream(), true);
                                                                                                                                      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 gr = new Aspose.Imaging.Graphics(rasterImage);
                                                                                                                                          Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
                                                                                                                                          gr.FillRectangle(brush, rasterImage.Bounds);

                                                                                                                                          // Create a BMP image based on the PNG image.
                                                                                                                                          // The source pixels will be converted to 24-bpp format if required.
                                                                                                                                          // The resolution will be set to 96 dpi.
                                                                                                                                          using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(rasterImage, 24, Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rgb, 96.0, 96.0))
                                                                                                                                          {
                                                                                                                                              // Save to a BMP file
                                                                                                                                              bmpImage.Save(dir + "output.24bpp.96dpi.bmp");
                                                                                                                                          }
                                                                                                                                      }

Exceptions

ArgumentNullException

Растер зображення є нульовим.

BmpImageException

Висота повинна бути позитивною.

ArgumentException

Палет повинен бути визначений для зображень з 8 бітами на піксель або менше.

BmpImage(ІТ, ІТ)

Почніть користуватися класом Aspose.Imaging.FileFormats.bmp.BmpImage без зусиль, створюючи нову інстанціюз визначеною шириною і висотою параметрів. ідеально підходить для розробників, які шукаютьзручний спосіб генерувати об’єкти BmpImage персоналізованих розмірів, забезпечуючигнучкість і легкість інтеграції в їхні проекти.

public BmpImage(int width, int height)

Parameters

width int

Ширина зображення .

height int

Висота зображення.

Examples

Приклад показує, як створити BmpImage зазначеного розміру.

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

                                                                            // Create a 32-bpp BMP image of 100 x 100 px.
                                                                            using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100))
                                                                            {
                                                                                // Fill the entire image in red.
                                                                                Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(bmpImage);
                                                                                Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
                                                                                gr.FillRectangle(brush, bmpImage.Bounds);

                                                                                // Save to a BMP file
                                                                                bmpImage.Save(dir + "output.bmp");
                                                                            }

Наступний приклад показує, як палетізувати зображення BMP, щоб зменшити його розмір виходу.

// Create a BMP image 100 x 100 px.
                                                                                              using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100))
                                                                                              {
                                                                                                  // The linear gradient from the left-top to the right-bottom corner of the image.
                                                                                                  Aspose.Imaging.Brushes.LinearGradientBrush brush =
                                                                                                      new Aspose.Imaging.Brushes.LinearGradientBrush(
                                                                                                          new Aspose.Imaging.Point(0, 0),
                                                                                                          new Aspose.Imaging.Point(bmpImage.Width, bmpImage.Height),
                                                                                                          Aspose.Imaging.Color.Red,
                                                                                                          Aspose.Imaging.Color.Green);

                                                                                                  // Fill the entire image with the linear gradient brush.
                                                                                                  Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(bmpImage);
                                                                                                  gr.FillRectangle(brush, bmpImage.Bounds);

                                                                                                  // Get the closest 8-bit color palette which covers as many pixels as possible, so that a palettized image
                                                                                                  // is almost visually indistinguishable from a non-palletized one.
                                                                                                  Aspose.Imaging.IColorPalette palette = Aspose.Imaging.ColorPaletteHelper.GetCloseImagePalette(bmpImage, 256);

                                                                                                  // 8-bit palette contains at most 256 colors.
                                                                                                  Aspose.Imaging.ImageOptions.BmpOptions saveOptions = new Aspose.Imaging.ImageOptions.BmpOptions();
                                                                                                  saveOptions.Palette = palette;
                                                                                                  saveOptions.BitsPerPixel = 8;

                                                                                                  using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
                                                                                                  {
                                                                                                      bmpImage.Save(stream, saveOptions);
                                                                                                      System.Console.WriteLine("The palettized image size is {0} bytes.", stream.Length);
                                                                                                  }

                                                                                                  using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
                                                                                                  {
                                                                                                      bmpImage.Save(stream);
                                                                                                      System.Console.WriteLine("The non-palettized image size is {0} bytes.", stream.Length);
                                                                                                  }
                                                                                              }

                                                                                              // The output looks like this:
                                                                                              // The palettized image size is 11078 bytes.
                                                                                              // The non-palettized image size is 40054 bytes.

Exceptions

BmpImageException

Висота повинна бути позитивною.

ArgumentException

Палет повинен бути визначений для зображень з 8 бітами на піксель або менше.

BmpImage(ІТ, ІКТ, УХОРТ ІКОЛОРПАЛЕТ)

Почніть користуватися класом Aspose.Imaging.FileFormats.bmp.BmpImage безперервно, ініціюючи нову інстанціюз такими параметрами, як ширина, висота, дрібна глибина і палет.розробники, які шукають простий спосіб створення об’єктів BmpImage зперсоналізовані розміри та кольорові конфігурації, забезпечуючи гнучкість та ефективність у своїх проектах.

public BmpImage(int width, int height, ushort bitsPerPixel, IColorPalette palette)

Parameters

width int

Ширина зображення .

height int

Висота зображення.

bitsPerPixel ushort

Біт на піксель.

palette IColorPalette

Палетка кольорів

Examples

У прикладі показано, як створити BmpImage зазначеного розміру з визначеною палетою.

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

                                                                                                       Aspose.Imaging.Color[] paletterColors = new Aspose.Imaging.Color[]
                                                                                                       {
                                                                                                           Aspose.Imaging.Color.Red,
                                                                                                           Aspose.Imaging.Color.Green,
                                                                                                       };

                                                                                                       // Create a monochrome palette which contains only red and green colors.
                                                                                                       Aspose.Imaging.IColorPalette palette = new Aspose.Imaging.ColorPalette(paletterColors);

                                                                                                       // Create a monochrome 1-bpp BMP image of 100 x 100 px.
                                                                                                       using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 1, palette))
                                                                                                       {
                                                                                                           Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(bmpImage);

                                                                                                           // Fill the upper half of the image in red.
                                                                                                           Aspose.Imaging.Brushes.SolidBrush redBrush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
                                                                                                           gr.FillRectangle(redBrush, new Aspose.Imaging.Rectangle(0, 0, bmpImage.Width, bmpImage.Height / 2));

                                                                                                           // Fill the lower half of the image in green.
                                                                                                           Aspose.Imaging.Brushes.SolidBrush greenBrush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Green);
                                                                                                           gr.FillRectangle(greenBrush, new Aspose.Imaging.Rectangle(0, bmpImage.Height / 2, bmpImage.Width, bmpImage.Height / 2));

                                                                                                           // Save to BMP
                                                                                                           bmpImage.Save(dir + "output.monochrome.bmp");
                                                                                                       }

Exceptions

BmpImageException

Висота повинна бути позитивною.

ArgumentException

Палет повинен бути визначений для зображень з 8 бітами на піксель або менше.

BmpImage(інт, int, ushort, IColorPalette, BitmapCompression, подвійний)

Створюйте без зусиль нову інстанцію класу Aspose.Imaging.FileFormats.Bmp.MmpImage з цим конструктором,визначити такі параметри, як ширина, висота, бітPerPixel, і палет.шукаючи зручний спосіб генерувати об’єкти BmpImage з пристосованими розмірамиі кольорові конфігурації, що забезпечує гнучкість і легкість інтеграції в їхні проекти.

public BmpImage(int width, int height, ushort bitsPerPixel, IColorPalette palette, BitmapCompression compression, double horizontalResolution, double verticalResolution)

Parameters

width int

Ширина зображення .

height int

Висота зображення.

bitsPerPixel ushort

Біт на піксель.

palette IColorPalette

Палетка кольорів

compression BitmapCompression

Компресія для використання.

horizontalResolution double

Зауважимо, що через обертання результат резолюції може трохи відрізнятися від минулого.

verticalResolution double

Зауважимо, що через обертання результат резолюції може трохи відрізнятися від минулого.

Examples

Приклад показує, як створити BmpImage за допомогою різних варіантів.

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

                                                                            Aspose.Imaging.Color[] paletterColors = new Aspose.Imaging.Color[]
                                                                            {
                                                                                Aspose.Imaging.Color.Red,
                                                                                Aspose.Imaging.Color.Green,
                                                                            };

                                                                            // Create a monochrome palette which contains only red and green colors.
                                                                            Aspose.Imaging.IColorPalette palette = new Aspose.Imaging.ColorPalette(paletterColors);

                                                                            // Create a monochrome 1-bpp BMP image of 100 x 100 px.
                                                                            // The horizontal and vertical resolution will be set to 96 dpi.
                                                                            using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 1, palette, Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rgb, 96.0, 96.0))
                                                                            {
                                                                                Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(bmpImage);

                                                                                // Fill the upper half of the image in red.
                                                                                Aspose.Imaging.Brushes.SolidBrush redBrush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
                                                                                gr.FillRectangle(redBrush, new Aspose.Imaging.Rectangle(0, 0, bmpImage.Width, bmpImage.Height / 2));

                                                                                // Fill the lower half of the image in green.
                                                                                Aspose.Imaging.Brushes.SolidBrush greenBrush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Green);
                                                                                gr.FillRectangle(greenBrush, new Aspose.Imaging.Rectangle(0, bmpImage.Height / 2, bmpImage.Width, bmpImage.Height / 2));

                                                                                // Save to a BMP file
                                                                                bmpImage.Save(dir + "output.monochrome.96dpi.bmp");
                                                                            }

Exceptions

BmpImageException

Висота повинна бути позитивною.

ArgumentException

Палет повинен бути визначений для зображень з 8 бітами на піксель або менше.

Properties

BitmapInfoHeader

Швидкий доступ до важливих деталей вашого зображення bitmap з цією простим функцією.Ідеально підходить для розробників, які потребують отримання заголовкової інформації для своїх зображень.

public BitmapInfoHeader BitmapInfoHeader { get; }

вартість нерухомості

BitmapInfoHeader

Examples

Наступний приклад отримує інформацію з заголовка BMP і друкує її на консоль.

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.bmp"))
                                                                                                       {
                                                                                                           Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;
                                                                                                           Aspose.Imaging.FileFormats.Bmp.BitmapInfoHeader header = bmpImage.BitmapInfoHeader;

                                                                                                           System.Console.WriteLine("The number of palette colors that are required for displaying the bitmap: {0}", header.BitmapColorsImportant);
                                                                                                           System.Console.WriteLine("The number of palette colors used in the bitmap: {0}", header.BitmapColorsUsed);
                                                                                                           System.Console.WriteLine("The bitmap compression: {0}", header.BitmapCompression);
                                                                                                           System.Console.WriteLine("The bitmap height: {0}", header.BitmapHeight);
                                                                                                           System.Console.WriteLine("The bitmap width: {0}", header.BitmapWidth);
                                                                                                           System.Console.WriteLine("The bitmap raw data size in bytes: {0}", header.BitmapImageSize);
                                                                                                           System.Console.WriteLine("The number of planes: {0}", header.BitmapPlanes);
                                                                                                           System.Console.WriteLine("The horizontal resolution of the bitmap, in pixels-per-meter: {0}", header.BitmapXPelsPerMeter);
                                                                                                           System.Console.WriteLine("The vertical resolution of the bitmap, in pixels-per-meter: {0}", header.BitmapYPelsPerMeter);
                                                                                                           System.Console.WriteLine("The number of bits per pixel: {0}", header.BitsPerPixel);
                                                                                                           System.Console.WriteLine("The extra bits masks: {0}", header.ExtraBitMasks);
                                                                                                           System.Console.WriteLine("The header size in bytes: {0}", header.HeaderSize);
                                                                                                       }

                                                                                                       //The output may look like this:
                                                                                                       //The number of palette colors that are required for displaying the bitmap: 0
                                                                                                       //The number of palette colors used in the bitmap: 0
                                                                                                       //The bitmap compression: 0
                                                                                                       //The bitmap height: 375
                                                                                                       //The bitmap width: 500
                                                                                                       //The bitmap raw data size in bytes: 562500
                                                                                                       //The number of planes: 1
                                                                                                       //The horizontal resolution of the bitmap, in pixels-per-meter: 0
                                                                                                       //The vertical resolution of the bitmap, in pixels-per-meter: 0
                                                                                                       //The number of bits per pixel: 24
                                                                                                       //The extra bits masks: 
                                                                                                       //The header size in bytes: 40

BitsPerPixel

Доступ до кількості бітів на піксель для зображення з легкістю за допомогою цієї властивості.Ідеальний для розробників, які шукають швидку інформацію про якість і глибину зображення.

public override int BitsPerPixel { get; }

вартість нерухомості

int

Examples

Наступний приклад отримує загальну інформацію про зображення, в тому числі формат пікселів, розмір образу, роздільна здатність, компресія і т.д.

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.bmp"))
                                                                                                                                              {
                                                                                                                                                  Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;                

                                                                                                                                                  System.Console.WriteLine("The pixel format: {0}", bmpImage.RawDataFormat);                
                                                                                                                                                  System.Console.WriteLine("The raw line size in bytes: {0}", bmpImage.RawLineSize);
                                                                                                                                                  System.Console.WriteLine("The bitmap compression: {0}", bmpImage.Compression);
                                                                                                                                                  System.Console.WriteLine("The bitmap width: {0}", bmpImage.Width);
                                                                                                                                                  System.Console.WriteLine("The bitmap height: {0}", bmpImage.Height);
                                                                                                                                                  System.Console.WriteLine("The number of bits per pixel: {0}", bmpImage.BitsPerPixel);

                                                                                                                                                  double hres = bmpImage.HorizontalResolution;
                                                                                                                                                  double vres = bmpImage.VerticalResolution;
                                                                                                                                                  System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", hres);
                                                                                                                                                  System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", vres);

                                                                                                                                                  if (hres != 96.0 || vres != 96.0)
                                                                                                                                                  {
                                                                                                                                                      // You may consider using the SetResolution method for updating both resolution values in single call.
                                                                                                                                                      System.Console.WriteLine("Set resolution values to 96 dpi");
                                                                                                                                                      bmpImage.SetResolution(96.0, 96.0);

                                                                                                                                                      System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", bmpImage.HorizontalResolution);
                                                                                                                                                      System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", bmpImage.VerticalResolution);
                                                                                                                                                  }

                                                                                                                                                  //The output may look like this:
                                                                                                                                                  //The pixel format: Rgb24Bpp, used channels: 8,8,8
                                                                                                                                                  //The raw line size in bytes: 1500
                                                                                                                                                  //The bitmap compression: Rgb
                                                                                                                                                  //The bitmap width: 500
                                                                                                                                                  //The bitmap height: 375
                                                                                                                                                  //The number of bits per pixel: 24
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 0
                                                                                                                                                  //The vertical resolution, in pixels per inch: 0
                                                                                                                                                  //Set resolution values to 96 dpi
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 96.012
                                                                                                                                                  //The vertical resolution, in pixels per inch: 96.012
                                                                                                                                              }

Наступний приклад показує, як компресія bitmap впливає на розмір зображення виходу.

Aspose.Imaging.FileFormats.Bmp.BitmapCompression[] compressions = new Aspose.Imaging.FileFormats.Bmp.BitmapCompression[]
                                                                                                {
                                                                                                    Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rgb,
                                                                                                    Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rle8,
                                                                                                };

                                                                                                Aspose.Imaging.Color[] paletterColors = new Aspose.Imaging.Color[]
                                                                                                {
                                                                                                    Aspose.Imaging.Color.Red,
                                                                                                    Aspose.Imaging.Color.Green,
                                                                                                };

                                                                                                // Create a monochrome palette which contains only red and green colors.
                                                                                                Aspose.Imaging.IColorPalette palette = new Aspose.Imaging.ColorPalette(paletterColors);

                                                                                                foreach (Aspose.Imaging.FileFormats.Bmp.BitmapCompression compression in compressions)
                                                                                                {
                                                                                                    // Create a 8-bpp BMP image of 100 x 100 px.
                                                                                                    using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 8, palette, compression, 0.0, 0.0))
                                                                                                    {
                                                                                                        Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(bmpImage);

                                                                                                        // Fill the entire image in red.
                                                                                                        Aspose.Imaging.Brushes.SolidBrush redBrush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
                                                                                                        gr.FillRectangle(redBrush, bmpImage.Bounds);

                                                                                                        // Save the image to a stream to get the output image size.
                                                                                                        using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
                                                                                                        {
                                                                                                            bmpImage.Save(stream);

                                                                                                            System.Console.WriteLine("---------------------------------------------");
                                                                                                            System.Console.WriteLine("The compression={0}", bmpImage.Compression);
                                                                                                            System.Console.WriteLine("The number of bits per pixel={0}", bmpImage.BitsPerPixel);
                                                                                                            System.Console.WriteLine("The image dimensions={0} x {1}", bmpImage.Width, bmpImage.Height);
                                                                                                            System.Console.WriteLine("The raw line size={0}", bmpImage.RawLineSize);
                                                                                                            System.Console.WriteLine("The output size in bytes={0}", stream.Length);
                                                                                                        }
                                                                                                    }
                                                                                                }

                                                                                                // The output looks like this:
                                                                                                // ---------------------------------------------
                                                                                                // The compression = Rgb
                                                                                                // The number of bits per pixel = 8
                                                                                                // The image dimensions = 100 x 100
                                                                                                // The raw line size = 100
                                                                                                // The output size in bytes = 11078
                                                                                                // ---------------------------------------------
                                                                                                // The compression = Rle8
                                                                                                // The number of bits per pixel = 8
                                                                                                // The image dimensions = 100 x 100
                                                                                                // The raw line size = 100
                                                                                                // The output size in bytes = 856

Compression

Відновлення типу компресії, що використовується для зображення без зусиль з цією властивістю.Ідеально підходить для розробників, які потребують швидкого доступу до інформації про компресію зображення.

public BitmapCompression Compression { get; }

вартість нерухомості

BitmapCompression

Examples

Наступний приклад отримує загальну інформацію про зображення, в тому числі формат пікселів, розмір образу, роздільна здатність, компресія і т.д.

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.bmp"))
                                                                                                                                              {
                                                                                                                                                  Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;                

                                                                                                                                                  System.Console.WriteLine("The pixel format: {0}", bmpImage.RawDataFormat);                
                                                                                                                                                  System.Console.WriteLine("The raw line size in bytes: {0}", bmpImage.RawLineSize);
                                                                                                                                                  System.Console.WriteLine("The bitmap compression: {0}", bmpImage.Compression);
                                                                                                                                                  System.Console.WriteLine("The bitmap width: {0}", bmpImage.Width);
                                                                                                                                                  System.Console.WriteLine("The bitmap height: {0}", bmpImage.Height);
                                                                                                                                                  System.Console.WriteLine("The number of bits per pixel: {0}", bmpImage.BitsPerPixel);

                                                                                                                                                  double hres = bmpImage.HorizontalResolution;
                                                                                                                                                  double vres = bmpImage.VerticalResolution;
                                                                                                                                                  System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", hres);
                                                                                                                                                  System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", vres);

                                                                                                                                                  if (hres != 96.0 || vres != 96.0)
                                                                                                                                                  {
                                                                                                                                                      // You may consider using the SetResolution method for updating both resolution values in single call.
                                                                                                                                                      System.Console.WriteLine("Set resolution values to 96 dpi");
                                                                                                                                                      bmpImage.SetResolution(96.0, 96.0);

                                                                                                                                                      System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", bmpImage.HorizontalResolution);
                                                                                                                                                      System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", bmpImage.VerticalResolution);
                                                                                                                                                  }

                                                                                                                                                  //The output may look like this:
                                                                                                                                                  //The pixel format: Rgb24Bpp, used channels: 8,8,8
                                                                                                                                                  //The raw line size in bytes: 1500
                                                                                                                                                  //The bitmap compression: Rgb
                                                                                                                                                  //The bitmap width: 500
                                                                                                                                                  //The bitmap height: 375
                                                                                                                                                  //The number of bits per pixel: 24
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 0
                                                                                                                                                  //The vertical resolution, in pixels per inch: 0
                                                                                                                                                  //Set resolution values to 96 dpi
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 96.012
                                                                                                                                                  //The vertical resolution, in pixels per inch: 96.012
                                                                                                                                              }

Наступний приклад показує, як компресія bitmap впливає на розмір зображення виходу.

Aspose.Imaging.FileFormats.Bmp.BitmapCompression[] compressions = new Aspose.Imaging.FileFormats.Bmp.BitmapCompression[]
                                                                                                {
                                                                                                    Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rgb,
                                                                                                    Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rle8,
                                                                                                };

                                                                                                Aspose.Imaging.Color[] paletterColors = new Aspose.Imaging.Color[]
                                                                                                {
                                                                                                    Aspose.Imaging.Color.Red,
                                                                                                    Aspose.Imaging.Color.Green,
                                                                                                };

                                                                                                // Create a monochrome palette which contains only red and green colors.
                                                                                                Aspose.Imaging.IColorPalette palette = new Aspose.Imaging.ColorPalette(paletterColors);

                                                                                                foreach (Aspose.Imaging.FileFormats.Bmp.BitmapCompression compression in compressions)
                                                                                                {
                                                                                                    // Create a 8-bpp BMP image of 100 x 100 px.
                                                                                                    using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 8, palette, compression, 0.0, 0.0))
                                                                                                    {
                                                                                                        Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(bmpImage);

                                                                                                        // Fill the entire image in red.
                                                                                                        Aspose.Imaging.Brushes.SolidBrush redBrush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
                                                                                                        gr.FillRectangle(redBrush, bmpImage.Bounds);

                                                                                                        // Save the image to a stream to get the output image size.
                                                                                                        using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
                                                                                                        {
                                                                                                            bmpImage.Save(stream);

                                                                                                            System.Console.WriteLine("---------------------------------------------");
                                                                                                            System.Console.WriteLine("The compression={0}", bmpImage.Compression);
                                                                                                            System.Console.WriteLine("The number of bits per pixel={0}", bmpImage.BitsPerPixel);
                                                                                                            System.Console.WriteLine("The image dimensions={0} x {1}", bmpImage.Width, bmpImage.Height);
                                                                                                            System.Console.WriteLine("The raw line size={0}", bmpImage.RawLineSize);
                                                                                                            System.Console.WriteLine("The output size in bytes={0}", stream.Length);
                                                                                                        }
                                                                                                    }
                                                                                                }

                                                                                                // The output looks like this:
                                                                                                // ---------------------------------------------
                                                                                                // The compression = Rgb
                                                                                                // The number of bits per pixel = 8
                                                                                                // The image dimensions = 100 x 100
                                                                                                // The raw line size = 100
                                                                                                // The output size in bytes = 11078
                                                                                                // ---------------------------------------------
                                                                                                // The compression = Rle8
                                                                                                // The number of bits per pixel = 8
                                                                                                // The image dimensions = 100 x 100
                                                                                                // The raw line size = 100
                                                                                                // The output size in bytes = 856

FileFormat

Легко отримати вартість формату файлу з цією зручною для користувача властивістю.Ідеальний для розробників, які шукають швидкий доступ до інформації про формат файлу.

public override FileFormat FileFormat { get; }

вартість нерухомості

FileFormat

Examples

Наступний приклад показує, як витягти інформацію про формат сирових даних і альфа-канал з зображення BMP.

// Create a 32-bpp BMP image of 100 x 100 px.
                                                                                                                           using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 32, null))
                                                                                                                           {
                                                                                                                               System.Console.WriteLine("FileFormat={0}, RawDataFormat={1}, HasAlpha={2}", bmpImage.FileFormat, bmpImage.RawDataFormat, bmpImage.HasAlpha);
                                                                                                                           };

                                                                                                                           // Create a 24-bpp BMP image of 100 x 100 px.
                                                                                                                           using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 24, null))
                                                                                                                           {
                                                                                                                               System.Console.WriteLine("FileFormat={0}, RawDataFormat={1}, HasAlpha={2}", bmpImage.FileFormat, bmpImage.RawDataFormat, bmpImage.HasAlpha);
                                                                                                                           };

                                                                                                                           // Generally, BMP doesn't support alpha channel so the output will look like this:
                                                                                                                           // FileFormat = Bmp, RawDataFormat = Rgb32Bpp, used channels: 8,8,8,8, HasAlpha = False
                                                                                                                           // FileFormat = Bmp, RawDataFormat = Rgb24Bpp, used channels: 8,8,8, HasAlpha = False

HasAlpha

Він отримує вартість, яка вказує на те, чи має ця інстанція альфа.

public override bool HasAlpha { get; }

вартість нерухомості

bool

Height

Відновлюйте висоту зображення без зусиль з цією власністю. Ідеальний для розробниківНеобхідний швидкий доступ до інформації про розміри зображення.

public override int Height { get; }

вартість нерухомості

int

Examples

Наступний приклад отримує загальну інформацію про зображення, в тому числі формат пікселів, розмір образу, роздільна здатність, компресія і т.д.

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.bmp"))
                                                                                                                                              {
                                                                                                                                                  Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;                

                                                                                                                                                  System.Console.WriteLine("The pixel format: {0}", bmpImage.RawDataFormat);                
                                                                                                                                                  System.Console.WriteLine("The raw line size in bytes: {0}", bmpImage.RawLineSize);
                                                                                                                                                  System.Console.WriteLine("The bitmap compression: {0}", bmpImage.Compression);
                                                                                                                                                  System.Console.WriteLine("The bitmap width: {0}", bmpImage.Width);
                                                                                                                                                  System.Console.WriteLine("The bitmap height: {0}", bmpImage.Height);
                                                                                                                                                  System.Console.WriteLine("The number of bits per pixel: {0}", bmpImage.BitsPerPixel);

                                                                                                                                                  double hres = bmpImage.HorizontalResolution;
                                                                                                                                                  double vres = bmpImage.VerticalResolution;
                                                                                                                                                  System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", hres);
                                                                                                                                                  System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", vres);

                                                                                                                                                  if (hres != 96.0 || vres != 96.0)
                                                                                                                                                  {
                                                                                                                                                      // You may consider using the SetResolution method for updating both resolution values in single call.
                                                                                                                                                      System.Console.WriteLine("Set resolution values to 96 dpi");
                                                                                                                                                      bmpImage.SetResolution(96.0, 96.0);

                                                                                                                                                      System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", bmpImage.HorizontalResolution);
                                                                                                                                                      System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", bmpImage.VerticalResolution);
                                                                                                                                                  }

                                                                                                                                                  //The output may look like this:
                                                                                                                                                  //The pixel format: Rgb24Bpp, used channels: 8,8,8
                                                                                                                                                  //The raw line size in bytes: 1500
                                                                                                                                                  //The bitmap compression: Rgb
                                                                                                                                                  //The bitmap width: 500
                                                                                                                                                  //The bitmap height: 375
                                                                                                                                                  //The number of bits per pixel: 24
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 0
                                                                                                                                                  //The vertical resolution, in pixels per inch: 0
                                                                                                                                                  //Set resolution values to 96 dpi
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 96.012
                                                                                                                                                  //The vertical resolution, in pixels per inch: 96.012
                                                                                                                                              }

Наступний приклад показує, як компресія bitmap впливає на розмір зображення виходу.

Aspose.Imaging.FileFormats.Bmp.BitmapCompression[] compressions = new Aspose.Imaging.FileFormats.Bmp.BitmapCompression[]
                                                                                                {
                                                                                                    Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rgb,
                                                                                                    Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rle8,
                                                                                                };

                                                                                                Aspose.Imaging.Color[] paletterColors = new Aspose.Imaging.Color[]
                                                                                                {
                                                                                                    Aspose.Imaging.Color.Red,
                                                                                                    Aspose.Imaging.Color.Green,
                                                                                                };

                                                                                                // Create a monochrome palette which contains only red and green colors.
                                                                                                Aspose.Imaging.IColorPalette palette = new Aspose.Imaging.ColorPalette(paletterColors);

                                                                                                foreach (Aspose.Imaging.FileFormats.Bmp.BitmapCompression compression in compressions)
                                                                                                {
                                                                                                    // Create a 8-bpp BMP image of 100 x 100 px.
                                                                                                    using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 8, palette, compression, 0.0, 0.0))
                                                                                                    {
                                                                                                        Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(bmpImage);

                                                                                                        // Fill the entire image in red.
                                                                                                        Aspose.Imaging.Brushes.SolidBrush redBrush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
                                                                                                        gr.FillRectangle(redBrush, bmpImage.Bounds);

                                                                                                        // Save the image to a stream to get the output image size.
                                                                                                        using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
                                                                                                        {
                                                                                                            bmpImage.Save(stream);

                                                                                                            System.Console.WriteLine("---------------------------------------------");
                                                                                                            System.Console.WriteLine("The compression={0}", bmpImage.Compression);
                                                                                                            System.Console.WriteLine("The number of bits per pixel={0}", bmpImage.BitsPerPixel);
                                                                                                            System.Console.WriteLine("The image dimensions={0} x {1}", bmpImage.Width, bmpImage.Height);
                                                                                                            System.Console.WriteLine("The raw line size={0}", bmpImage.RawLineSize);
                                                                                                            System.Console.WriteLine("The output size in bytes={0}", stream.Length);
                                                                                                        }
                                                                                                    }
                                                                                                }

                                                                                                // The output looks like this:
                                                                                                // ---------------------------------------------
                                                                                                // The compression = Rgb
                                                                                                // The number of bits per pixel = 8
                                                                                                // The image dimensions = 100 x 100
                                                                                                // The raw line size = 100
                                                                                                // The output size in bytes = 11078
                                                                                                // ---------------------------------------------
                                                                                                // The compression = Rle8
                                                                                                // The number of bits per pixel = 8
                                                                                                // The image dimensions = 100 x 100
                                                                                                // The raw line size = 100
                                                                                                // The output size in bytes = 856

HorizontalResolution

Ця нерухомість дозволяє легко отримати або встановити горизонтальну резолюцію,вимірюється в пікселях на дюйм, з об’єкта Aspose.Imaging.RasterImage.розробники потребують точного контролю над роздільною здатністю зображення для своїх додатків.

public override double HorizontalResolution { get; set; }

вартість нерухомості

double

Examples

Наступний приклад показує, як встановити горизонтальне/вертикальне розділення зображення BMP.

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

                                                                                                using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.bmp"))
                                                                                                {
                                                                                                    Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;

                                                                                                    // Get horizontal and vertical resolution of the BmpImage
                                                                                                    double horizontalResolution = bmpImage.HorizontalResolution;
                                                                                                    double verticalResolution = bmpImage.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");
                                                                                                        bmpImage.SetResolution(96.0, 96.0);

                                                                                                        System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", bmpImage.HorizontalResolution);
                                                                                                        System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", bmpImage.VerticalResolution);
                                                                                                    }

                                                                                                    // The output may look like this:
                                                                                                    // The horizontal resolution, in pixels per inch: 0
                                                                                                    // The vertical resolution, in pixels per inch: 0
                                                                                                    // Set resolution values to 96 dpi
                                                                                                    // The horizontal resolution, in pixels per inch: 96.012
                                                                                                    // The vertical resolution, in pixels per inch: 96.012
                                                                                                }

Наступний приклад отримує загальну інформацію про зображення, в тому числі формат пікселів, розмір образу, роздільна здатність, компресія і т.д.

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.bmp"))
                                                                                                                                              {
                                                                                                                                                  Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;                

                                                                                                                                                  System.Console.WriteLine("The pixel format: {0}", bmpImage.RawDataFormat);                
                                                                                                                                                  System.Console.WriteLine("The raw line size in bytes: {0}", bmpImage.RawLineSize);
                                                                                                                                                  System.Console.WriteLine("The bitmap compression: {0}", bmpImage.Compression);
                                                                                                                                                  System.Console.WriteLine("The bitmap width: {0}", bmpImage.Width);
                                                                                                                                                  System.Console.WriteLine("The bitmap height: {0}", bmpImage.Height);
                                                                                                                                                  System.Console.WriteLine("The number of bits per pixel: {0}", bmpImage.BitsPerPixel);

                                                                                                                                                  double hres = bmpImage.HorizontalResolution;
                                                                                                                                                  double vres = bmpImage.VerticalResolution;
                                                                                                                                                  System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", hres);
                                                                                                                                                  System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", vres);

                                                                                                                                                  if (hres != 96.0 || vres != 96.0)
                                                                                                                                                  {
                                                                                                                                                      // You may consider using the SetResolution method for updating both resolution values in single call.
                                                                                                                                                      System.Console.WriteLine("Set resolution values to 96 dpi");
                                                                                                                                                      bmpImage.SetResolution(96.0, 96.0);

                                                                                                                                                      System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", bmpImage.HorizontalResolution);
                                                                                                                                                      System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", bmpImage.VerticalResolution);
                                                                                                                                                  }

                                                                                                                                                  //The output may look like this:
                                                                                                                                                  //The pixel format: Rgb24Bpp, used channels: 8,8,8
                                                                                                                                                  //The raw line size in bytes: 1500
                                                                                                                                                  //The bitmap compression: Rgb
                                                                                                                                                  //The bitmap width: 500
                                                                                                                                                  //The bitmap height: 375
                                                                                                                                                  //The number of bits per pixel: 24
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 0
                                                                                                                                                  //The vertical resolution, in pixels per inch: 0
                                                                                                                                                  //Set resolution values to 96 dpi
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 96.012
                                                                                                                                                  //The vertical resolution, in pixels per inch: 96.012
                                                                                                                                              }

Remarks

Зауважимо, що ця вартість завжди 96 оскільки різні платформи не можуть повернути розділ екрану. Ви можете розглянути використання методу SetResolution для оновлення обох роздільних значень в одному дзвінку.

RawDataFormat

Легко отримати формат своїх сирових даних з цією зручною для користувача функцією.Ідеально підходить для розробників, які прагнуть швидко отримати доступ до важливої інформації про свій формат даних.

public override PixelDataFormat RawDataFormat { get; }

вартість нерухомості

PixelDataFormat

Examples

Наступний приклад показує, як витягти інформацію про формат сирових даних і альфа-канал з зображення BMP.

// Create a 32-bpp BMP image of 100 x 100 px.
                                                                                                                           using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 32, null))
                                                                                                                           {
                                                                                                                               System.Console.WriteLine("FileFormat={0}, RawDataFormat={1}, HasAlpha={2}", bmpImage.FileFormat, bmpImage.RawDataFormat, bmpImage.HasAlpha);
                                                                                                                           };

                                                                                                                           // Create a 24-bpp BMP image of 100 x 100 px.
                                                                                                                           using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 24, null))
                                                                                                                           {
                                                                                                                               System.Console.WriteLine("FileFormat={0}, RawDataFormat={1}, HasAlpha={2}", bmpImage.FileFormat, bmpImage.RawDataFormat, bmpImage.HasAlpha);
                                                                                                                           };

                                                                                                                           // Generally, BMP doesn't support alpha channel so the output will look like this:
                                                                                                                           // FileFormat = Bmp, RawDataFormat = Rgb32Bpp, used channels: 8,8,8,8, HasAlpha = False
                                                                                                                           // FileFormat = Bmp, RawDataFormat = Rgb24Bpp, used channels: 8,8,8, HasAlpha = False

Наступний приклад отримує загальну інформацію про зображення, в тому числі формат пікселів, розмір образу, роздільна здатність, компресія і т.д.

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.bmp"))
                                                                                                                                              {
                                                                                                                                                  Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;                

                                                                                                                                                  System.Console.WriteLine("The pixel format: {0}", bmpImage.RawDataFormat);                
                                                                                                                                                  System.Console.WriteLine("The raw line size in bytes: {0}", bmpImage.RawLineSize);
                                                                                                                                                  System.Console.WriteLine("The bitmap compression: {0}", bmpImage.Compression);
                                                                                                                                                  System.Console.WriteLine("The bitmap width: {0}", bmpImage.Width);
                                                                                                                                                  System.Console.WriteLine("The bitmap height: {0}", bmpImage.Height);
                                                                                                                                                  System.Console.WriteLine("The number of bits per pixel: {0}", bmpImage.BitsPerPixel);

                                                                                                                                                  double hres = bmpImage.HorizontalResolution;
                                                                                                                                                  double vres = bmpImage.VerticalResolution;
                                                                                                                                                  System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", hres);
                                                                                                                                                  System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", vres);

                                                                                                                                                  if (hres != 96.0 || vres != 96.0)
                                                                                                                                                  {
                                                                                                                                                      // You may consider using the SetResolution method for updating both resolution values in single call.
                                                                                                                                                      System.Console.WriteLine("Set resolution values to 96 dpi");
                                                                                                                                                      bmpImage.SetResolution(96.0, 96.0);

                                                                                                                                                      System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", bmpImage.HorizontalResolution);
                                                                                                                                                      System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", bmpImage.VerticalResolution);
                                                                                                                                                  }

                                                                                                                                                  //The output may look like this:
                                                                                                                                                  //The pixel format: Rgb24Bpp, used channels: 8,8,8
                                                                                                                                                  //The raw line size in bytes: 1500
                                                                                                                                                  //The bitmap compression: Rgb
                                                                                                                                                  //The bitmap width: 500
                                                                                                                                                  //The bitmap height: 375
                                                                                                                                                  //The number of bits per pixel: 24
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 0
                                                                                                                                                  //The vertical resolution, in pixels per inch: 0
                                                                                                                                                  //Set resolution values to 96 dpi
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 96.012
                                                                                                                                                  //The vertical resolution, in pixels per inch: 96.012
                                                                                                                                              }

RawLineSize

Швидко дістатися до розмірів кожної сирої лінії в байтах з цією простою власністю.Ідеальний для розробників, які потребують ефективного обробки даних зображення.

public override int RawLineSize { get; }

вартість нерухомості

int

Examples

Наступний приклад отримує загальну інформацію про зображення, в тому числі формат пікселів, розмір образу, роздільна здатність, компресія і т.д.

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.bmp"))
                                                                                                                                              {
                                                                                                                                                  Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;                

                                                                                                                                                  System.Console.WriteLine("The pixel format: {0}", bmpImage.RawDataFormat);                
                                                                                                                                                  System.Console.WriteLine("The raw line size in bytes: {0}", bmpImage.RawLineSize);
                                                                                                                                                  System.Console.WriteLine("The bitmap compression: {0}", bmpImage.Compression);
                                                                                                                                                  System.Console.WriteLine("The bitmap width: {0}", bmpImage.Width);
                                                                                                                                                  System.Console.WriteLine("The bitmap height: {0}", bmpImage.Height);
                                                                                                                                                  System.Console.WriteLine("The number of bits per pixel: {0}", bmpImage.BitsPerPixel);

                                                                                                                                                  double hres = bmpImage.HorizontalResolution;
                                                                                                                                                  double vres = bmpImage.VerticalResolution;
                                                                                                                                                  System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", hres);
                                                                                                                                                  System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", vres);

                                                                                                                                                  if (hres != 96.0 || vres != 96.0)
                                                                                                                                                  {
                                                                                                                                                      // You may consider using the SetResolution method for updating both resolution values in single call.
                                                                                                                                                      System.Console.WriteLine("Set resolution values to 96 dpi");
                                                                                                                                                      bmpImage.SetResolution(96.0, 96.0);

                                                                                                                                                      System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", bmpImage.HorizontalResolution);
                                                                                                                                                      System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", bmpImage.VerticalResolution);
                                                                                                                                                  }

                                                                                                                                                  //The output may look like this:
                                                                                                                                                  //The pixel format: Rgb24Bpp, used channels: 8,8,8
                                                                                                                                                  //The raw line size in bytes: 1500
                                                                                                                                                  //The bitmap compression: Rgb
                                                                                                                                                  //The bitmap width: 500
                                                                                                                                                  //The bitmap height: 375
                                                                                                                                                  //The number of bits per pixel: 24
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 0
                                                                                                                                                  //The vertical resolution, in pixels per inch: 0
                                                                                                                                                  //Set resolution values to 96 dpi
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 96.012
                                                                                                                                                  //The vertical resolution, in pixels per inch: 96.012
                                                                                                                                              }

Наступний приклад показує, як компресія bitmap впливає на розмір зображення виходу.

Aspose.Imaging.FileFormats.Bmp.BitmapCompression[] compressions = new Aspose.Imaging.FileFormats.Bmp.BitmapCompression[]
                                                                                                {
                                                                                                    Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rgb,
                                                                                                    Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rle8,
                                                                                                };

                                                                                                Aspose.Imaging.Color[] paletterColors = new Aspose.Imaging.Color[]
                                                                                                {
                                                                                                    Aspose.Imaging.Color.Red,
                                                                                                    Aspose.Imaging.Color.Green,
                                                                                                };

                                                                                                // Create a monochrome palette which contains only red and green colors.
                                                                                                Aspose.Imaging.IColorPalette palette = new Aspose.Imaging.ColorPalette(paletterColors);

                                                                                                foreach (Aspose.Imaging.FileFormats.Bmp.BitmapCompression compression in compressions)
                                                                                                {
                                                                                                    // Create a 8-bpp BMP image of 100 x 100 px.
                                                                                                    using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 8, palette, compression, 0.0, 0.0))
                                                                                                    {
                                                                                                        Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(bmpImage);

                                                                                                        // Fill the entire image in red.
                                                                                                        Aspose.Imaging.Brushes.SolidBrush redBrush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
                                                                                                        gr.FillRectangle(redBrush, bmpImage.Bounds);

                                                                                                        // Save the image to a stream to get the output image size.
                                                                                                        using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
                                                                                                        {
                                                                                                            bmpImage.Save(stream);

                                                                                                            System.Console.WriteLine("---------------------------------------------");
                                                                                                            System.Console.WriteLine("The compression={0}", bmpImage.Compression);
                                                                                                            System.Console.WriteLine("The number of bits per pixel={0}", bmpImage.BitsPerPixel);
                                                                                                            System.Console.WriteLine("The image dimensions={0} x {1}", bmpImage.Width, bmpImage.Height);
                                                                                                            System.Console.WriteLine("The raw line size={0}", bmpImage.RawLineSize);
                                                                                                            System.Console.WriteLine("The output size in bytes={0}", stream.Length);
                                                                                                        }
                                                                                                    }
                                                                                                }

                                                                                                // The output looks like this:
                                                                                                // ---------------------------------------------
                                                                                                // The compression = Rgb
                                                                                                // The number of bits per pixel = 8
                                                                                                // The image dimensions = 100 x 100
                                                                                                // The raw line size = 100
                                                                                                // The output size in bytes = 11078
                                                                                                // ---------------------------------------------
                                                                                                // The compression = Rle8
                                                                                                // The number of bits per pixel = 8
                                                                                                // The image dimensions = 100 x 100
                                                                                                // The raw line size = 100
                                                                                                // The output size in bytes = 856

VerticalResolution

Легко отримувати або встановити вертикальну роздільну здатність, вимірювану в пікселях на дюйм,від цього Aspose.Imaging.RasterImage об’єкт з цією власністю. ідеально підходить для розробників, які потребуютьточний контроль над роздільною здатністю зображення в їх застосуванні.

public override double VerticalResolution { get; set; }

вартість нерухомості

double

Examples

Наступний приклад показує, як встановити горизонтальне/вертикальне розділення зображення BMP.

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

                                                                                                using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.bmp"))
                                                                                                {
                                                                                                    Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;

                                                                                                    // Get horizontal and vertical resolution of the BmpImage
                                                                                                    double horizontalResolution = bmpImage.HorizontalResolution;
                                                                                                    double verticalResolution = bmpImage.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");
                                                                                                        bmpImage.SetResolution(96.0, 96.0);

                                                                                                        System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", bmpImage.HorizontalResolution);
                                                                                                        System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", bmpImage.VerticalResolution);
                                                                                                    }

                                                                                                    // The output may look like this:
                                                                                                    // The horizontal resolution, in pixels per inch: 0
                                                                                                    // The vertical resolution, in pixels per inch: 0
                                                                                                    // Set resolution values to 96 dpi
                                                                                                    // The horizontal resolution, in pixels per inch: 96.012
                                                                                                    // The vertical resolution, in pixels per inch: 96.012
                                                                                                }

Наступний приклад отримує загальну інформацію про зображення, в тому числі формат пікселів, розмір образу, роздільна здатність, компресія і т.д.

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.bmp"))
                                                                                                                                              {
                                                                                                                                                  Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;                

                                                                                                                                                  System.Console.WriteLine("The pixel format: {0}", bmpImage.RawDataFormat);                
                                                                                                                                                  System.Console.WriteLine("The raw line size in bytes: {0}", bmpImage.RawLineSize);
                                                                                                                                                  System.Console.WriteLine("The bitmap compression: {0}", bmpImage.Compression);
                                                                                                                                                  System.Console.WriteLine("The bitmap width: {0}", bmpImage.Width);
                                                                                                                                                  System.Console.WriteLine("The bitmap height: {0}", bmpImage.Height);
                                                                                                                                                  System.Console.WriteLine("The number of bits per pixel: {0}", bmpImage.BitsPerPixel);

                                                                                                                                                  double hres = bmpImage.HorizontalResolution;
                                                                                                                                                  double vres = bmpImage.VerticalResolution;
                                                                                                                                                  System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", hres);
                                                                                                                                                  System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", vres);

                                                                                                                                                  if (hres != 96.0 || vres != 96.0)
                                                                                                                                                  {
                                                                                                                                                      // You may consider using the SetResolution method for updating both resolution values in single call.
                                                                                                                                                      System.Console.WriteLine("Set resolution values to 96 dpi");
                                                                                                                                                      bmpImage.SetResolution(96.0, 96.0);

                                                                                                                                                      System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", bmpImage.HorizontalResolution);
                                                                                                                                                      System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", bmpImage.VerticalResolution);
                                                                                                                                                  }

                                                                                                                                                  //The output may look like this:
                                                                                                                                                  //The pixel format: Rgb24Bpp, used channels: 8,8,8
                                                                                                                                                  //The raw line size in bytes: 1500
                                                                                                                                                  //The bitmap compression: Rgb
                                                                                                                                                  //The bitmap width: 500
                                                                                                                                                  //The bitmap height: 375
                                                                                                                                                  //The number of bits per pixel: 24
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 0
                                                                                                                                                  //The vertical resolution, in pixels per inch: 0
                                                                                                                                                  //Set resolution values to 96 dpi
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 96.012
                                                                                                                                                  //The vertical resolution, in pixels per inch: 96.012
                                                                                                                                              }

Remarks

Зауважимо, що ця вартість завжди 96 оскільки різні платформи не можуть повернути розділ екрану. Ви можете розглянути використання методу SetResolution для оновлення обох роздільних значень в одному дзвінку.

Width

Доступ до ширини зображення легко з цією власністю. Ідеальний для розробниківПошук швидкої інформації про розміри зображення.

public override int Width { get; }

вартість нерухомості

int

Examples

Наступний приклад отримує загальну інформацію про зображення, в тому числі формат пікселів, розмір образу, роздільна здатність, компресія і т.д.

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.bmp"))
                                                                                                                                              {
                                                                                                                                                  Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;                

                                                                                                                                                  System.Console.WriteLine("The pixel format: {0}", bmpImage.RawDataFormat);                
                                                                                                                                                  System.Console.WriteLine("The raw line size in bytes: {0}", bmpImage.RawLineSize);
                                                                                                                                                  System.Console.WriteLine("The bitmap compression: {0}", bmpImage.Compression);
                                                                                                                                                  System.Console.WriteLine("The bitmap width: {0}", bmpImage.Width);
                                                                                                                                                  System.Console.WriteLine("The bitmap height: {0}", bmpImage.Height);
                                                                                                                                                  System.Console.WriteLine("The number of bits per pixel: {0}", bmpImage.BitsPerPixel);

                                                                                                                                                  double hres = bmpImage.HorizontalResolution;
                                                                                                                                                  double vres = bmpImage.VerticalResolution;
                                                                                                                                                  System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", hres);
                                                                                                                                                  System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", vres);

                                                                                                                                                  if (hres != 96.0 || vres != 96.0)
                                                                                                                                                  {
                                                                                                                                                      // You may consider using the SetResolution method for updating both resolution values in single call.
                                                                                                                                                      System.Console.WriteLine("Set resolution values to 96 dpi");
                                                                                                                                                      bmpImage.SetResolution(96.0, 96.0);

                                                                                                                                                      System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", bmpImage.HorizontalResolution);
                                                                                                                                                      System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", bmpImage.VerticalResolution);
                                                                                                                                                  }

                                                                                                                                                  //The output may look like this:
                                                                                                                                                  //The pixel format: Rgb24Bpp, used channels: 8,8,8
                                                                                                                                                  //The raw line size in bytes: 1500
                                                                                                                                                  //The bitmap compression: Rgb
                                                                                                                                                  //The bitmap width: 500
                                                                                                                                                  //The bitmap height: 375
                                                                                                                                                  //The number of bits per pixel: 24
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 0
                                                                                                                                                  //The vertical resolution, in pixels per inch: 0
                                                                                                                                                  //Set resolution values to 96 dpi
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 96.012
                                                                                                                                                  //The vertical resolution, in pixels per inch: 96.012
                                                                                                                                              }

Наступний приклад показує, як компресія bitmap впливає на розмір зображення виходу.

Aspose.Imaging.FileFormats.Bmp.BitmapCompression[] compressions = new Aspose.Imaging.FileFormats.Bmp.BitmapCompression[]
                                                                                                {
                                                                                                    Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rgb,
                                                                                                    Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rle8,
                                                                                                };

                                                                                                Aspose.Imaging.Color[] paletterColors = new Aspose.Imaging.Color[]
                                                                                                {
                                                                                                    Aspose.Imaging.Color.Red,
                                                                                                    Aspose.Imaging.Color.Green,
                                                                                                };

                                                                                                // Create a monochrome palette which contains only red and green colors.
                                                                                                Aspose.Imaging.IColorPalette palette = new Aspose.Imaging.ColorPalette(paletterColors);

                                                                                                foreach (Aspose.Imaging.FileFormats.Bmp.BitmapCompression compression in compressions)
                                                                                                {
                                                                                                    // Create a 8-bpp BMP image of 100 x 100 px.
                                                                                                    using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100, 8, palette, compression, 0.0, 0.0))
                                                                                                    {
                                                                                                        Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(bmpImage);

                                                                                                        // Fill the entire image in red.
                                                                                                        Aspose.Imaging.Brushes.SolidBrush redBrush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
                                                                                                        gr.FillRectangle(redBrush, bmpImage.Bounds);

                                                                                                        // Save the image to a stream to get the output image size.
                                                                                                        using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
                                                                                                        {
                                                                                                            bmpImage.Save(stream);

                                                                                                            System.Console.WriteLine("---------------------------------------------");
                                                                                                            System.Console.WriteLine("The compression={0}", bmpImage.Compression);
                                                                                                            System.Console.WriteLine("The number of bits per pixel={0}", bmpImage.BitsPerPixel);
                                                                                                            System.Console.WriteLine("The image dimensions={0} x {1}", bmpImage.Width, bmpImage.Height);
                                                                                                            System.Console.WriteLine("The raw line size={0}", bmpImage.RawLineSize);
                                                                                                            System.Console.WriteLine("The output size in bytes={0}", stream.Length);
                                                                                                        }
                                                                                                    }
                                                                                                }

                                                                                                // The output looks like this:
                                                                                                // ---------------------------------------------
                                                                                                // The compression = Rgb
                                                                                                // The number of bits per pixel = 8
                                                                                                // The image dimensions = 100 x 100
                                                                                                // The raw line size = 100
                                                                                                // The output size in bytes = 11078
                                                                                                // ---------------------------------------------
                                                                                                // The compression = Rle8
                                                                                                // The number of bits per pixel = 8
                                                                                                // The image dimensions = 100 x 100
                                                                                                // The raw line size = 100
                                                                                                // The output size in bytes = 856

Methods

GetDefaultOptions(Об’єкт[])

Відновлюйте стандартні варіанти без зусиль за допомогою цього простих методів.Ідеальний для розробників, які шукають швидкий доступ до стандартних налаштувань або конфігурацій зображення.

public override ImageOptionsBase GetDefaultOptions(object[] args)

Parameters

args object [ ]

І аргументи .

Returns

ImageOptionsBase

Дефіцитні варіанти

OnCached()

Зателефонується, коли дані зашифровані і всі пов’язані ресурси можуть бути де-розподілені.

protected override void OnCached()

OnPaletteChanging(Створення IColorPalette)

Зателефонуйте, коли змінюється палет.

protected override void OnPaletteChanging(IColorPalette oldPalette, IColorPalette newPalette)

Parameters

oldPalette IColorPalette

Старий палець

newPalette IColorPalette

Новий палець

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

Наступний приклад показує, як встановити горизонтальне/вертикальне розділення зображення BMP.

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

                                                                                                using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.bmp"))
                                                                                                {
                                                                                                    Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;

                                                                                                    // Get horizontal and vertical resolution of the BmpImage
                                                                                                    double horizontalResolution = bmpImage.HorizontalResolution;
                                                                                                    double verticalResolution = bmpImage.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");
                                                                                                        bmpImage.SetResolution(96.0, 96.0);

                                                                                                        System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", bmpImage.HorizontalResolution);
                                                                                                        System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", bmpImage.VerticalResolution);
                                                                                                    }

                                                                                                    // The output may look like this:
                                                                                                    // The horizontal resolution, in pixels per inch: 0
                                                                                                    // The vertical resolution, in pixels per inch: 0
                                                                                                    // Set resolution values to 96 dpi
                                                                                                    // The horizontal resolution, in pixels per inch: 96.012
                                                                                                    // The vertical resolution, in pixels per inch: 96.012
                                                                                                }

Наступний приклад отримує загальну інформацію про зображення, в тому числі формат пікселів, розмір образу, роздільна здатність, компресія і т.д.

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.bmp"))
                                                                                                                                              {
                                                                                                                                                  Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;                

                                                                                                                                                  System.Console.WriteLine("The pixel format: {0}", bmpImage.RawDataFormat);                
                                                                                                                                                  System.Console.WriteLine("The raw line size in bytes: {0}", bmpImage.RawLineSize);
                                                                                                                                                  System.Console.WriteLine("The bitmap compression: {0}", bmpImage.Compression);
                                                                                                                                                  System.Console.WriteLine("The bitmap width: {0}", bmpImage.Width);
                                                                                                                                                  System.Console.WriteLine("The bitmap height: {0}", bmpImage.Height);
                                                                                                                                                  System.Console.WriteLine("The number of bits per pixel: {0}", bmpImage.BitsPerPixel);

                                                                                                                                                  double hres = bmpImage.HorizontalResolution;
                                                                                                                                                  double vres = bmpImage.VerticalResolution;
                                                                                                                                                  System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", hres);
                                                                                                                                                  System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", vres);

                                                                                                                                                  if (hres != 96.0 || vres != 96.0)
                                                                                                                                                  {
                                                                                                                                                      // You may consider using the SetResolution method for updating both resolution values in single call.
                                                                                                                                                      System.Console.WriteLine("Set resolution values to 96 dpi");
                                                                                                                                                      bmpImage.SetResolution(96.0, 96.0);

                                                                                                                                                      System.Console.WriteLine("The horizontal resolution, in pixels per inch: {0}", bmpImage.HorizontalResolution);
                                                                                                                                                      System.Console.WriteLine("The vertical resolution, in pixels per inch: {0}", bmpImage.VerticalResolution);
                                                                                                                                                  }

                                                                                                                                                  //The output may look like this:
                                                                                                                                                  //The pixel format: Rgb24Bpp, used channels: 8,8,8
                                                                                                                                                  //The raw line size in bytes: 1500
                                                                                                                                                  //The bitmap compression: Rgb
                                                                                                                                                  //The bitmap width: 500
                                                                                                                                                  //The bitmap height: 375
                                                                                                                                                  //The number of bits per pixel: 24
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 0
                                                                                                                                                  //The vertical resolution, in pixels per inch: 0
                                                                                                                                                  //Set resolution values to 96 dpi
                                                                                                                                                  //The horizontal resolution, in pixels per inch: 96.012
                                                                                                                                                  //The vertical resolution, in pixels per inch: 96.012
                                                                                                                                              }

ToBitmap()

Легко перетворити зображення растера в біт-картку за допомогою цього простих методів.Ідеально підходить для розробників, які потребують безперервного переходу між різними форматами зображення.

public override Bitmap ToBitmap()

Returns

Bitmap

Бітмап

Examples

Наступний приклад конвертує зображення BMP в bitmap GDI.

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\sample.bmp"))
                                                                      {
                                                                          Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = (Aspose.Imaging.FileFormats.Bmp.BmpImage)image;
                                                                          System.Drawing.Bitmap bitmap = bmpImage.ToBitmap();

                                                                          // Process the GDI bitmap.
                                                                      }

UpdateDimensions(ІТ, ІТ)

Оновлення розмірів зображення.

protected override void UpdateDimensions(int newWidth, int newHeight)

Parameters

newWidth int

Новий зображення шириною.

newHeight int

Висота нової зображення.

 Українська