Class DicomImage

Class DicomImage

Nama dari : Aspose.Imaging.FileFormats.Dicom Pengumpulan: Aspose.Imaging.dll (25.4.0)

Kelas ini mengimplementasikan Imaging Digital dan Komunikasi dalam Kedokteran(DICOM) mendukung format gambar raster dan menawarkan solusi yang komprehensif untukmemproses gambar DICOM dengan ketepatan dan fleksibilitas.memanipulasi halaman gambar, termasuk operasi untuk mendapatkan, menambahkan, atau menghapus halaman, danmengendalikan halaman default dan aktif. dengan kemampuan untuk bekerja dengan saluran alfa,dimasukkan metadata XMP, resize, rotate, tanaman, binaris, menyesuaikan, menerapkan filter,dan konversi ke format raster lainnya. API ini memungkinkan pengembang untuk menanganiDICOM menggambar secara efektif sambil memenuhi berbagai persyaratan aplikasi dikonteks gambar medis.

[JsonObject(MemberSerialization.OptIn)]
public sealed class DicomImage : RasterCachedMultipageImage, IDisposable, IObjectWithBounds, IRasterImageArgb32PixelLoader, IRasterImageRawDataLoader, IHasXmpData, IHasMetadata, IMultipageImageExt, IMultipageImage

Inheritance

object DisposableObject DataStreamSupporter Image RasterImage RasterCachedImage RasterCachedMultipageImage DicomImage

Implements

IDisposable , IObjectWithBounds , IRasterImageArgb32PixelLoader , IRasterImageRawDataLoader , IHasXmpData , IHasMetadata , IMultipageImageExt , IMultipageImage

anggota yang diwarisi

RasterCachedMultipageImage.AdjustBrightness(int) , RasterCachedMultipageImage.AdjustContrast(float) , RasterCachedMultipageImage.AdjustGamma(float, float, float) , RasterCachedMultipageImage.AdjustGamma(float) , RasterCachedMultipageImage.Blend(Point, RasterImage, Rectangle, byte) , RasterCachedMultipageImage.BinarizeFixed(byte) , RasterCachedMultipageImage.BinarizeBradley(double, int) , RasterCachedMultipageImage.BinarizeBradley(double) , RasterCachedMultipageImage.BinarizeOtsu() , RasterCachedMultipageImage.Crop(Rectangle) , RasterCachedMultipageImage.Crop(int, int, int, int) , RasterCachedMultipageImage.Dither(DitheringMethod, int, IColorPalette) , RasterCachedMultipageImage.Grayscale() , RasterCachedMultipageImage.NormalizeHistogram() , RasterCachedMultipageImage.Rotate(float, bool, Color) , RasterCachedMultipageImage.RotateFlip(RotateFlipType) , RasterCachedMultipageImage.RotateFlipAll(RotateFlipType) , RasterCachedMultipageImage.Resize(int, int, ResizeType) , RasterCachedMultipageImage.Resize(int, int, ImageResizeSettings) , RasterCachedMultipageImage.ResizeWidthProportionally(int, ResizeType) , RasterCachedMultipageImage.ResizeHeightProportionally(int, ResizeType) , RasterCachedMultipageImage.ReplaceColor(int, byte, int) , RasterCachedMultipageImage.ReplaceNonTransparentColors(int) , RasterCachedMultipageImage.Filter(Rectangle, FilterOptionsBase) , RasterCachedMultipageImage.NormalizeAngle(bool, Color) , RasterCachedMultipageImage.CacheData() , RasterCachedMultipageImage.GetSerializedStream(ImageOptionsBase, Rectangle, out int) , RasterCachedMultipageImage.Height , RasterCachedMultipageImage.Width , RasterCachedMultipageImage.BitsPerPixel , RasterCachedMultipageImage.IsCached , RasterCachedMultipageImage.PageCount , RasterCachedMultipageImage.Pages , RasterCachedMultipageImage.HasAlpha , RasterCachedMultipageImage.HasTransparentColor , RasterCachedMultipageImage.ImageOpacity , RasterCachedMultipageImage.BackgroundColor , RasterCachedMultipageImage.XmpData , RasterCachedMultipageImage.PageExportingAction , 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

Mengubah jenis warna dalam kompresi DICOM.

using (var inputImage = Image.Load("original.jpg"))
                                                  {
                                                      var options = new DicomOptions { ColorType = ColorType.Grayscale8Bit };

                                                      inputImage.Save("original_8Bit.dcm", options);
                                                  }

Gunakan kompresi RLE dalam gambar DICOM.

using (var inputImage = Image.Load("original.jpg"))
                                              {
                                                  var options = new DicomOptions
                                                  {
                                                      ColorType = ColorType.Rgb24Bit,
                                                      Compression = new Compression { Type = CompressionType.Rle }
                                                  };

                                                  inputImage.Save("original_RLE.dcm", options);
                                              }

Menggunakan kompresi JPEG 2000 dalam gambar DICOM.

using (var inputImage = Image.Load("original.jpg"))
                                                    {
                                                        var options = new DicomOptions
                                                        {
                                                            ColorType = ColorType.Rgb24Bit,
                                                            Compression = new Compression
                                                            {
                                                                Type = CompressionType.Jpeg2000,
                                                                Jpeg2000 = new Jpeg2000Options
                                                                {
                                                                    Codec = Jpeg2000Codec.Jp2,
                                                                    Irreversible = false
                                                                }
                                                            }
                                                        };

                                                        inputImage.Save("original_JPEG2000.dcm", options);
                                                    }

Menggunakan kompresi JPEG dalam gambar DICOM.

using (var inputImage = Image.Load("original.jpg"))
                                               {
                                                   var options = new DicomOptions
                                                   {
                                                       ColorType = ColorType.Rgb24Bit,
                                                       Compression = new Compression
                                                       {
                                                           Type = CompressionType.Jpeg,
                                                           Jpeg = new JpegOptions
                                                           {
                                                               CompressionType = JpegCompressionMode.Baseline,
                                                               SampleRoundingMode = SampleRoundingMode.Truncate,
                                                               Quality = 50
                                                           }
                                                       }
                                                   };

                                                   inputImage.Save("original_JPEG.dcm", options);
                                               }

Contoh ini menunjukkan cara memuat gambar DICOM dari arus file.

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

                                                                           // Load a DICOM image from a file stream.
                                                                           using (System.IO.Stream stream = System.IO.File.OpenRead(dir + "sample.dicom"))
                                                                           {
                                                                               using (Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = new Aspose.Imaging.FileFormats.Dicom.DicomImage(stream))
                                                                               {
                                                                                   // Save each page as an individual PNG image.                    
                                                                                   foreach (Aspose.Imaging.FileFormats.Dicom.DicomPage dicomPage in dicomImage.DicomPages)
                                                                                   {
                                                                                       // Generate a file name based on the page index.
                                                                                       string fileName = string.Format("sample.{0}.png", dicomPage.Index);

                                                                                       // A DICOM page is a raster image, so all allowed operations with a raster image are applicable to a DICOM page.
                                                                                       dicomPage.Save(dir + fileName, new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                   }
                                                                               }
                                                                           }

Mencipta gambar dicom multi halaman.

using (DicomImage image = (DicomImage)Image.Create(
                                                   new DicomOptions() { Source = new StreamSource(new MemoryStream()) },
                                                   100,
                                                   100))
                                           {
                                               // Draw something using vector graphics
                                               Graphics graphics = new Graphics(image);
                                               graphics.FillRectangle(new SolidBrush(Color.BlueViolet), image.Bounds);
                                               graphics.FillRectangle(new SolidBrush(Color.Aqua), 10, 20, 50, 20);
                                               graphics.FillEllipse(new SolidBrush(Color.Orange), 30, 50, 70, 30);

                                               // Save the pixels of the drawn image. They are now on the first page of the Dicom image.
                                               int[] pixels = image.LoadArgb32Pixels(image.Bounds);

                                               // Add a few pages after, making them darker
                                               for (int i = 1; i < 5; i++)
                                               {
                                                   DicomPage page = image.AddPage();
                                                   page.SaveArgb32Pixels(page.Bounds, pixels);
                                                   page.AdjustBrightness(i * 30);
                                               }

                                               // Add a few pages in front of the main page, making them brighter
                                               for (int i = 1; i < 5; i++)
                                               {
                                                   DicomPage page = image.InsertPage(0);
                                                   page.SaveArgb32Pixels(page.Bounds, pixels);
                                                   page.AdjustBrightness(-i * 30);
                                               }

                                               // Save the created multi-page image to the output file
                                               image.Save("MultiPage.dcm");
                                           }

Constructors

DicomImage(Perbedaan, int, int)

Memulai contoh baru dari kelas DicomImage dengan mudah dengan inikonstruktor, menggunakan dicomOptions parameter. sempurna untuk pengembang melihatuntuk menyelam ke dalam Aspose.Imaging.FileFormats.Dicom.DicomImage objek dengan cepat dan efisien dalam proyek mereka.

public DicomImage(DicomOptions dicomOptions, int width, int height)

Parameters

dicomOptions DicomOptions

Pilihan yang dikom.

width int

dengan luasnya.

height int

ketinggian yang

DicomImage(Perbedaan, LoadOptions)

Memulai contoh baru dari kelas DicomImage dengan lancar dengan menggunakan arus danopsi parameter dalam konstruktor ini. ideal untuk pengembang yang ingin memulaibekerja dengan Aspose.Imaging.FileFormats.Dicom.DicomImage objek dengan cepat dan efektif dalam proyek mereka.

public DicomImage(Stream stream, LoadOptions loadOptions)

Parameters

stream Stream

dan aliran tersebut.

loadOptions LoadOptions

dengan opsi beban.

Examples

Contoh ini menunjukkan cara memuat gambar DICOM dari arus file untuk tetap dalam batas memori yang ditentukan.

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

                                                                                                                     // Load a DICOM image from a file stream.
                                                                                                                     using (System.IO.Stream stream = System.IO.File.OpenRead(dir + "multiframe.dicom"))
                                                                                                                     {
                                                                                                                         // The max allowed size for all internal buffers is 256KB.
                                                                                                                         Aspose.Imaging.LoadOptions loadOptions = new Aspose.Imaging.LoadOptions();
                                                                                                                         loadOptions.BufferSizeHint = 256 * 1024;

                                                                                                                         using (Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = new Aspose.Imaging.FileFormats.Dicom.DicomImage(stream, loadOptions))
                                                                                                                         {
                                                                                                                             // Save each page as an individual PNG image.
                                                                                                                             foreach (Aspose.Imaging.FileFormats.Dicom.DicomPage dicomPage in dicomImage.DicomPages)
                                                                                                                             {
                                                                                                                                 // Generate a file name based on the page index.
                                                                                                                                 string fileName = string.Format("multiframe.{0}.png", dicomPage.Index);

                                                                                                                                 // A DICOM page is a raster image, so all allowed operations with a raster image are applicable to a DICOM page.
                                                                                                                                 dicomPage.Save(dir + fileName, new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                             }
                                                                                                                         }
                                                                                                                     }

DicomImage(Stream)

Buat contoh baru dari kelas DicomImage dengan menggunakan parameter aliransempurna untuk pengembang yang mencari cara yang lancar untuk memulaiAspose.Imaging.FileFormats.Dicom.DicomImage objek dari aliran data yang ada dalam proyek mereka.

public DicomImage(Stream stream)

Parameters

stream Stream

dan aliran tersebut.

Examples

Contoh ini menunjukkan cara memuat gambar DICOM dari arus file.

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

                                                                           // Load a DICOM image from a file stream.
                                                                           using (System.IO.Stream stream = System.IO.File.OpenRead(dir + "sample.dicom"))
                                                                           {
                                                                               using (Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = new Aspose.Imaging.FileFormats.Dicom.DicomImage(stream))
                                                                               {
                                                                                   // Save each page as an individual PNG image.                    
                                                                                   foreach (Aspose.Imaging.FileFormats.Dicom.DicomPage dicomPage in dicomImage.DicomPages)
                                                                                   {
                                                                                       // Generate a file name based on the page index.
                                                                                       string fileName = string.Format("sample.{0}.png", dicomPage.Index);

                                                                                       // A DICOM page is a raster image, so all allowed operations with a raster image are applicable to a DICOM page.
                                                                                       dicomPage.Save(dir + fileName, new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                   }
                                                                               }
                                                                           }

Properties

ActivePage

Mengelola halaman aktif gambar dengan sifat intuitif ini. ideal untuk pengembangberusaha untuk beralih secara dinamis antara halaman dalam gambar multi halaman, memastikan efisiennavigasi dan pemrosesan.

public DicomPage ActivePage { get; set; }

Nilai Properti

DicomPage

Exceptions

DicomImageException

Halaman aktif tidak dapat ditetapkan karena itu milik gambar lain.

ActivePageIndex

Kembalikan indeks halaman aktif dengan mudah dengan sifat intuitif ini.Ideal untuk pengembang yang mencari akses cepat ke indeks halaman saat ini dalam multi-pagegambar, memastikan navigasi dan pemrosesan yang efisien.

public int ActivePageIndex { get; }

Nilai Properti

int

DicomPages

Akses ke halaman gambar dengan sifat intuitif ini. ideal untuk pengembangberusaha untuk berinteraksi dengan halaman individu di dalam gambar, memastikannavigasi dan manipulasi.

public DicomPage[] DicomPages { get; }

Nilai Properti

DicomPage [ ]

FileFormat

Mengembalikan nilai format file dengan mudah dengan sifat intuitif ini.pengembang yang mencari akses cepat ke format file gambar, memastikan efisiensiPemrosesan dan pemrosesan berdasarkan jenis file.

public override FileFormat FileFormat { get; }

Nilai Properti

FileFormat

FileInfo

Dapatkan informasi tajuk yang berharga dari file DICOM dengan mudah dengan iniProperti intuitif Ideal untuk pengembang yang mencari akses cepat ke detail pentingdimasukkan ke dalam file DICOM, memastikan ekstraksi dan analisis data yang efisien.

public DicomImageInfo FileInfo { get; }

Nilai Properti

DicomImageInfo

HasAlpha

Pertimbangkan apakah gambar memiliki saluran alfa dengan intuitif iniIdeal untuk pengembang yang ingin menentukan apakah gambar itu mengandung transparansi.Informasi, memastikan pengendalian akurat data saluran alfa dalam tugas pemrosesan gambar.

public override bool HasAlpha { get; }

Nilai Properti

bool

PageCount

Memulihkan jumlah halaman total dari gambar dengan sifat intuitif ini.pengembang yang mencari akses cepat ke jumlah halaman dalam sebuah gambar, memastikannavigasi dan manajemen yang efisien.

public override int PageCount { get; }

Nilai Properti

int

Pages

Akses ke halaman gambar dengan sifat intuitif ini. ideal untuk pengembangMencari untuk berinteraksi dengan halaman individu di dalam gambar, memastikan navigasi tanpa tandadan manipulasi.

public override Image[] Pages { get; }

Nilai Properti

Image [ ]

Methods

AddPage(RasterImage)

Memperluas koleksi gambar Anda dengan menambahkan halaman baru dengan metode intuitif ini.Ideal untuk pengembang yang ingin secara dinamis melampirkan halaman ke gambar berbilang halaman,Menjamin ekspansi dan organisasi konten gambar tanpa batas.

public void AddPage(RasterImage page)

Parameters

page RasterImage

Halaman yang harus ditambahkan.

Exceptions

ArgumentNullException

page’ is null.

AddPage()

Tambahkan halaman baru ke akhir daftar halaman gambar dengan metode sederhana ini.Ideal untuk pengembang yang ingin secara dinamis memperluas gambar berbilang halaman, memastikanMengintegrasikan dan mengatur konten gambar.

public DicomPage AddPage()

Returns

DicomPage

yang baru dibuat Aspose.Imaging.FileFormats.Dicom.DicomPage.

Examples

Mencipta gambar dicom multi halaman.

using (DicomImage image = (DicomImage)Image.Create(
                                                   new DicomOptions() { Source = new StreamSource(new MemoryStream()) },
                                                   100,
                                                   100))
                                           {
                                               // Draw something using vector graphics
                                               Graphics graphics = new Graphics(image);
                                               graphics.FillRectangle(new SolidBrush(Color.BlueViolet), image.Bounds);
                                               graphics.FillRectangle(new SolidBrush(Color.Aqua), 10, 20, 50, 20);
                                               graphics.FillEllipse(new SolidBrush(Color.Orange), 30, 50, 70, 30);

                                               // Save the pixels of the drawn image. They are now on the first page of the Dicom image.
                                               int[] pixels = image.LoadArgb32Pixels(image.Bounds);

                                               // Add a few pages after, making them darker
                                               for (int i = 1; i < 5; i++)
                                               {
                                                   DicomPage page = image.AddPage();
                                                   page.SaveArgb32Pixels(page.Bounds, pixels);
                                                   page.AdjustBrightness(i * 30);
                                               }

                                               // Add a few pages in front of the main page, making them brighter
                                               for (int i = 1; i < 5; i++)
                                               {
                                                   DicomPage page = image.InsertPage(0);
                                                   page.SaveArgb32Pixels(page.Bounds, pixels);
                                                   page.AdjustBrightness(-i * 30);
                                               }

                                               // Save the created multi-page image to the output file
                                               image.Save("MultiPage.dcm");
                                           }

AdjustBrightness(int)

Meningkatkan pencahayaan gambar dengan menyesuaikan brightness’, metode aparameteris yang memungkinkan pengembang untuk menonjolkan kecerahan gambar dengan sempurna.Fungsi yang ramah pengguna ini memungkinkan pengembang untuk memanipulasi kecerahan gambar dengan mudah, menawarkan fleksibilitas dan kontrol terhadap estetika visual.

public override void AdjustBrightness(int brightness)

Parameters

brightness int

Nilai kecerahan

Examples

Contoh berikut melakukan koreksi kecerahan dari gambar DICOM.

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

                                                                                 using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                 {
                                                                                     Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                     // Set the brightness value. The accepted values of brightness are in the range [-255, 255].
                                                                                     dicomImage.AdjustBrightness(50);
                                                                                     dicomImage.Save(dir + "sample.AdjustBrightness.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                 }

AdjustContrast(kapal)

Meningkatkan Aspose.Imaging.Image kontras dengan metode yang ramah pengguna ini,yang menyesuaikan perbedaan antara cahaya dan gelap. meningkatkan ketelusan visual danDefinisi tanpa usaha, memberikan pengembang dengan kontrol intuitif ataskontras gambar untuk rendering optimal.

public override void AdjustContrast(float contrast)

Parameters

contrast float

Nilai kontras (dalam rentang [-100; 100])

Examples

Contoh berikut melakukan koreksi kontras dari gambar DICOM.

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

                                                                               using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                               {
                                                                                   Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                   // Set the contrast value. The accepted values of contrast are in the range [-100f, 100f].
                                                                                   dicomImage.AdjustContrast(50f);
                                                                                   dicomImage.Save(dir + "sample.AdjustContrast.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                               }

AdjustGamma(kapal)

Meningkatkan kualitas gambar dan menyesuaikannya dengan koreksi gamma, teknik yang kuatuntuk penampilan visual yang halus. sempurna untuk pengembang yang bertujuan untuk mengoptimalkan gambarpresentasi, menyesuaikan keseimbangan warna, dan memastikan rendering konsisten di berbagaiperalatan dan lingkungan.

public override void AdjustGamma(float gamma)

Parameters

gamma float

Gamma untuk koordinat saluran merah, hijau dan biru

Examples

Contoh berikut melakukan koreksi gamma dari gambar DICOM.

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

                                                                            using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                            {
                                                                                Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                // Set gamma coefficient for red, green and blue channels.
                                                                                dicomImage.AdjustGamma(2.5f);
                                                                                dicomImage.Save(dir + "sample.AdjustGamma.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                            }

AdjustGamma(Kapal, Kapal dan Kapal)

Mencapai penyesuaian warna yang tepat dengan menerapkan koreksi gamma secara independenuntuk komponen merah, hijau, dan biru dari gambar. metode ini memastikan ketepatankeseimbangan warna dan hasil visual yang optimal, catering untuk pengembang yang mencari granularMengontrol rendering gambar dan ketepatan warna.

public override void AdjustGamma(float gammaRed, float gammaGreen, float gammaBlue)

Parameters

gammaRed float

Gamma untuk Red Channel Coefficient

gammaGreen float

Gamma untuk Green Channel Coefficient

gammaBlue float

Gamma untuk Blue Channel Coefficient

Examples

Contoh berikut melakukan koreksi gamma dari gambar DICOM yang menerapkan koefisien yang berbeda untuk komponen warna.

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

                                                                                                                                 using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                 {
                                                                                                                                     Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                                                                     // Set individual gamma coefficients for red, green and blue channels.
                                                                                                                                     dicomImage.AdjustGamma(1.5f, 2.5f, 3.5f);
                                                                                                                                     dicomImage.Save(dir + "sample.AdjustGamma.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                 }

BinarizeBradley(Dua kali, int)

Binarisasi gambar dengan algoritma sempadan adaptif Bradley, leveraging integralimage thresholding untuk peningkatan kinerja. ideal untuk pengembang yang inginsecara otomatis segmen gambar berdasarkan variasi lokal dalam kecerahan, memastikanDeteksi dan ekstraksi objek yang tepat dalam kondisi pencahayaan yang berbeda.

public override void BinarizeBradley(double brightnessDifference, int windowSize)

Parameters

brightnessDifference double

Perbedaan kecerahan antara piksel dan rata-rata jendela piksel s x sFokus di sekitar piksel ini.

windowSize int

Ukuran jendela s x s dari piksel yang berpusat di sekitar piksel ini

Examples

Contoh berikut menggandakan gambar DICOM dengan algoritma sempadan adaptif Bradley dengan ukuran jendela yang ditentukan. gambar binaris hanya mengandung 2 warna - hitam dan putih.

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

                                                                                                                                                                                                 using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                                                                                 {
                                                                                                                                                                                                     Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                                                                                                                                     // Binarize the image with a brightness difference of 5. The brightness is a difference between a pixel and the average of an 10 x 10 window of pixels centered around this pixel.
                                                                                                                                                                                                     dicomImage.BinarizeBradley(5, 10);
                                                                                                                                                                                                     dicomImage.Save(dir + "sample.BinarizeBradley5_10x10.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                                                                 }

BinarizeFixed(byte)

Mudah mengubah gambar menjadi format biner menggunakan batas yang sudah ditentukanDengan metode yang sederhana ini. ideal untuk pengembang yang ingin menyederhanakan gambarmemproses tugas dengan membagi gambar ke komponen depan dan latar belakangberdasarkan tingkat intensitas yang ditentukan.

public override void BinarizeFixed(byte threshold)

Parameters

threshold byte

Jika nilai kelabu yang sepadan dari piksel lebih besar dari batas, nilai255 akan diberikan kepadanya, 0 sebaliknya.

Examples

Contoh berikut binarisasi gambar DICOM dengan ambang yang telah ditentukan. gambar binarisasi hanya mengandung 2 warna - hitam dan putih.

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

                                                                                                                                                 using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                                 {
                                                                                                                                                     Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                                                                                     // Binarize the image with a threshold value of 127.
                                                                                                                                                     // If a corresponding gray value of a pixel is greater than 127, a value of 255 will be assigned to it, 0 otherwise.
                                                                                                                                                     dicomImage.BinarizeFixed(127);
                                                                                                                                                     dicomImage.Save(dir + "sample.BinarizeFixed.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                 }

BinarizeOtsu()

Apply Otsu thresholding untuk binarisasi gambar, secara otomatis menentukan optimalnilai ambang berdasarkan histogram gambar. sempurna untuk pengembang mencariMetode yang dapat diandalkan untuk membagi gambar ke daerah depan dan latar belakang denganIntervensi manual minimal.

public override void BinarizeOtsu()

Examples

Contoh berikut binarisasi gambar DICOM dengan sempadan Otsu. gambar binarisasi hanya mengandung 2 warna - hitam dan putih.

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

                                                                                                                                          using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                          {
                                                                                                                                              Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                                                                              // Binarize the image with Otsu thresholding.
                                                                                                                                              dicomImage.BinarizeOtsu();
                                                                                                                                              dicomImage.Save(dir + "sample.BinarizeOtsu.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                          }

CacheData()

Metode ini secara efektif menyembunyikan data, mengoptimalkan kinerja dan memastikan akses cepatIdeal untuk pengembang yang ingin meningkatkan kecepatan dan efisiensiAplikasi dengan pengelolaan sumber data yang cerdas.

public override void CacheData()

Examples

Contoh berikut menunjukkan cara menyembunyikan semua halaman dari gambar DICOM.

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

                                                                               // Load an image from a DICOM file.
                                                                               using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                               {
                                                                                   // This call caches all the pages so that no additional data loading will be performed from the underlying data stream.
                                                                                   image.CacheData();

                                                                                   // Or you can cache the pages individually.
                                                                                   foreach (Aspose.Imaging.FileFormats.Dicom.DicomPage page in image.DicomPages)
                                                                                   {
                                                                                       page.CacheData();
                                                                                   }
                                                                               }

Crop(Rectangle)

Menanam gambar untuk menghapus area yang tidak diinginkan dan fokus pada konten penting dengan iniMetode sederhana. ideal untuk pengembang yang ingin menyesuaikan komposisi visualgambar, memastikan mereka menyampaikan pesan yang diinginkan secara efektif.

public override void Crop(Rectangle rectangle)

Parameters

rectangle Rectangle

dengan rektangle.

Examples

Contoh berikut menanam gambar DICOM. area penanaman ditentukan melalui Aspose.Imaging.Rectangle.

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

                                                                                                                     using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                     {
                                                                                                                         Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                                                         // Crop the image. The cropping area is the rectangular central area of the image.
                                                                                                                         Aspose.Imaging.Rectangle area = new Aspose.Imaging.Rectangle(dicomImage.Width / 4, dicomImage.Height / 4, dicomImage.Width / 2, dicomImage.Height / 2);
                                                                                                                         dicomImage.Crop(area);

                                                                                                                         // Save the cropped image to PNG
                                                                                                                         dicomImage.Save(dir + "sample.Crop.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                     }

Crop(int, int, int, int dan int)

Menyesuaikan area menggali gambar dengan menerapkan perubahan dengan metode yang beragam ini.Ideal untuk pengembang yang membutuhkan kontrol yang akurat atas proses panen, memastikanyang detail penting disimpan sambil menghapus unsur-unsur yang tidak perlu.

public override void Crop(int leftShift, int rightShift, int topShift, int bottomShift)

Parameters

leftShift int

Pindah ke kiri.

rightShift int

pergantian yang benar.

topShift int

Pertukaran tertinggi.

bottomShift int

Pertukaran bagian bawah.

Examples

Contoh berikut menanam gambar DICOM. area penanaman ditentukan melalui margin kiri, atas, kanan, bawah.

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

                                                                                                                          using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                          {
                                                                                                                              Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                                                              // Crop again. Set a margin of 10% of the image size.
                                                                                                                              int horizontalMargin = dicomImage.Width / 10;
                                                                                                                              int verticalMargin = dicomImage.Height / 10;
                                                                                                                              dicomImage.Crop(horizontalMargin, horizontalMargin, verticalMargin, verticalMargin);

                                                                                                                              // Save the cropped image to PNG.
                                                                                                                              dicomImage.Save(dir + "sample.Crop.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                          }

Dither(DitheringMetode, int, IColorPalette)

Meningkatkan gambar saat ini dengan menerapkan efek dithering dengan ini dengan mudahMetode. sempurna untuk pengembang yang bertujuan untuk menambah tekstur dan kedalaman pada gambar,Meningkatkan kualitas visual dan daya tarik keseluruhan.

public override void Dither(DitheringMethod ditheringMethod, int bitsCount, IColorPalette customPalette)

Parameters

ditheringMethod DitheringMethod

Metode yang dihitung.

bitsCount int

Bits terakhir menghitung untuk dikhitung.

customPalette IColorPalette

Pakaian yang disesuaikan untuk dikeringkan.

Examples

Contoh berikut memuat gambar DICOM dan melakukan threshold dan floyd dithering menggunakan kedalaman palet yang berbeda.

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

                                                                                                                              using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                              {
                                                                                                                                  Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                                                                  // Perform threshold dithering using 4-bit color palette which contains 16 colors.
                                                                                                                                  // The more bits specified the higher quality and the bigger size of the output image.
                                                                                                                                  // Note that only 1-bit, 4-bit and 8-bit palettes are supported at the moment.
                                                                                                                                  dicomImage.Dither(Aspose.Imaging.DitheringMethod.ThresholdDithering, 4, null);

                                                                                                                                  dicomImage.Save(dir + "sample.ThresholdDithering4.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                              }

                                                                                                                              using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                              {
                                                                                                                                  Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                                                                  // Perform floyd dithering using 1-bit color palette which contains only 2 colors - black and white.
                                                                                                                                  // The more bits specified the higher quality and the bigger size of the output image.
                                                                                                                                  // Note that only 1-bit, 4-bit and 8-bit palettes are supported at the moment.
                                                                                                                                  dicomImage.Dither(Aspose.Imaging.DitheringMethod.FloydSteinbergDithering, 1, null);

                                                                                                                                  dicomImage.Save(dir + "sample.FloydSteinbergDithering1.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                              }

Filter(Rectangle, FilterOptionsBase)

Dengan mudah meningkatkan area tertentu dari gambar Anda dengan menerapkan filter untukMetode ini memberikan pengembang dengan kontrol yang akurat atasmanipulasi gambar, memungkinkan penyesuaian yang disasarkan untuk mencapai yang diinginkanEfek visual dengan mudah.

public override void Filter(Rectangle rectangle, FilterOptionsBase options)

Parameters

rectangle Rectangle

dengan rektangle.

options FilterOptionsBase

dengan opsi tersebut.

Examples

Contoh berikut menggunakan berbagai jenis filter untuk gambar DICOM.

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

                                                                                   using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                   {
                                                                                       Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                       // Apply a median filter with a rectangle size of 5 to the entire image.
                                                                                       dicomImage.Filter(dicomImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.MedianFilterOptions(5));
                                                                                       dicomImage.Save(dir + "sample.MedianFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                   }

                                                                                   using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                   {
                                                                                       Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                       // Apply a bilateral smoothing filter with a kernel size of 5 to the entire image.
                                                                                       dicomImage.Filter(dicomImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.BilateralSmoothingFilterOptions(5));
                                                                                       dicomImage.Save(dir + "sample.BilateralSmoothingFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                   }

                                                                                   using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                   {
                                                                                       Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                       // Apply a Gaussian blur filter with a radius of 5 and a sigma value of 4.0 to the entire image.
                                                                                       dicomImage.Filter(dicomImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.GaussianBlurFilterOptions(5, 4.0));
                                                                                       dicomImage.Save(dir + "sample.GaussianBlurFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                   }

                                                                                   using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                   {
                                                                                       Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                       // Apply a Gauss-Wiener filter with a radius of 5 and a smooth value of 4.0 to the entire image.
                                                                                       dicomImage.Filter(dicomImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.GaussWienerFilterOptions(5, 4.0));
                                                                                       dicomImage.Save(dir + "sample.GaussWienerFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                   }

                                                                                   using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                   {
                                                                                       Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                       // Apply a motion wiener filter with a length of 5, a smooth value of 4.0 and an angle of 90.0 degrees to the entire image.
                                                                                       dicomImage.Filter(dicomImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.MotionWienerFilterOptions(10, 1.0, 90.0));
                                                                                       dicomImage.Save(dir + "sample.MotionWienerFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                   }

                                                                                   using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                   {
                                                                                       Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                       // Apply a sharpen filter with a kernel size of 5 and a sigma value of 4.0 to the entire image.
                                                                                       dicomImage.Filter(dicomImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.SharpenFilterOptions(5, 4.0));
                                                                                       dicomImage.Save(dir + "sample.SharpenFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                   }

Grayscale()

Mudah mengubah gambar menjadi representasi grayscale mereka, menyederhanakan visualTugas analisis dan pemrosesan. sempurna untuk pengembang yang ingin meningkatkan kejelasan gambar,mengurangi kompleksitas, dan memfasilitasi algoritma berbasis grayscale yang efisienuntuk berbagai aplikasi.

public override void Grayscale()

Examples

Contoh berikut mengubah gambar DICOM berwarna menjadi representasi grayscale.Grayscale gambar terdiri secara eksklusif dari bayangan kelabu dan hanya membawa informasi intensitas.

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

                                                                                                                                                                                                    using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                                                                                    {
                                                                                                                                                                                                        Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                                                                                                                                        dicomImage.Grayscale();
                                                                                                                                                                                                        dicomImage.Save(dir + "sample.Grayscale.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                                                                    }

InsertPage(int)

Masukkan halaman baru ke dalam daftar halaman gambar pada indeks tertentu dengan intuitif iniMetode. ideal untuk pengembang yang mencari kontrol yang akurat atas pengaturan halaman dalamGambar berbilang halaman, memastikan organisasi dan penyesuaian konten gambar yang tak terbatas.

public DicomPage InsertPage(int pageIndex)

Parameters

pageIndex int

Indeks dari halaman.

Returns

DicomPage

yang baru dibuat Aspose.Imaging.FileFormats.Dicom.DicomPage.

Examples

Mencipta gambar dicom multi halaman.

using (DicomImage image = (DicomImage)Image.Create(
                                                   new DicomOptions() { Source = new StreamSource(new MemoryStream()) },
                                                   100,
                                                   100))
                                           {
                                               // Draw something using vector graphics
                                               Graphics graphics = new Graphics(image);
                                               graphics.FillRectangle(new SolidBrush(Color.BlueViolet), image.Bounds);
                                               graphics.FillRectangle(new SolidBrush(Color.Aqua), 10, 20, 50, 20);
                                               graphics.FillEllipse(new SolidBrush(Color.Orange), 30, 50, 70, 30);

                                               // Save the pixels of the drawn image. They are now on the first page of the Dicom image.
                                               int[] pixels = image.LoadArgb32Pixels(image.Bounds);

                                               // Add a few pages after, making them darker
                                               for (int i = 1; i < 5; i++)
                                               {
                                                   DicomPage page = image.AddPage();
                                                   page.SaveArgb32Pixels(page.Bounds, pixels);
                                                   page.AdjustBrightness(i * 30);
                                               }

                                               // Add a few pages in front of the main page, making them brighter
                                               for (int i = 1; i < 5; i++)
                                               {
                                                   DicomPage page = image.InsertPage(0);
                                                   page.SaveArgb32Pixels(page.Bounds, pixels);
                                                   page.AdjustBrightness(-i * 30);
                                               }

                                               // Save the created multi-page image to the output file
                                               image.Save("MultiPage.dcm");
                                           }

Exceptions

ArgumentOutOfRangeException

pageIndex’ is out of range.

ReleaseManagedResources()

Pastikan tidak ada sumber daya yang tidak dikelola yang dilepaskan di sini, karena mereka mungkin telahsudah dibebaskan.

protected override void ReleaseManagedResources()

RemovePage(int)

Hapus halaman pada indeks yang ditentukan dari daftar halaman dengan metode yang nyaman ini.Ideal untuk pengembang yang mencari kontrol yang akurat atas pengelolaan gambar berbilang halaman,Memastikan organisasi dan penyesuaian konten gambar yang tak terbatas.

public void RemovePage(int pageIndex)

Parameters

pageIndex int

Indeks dari halaman.

Exceptions

ArgumentOutOfRangeException

pageIndex’ is out of range.

Resize(int, int, resizeType)

Menetapkan ukuran gambar dengan metode sederhana ini. ideal untuk pengembangmencari untuk secara dinamis memodifikasi gambar, memastikan mereka sesuai dengan berbagaikonteks dan layout dalam aplikasi mereka.

public override void Resize(int newWidth, int newHeight, ResizeType resizeType)

Parameters

newWidth int

dengan lebar yang baru.

newHeight int

ketinggian yang baru.

resizeType ResizeType

dengan jenis resize.

Examples

Contoh ini memuat gambar DICOM dan mengulangnya menggunakan berbagai metode resizing.

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

                                                                                          using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                          {
                                                                                              // Scale up by 2 times using Nearest Neighbour resampling.
                                                                                              image.Resize(image.Width* 2, image.Height* 2, Aspose.Imaging.ResizeType.NearestNeighbourResample);

                                                                                              // Save to PNG with default options.
                                                                                              image.Save(dir + "upsample.nearestneighbour.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                          }

                                                                                          using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                          {
                                                                                              // Scale down by 2 times using Nearest Neighbour resampling.
                                                                                              image.Resize(image.Width / 2, image.Height / 2, Aspose.Imaging.ResizeType.NearestNeighbourResample);

                                                                                              // Save to PNG with default options.
                                                                                              image.Save(dir + "downsample.nearestneighbour.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                          }

                                                                                          using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                          {
                                                                                              // Scale up by 2 times using Bilinear resampling.
                                                                                              image.Resize(image.Width* 2, image.Height* 2, Aspose.Imaging.ResizeType.BilinearResample);

                                                                                              // Save to PNG with default options.
                                                                                              image.Save(dir + "upsample.bilinear.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                          }

                                                                                          using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                          {
                                                                                              // Scale down by 2 times using Bilinear resampling.
                                                                                              image.Resize(image.Width / 2, image.Height / 2, Aspose.Imaging.ResizeType.BilinearResample);

                                                                                              // Save to PNG with default options.
                                                                                              image.Save(dir + "downsample.bilinear.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                          }

Resize(int, int, ImageResizeSettings)

menyesuaikan ukuran gambar Anda dengan metode resing sederhana ini.Mengurangi atau memperluas gambar Anda, fungsi ini memastikan bahwa kebutuhan resing Anda dipenuhiefisien dan akurat, menjadikannya sempurna untuk pengembang yang mencari cepat dan mudahAdaptasi ukuran gambar.

public override void Resize(int newWidth, int newHeight, ImageResizeSettings settings)

Parameters

newWidth int

dengan lebar yang baru.

newHeight int

ketinggian yang baru.

settings ImageResizeSettings

Sesuai dengan peraturan resize.

Examples

Contoh ini memuat gambar DICOM dan menggunakannya kembali menggunakan berbagai pengaturan resizing.

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

                                                                                           Aspose.Imaging.ImageResizeSettings resizeSettings = new Aspose.Imaging.ImageResizeSettings();

                                                                                           // The adaptive algorithm based on weighted and blended rational function and lanczos3 interpolation.
                                                                                           resizeSettings.Mode = Aspose.Imaging.ResizeType.AdaptiveResample;

                                                                                           // The small rectangular filter
                                                                                           resizeSettings.FilterType = Aspose.Imaging.ImageFilterType.SmallRectangular;

                                                                                           // The number of colors in the palette.
                                                                                           resizeSettings.EntriesCount = 256;

                                                                                           // The color quantization is not used
                                                                                           resizeSettings.ColorQuantizationMethod = ColorQuantizationMethod.None;

                                                                                           // The euclidian method
                                                                                           resizeSettings.ColorCompareMethod = ColorCompareMethod.Euclidian;

                                                                                           using (Aspose.Imaging.Image image = (Aspose.Imaging.Image)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                           {
                                                                                               Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = (Aspose.Imaging.FileFormats.Dicom.DicomImage)image;

                                                                                               // Scale down by 2 times using adaptive resampling.
                                                                                               dicomImage.Resize(image.Width / 2, image.Height / 2, resizeSettings);

                                                                                               // Save to PNG
                                                                                               dicomImage.Save(dir + "downsample.adaptive.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                           }

ResizeHeightProportionally(Tipe, ResizeType)

Menetapkan ketinggian gambar sambil mempertahankan proporsi aspeknya dengan ini.Metode yang ramah pengguna. sempurna untuk pengembang yang ingin memodifikasi gambar secara dinamissambil mempertahankan proporsi mereka, memastikan paparan dan kegunaan yang optimaldalam aplikasi mereka.

public override void ResizeHeightProportionally(int newHeight, ResizeType resizeType)

Parameters

newHeight int

ketinggian yang baru.

resizeType ResizeType

Jenis dari resize.

Examples

Contoh ini memuat gambar DICOM dan resize secara proporsional menggunakan berbagai metode resizing.Hanya ketinggian ditentukan, lebar dikira secara otomatis.

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

                                                                                                                                                                              using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                                                              {
                                                                                                                                                                                  // Scale up by 2 times using Nearest Neighbour resampling.
                                                                                                                                                                                  image.ResizeHeightProportionally(image.Height* 2, Aspose.Imaging.ResizeType.NearestNeighbourResample);

                                                                                                                                                                                  // Save to PNG with the default options.
                                                                                                                                                                                  image.Save(dir + "upsample.nearestneighbour.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                                              }

                                                                                                                                                                              using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                                                              {
                                                                                                                                                                                  // Scale down by 2 times using Nearest Neighbour resampling.
                                                                                                                                                                                  image.ResizeHeightProportionally(image.Height / 2, Aspose.Imaging.ResizeType.NearestNeighbourResample);

                                                                                                                                                                                  // Save to PNG with the default options.
                                                                                                                                                                                  image.Save(dir + "downsample.nearestneighbour.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                                              }

                                                                                                                                                                              using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                                                              {
                                                                                                                                                                                  // Scale up by 2 times using Bilinear resampling.
                                                                                                                                                                                  image.ResizeHeightProportionally(image.Height* 2, Aspose.Imaging.ResizeType.BilinearResample);

                                                                                                                                                                                  // Save to PNG with the default options.
                                                                                                                                                                                  image.Save(dir + "upsample.bilinear.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                                              }

                                                                                                                                                                              using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                                                              {
                                                                                                                                                                                  // Scale down by 2 times using Bilinear resampling.
                                                                                                                                                                                  image.ResizeHeightProportionally(image.Height / 2, Aspose.Imaging.ResizeType.BilinearResample);

                                                                                                                                                                                  // Save to PNG with the default options.
                                                                                                                                                                                  image.Save(dir + "downsample.bilinear.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                                              }

ResizeProportional(int, int, resizeType)

Ideal untuk pengembang yang ingin menyesuaikan dimensi gambar secara proporsional, memastikan konsistensi dan mempertahankan proporsi konten asli.Resize proporsional akan menyesuaikan setiap bingkai sesuai dengan proporsi newWidth’/width dan newHeight’/height.

public void ResizeProportional(int newWidth, int newHeight, ResizeType resizeType)

Parameters

newWidth int

dengan lebar yang baru.

newHeight int

ketinggian yang baru.

resizeType ResizeType

dengan jenis resize.

ResizeWidthProportionally(Tipe, ResizeType)

menyesuaikan lebar gambar sambil mempertahankan proporsinya dengan yang nyaman iniMetode. ideal untuk pengembang yang ingin memutar ulang gambar secara proporsional, memastikanHasil yang konsisten dan visual menarik di berbagai lingkungan paparan.

public override void ResizeWidthProportionally(int newWidth, ResizeType resizeType)

Parameters

newWidth int

dengan lebar yang baru.

resizeType ResizeType

Jenis dari resize.

Examples

Contoh ini memuat gambar DICOM dan resize secara proporsional menggunakan berbagai metode resizing. hanya lebar yang ditentukan, ketinggian dikira secara otomatis.

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

                                                                                                                                                                              using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                                                              {
                                                                                                                                                                                  // Scale up by 2 times using Nearest Neighbour resampling.
                                                                                                                                                                                  image.ResizeWidthProportionally(image.Width* 2, Aspose.Imaging.ResizeType.NearestNeighbourResample);

                                                                                                                                                                                  // Save to PNG with the default options.
                                                                                                                                                                                  image.Save(dir + "upsample.nearestneighbour.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                                              }

                                                                                                                                                                              using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                                                              {
                                                                                                                                                                                  // Scale down by 2 times using Nearest Neighbour resampling.
                                                                                                                                                                                  image.ResizeWidthProportionally(image.Width / 2, Aspose.Imaging.ResizeType.NearestNeighbourResample);

                                                                                                                                                                                  // Save to PNG with the default options.
                                                                                                                                                                                  image.Save(dir + "downsample.nearestneighbour.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                                              }

                                                                                                                                                                              using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                                                              {
                                                                                                                                                                                  // Scale up by 2 times using Bilinear resampling.
                                                                                                                                                                                  image.ResizeWidthProportionally(image.Width* 2, Aspose.Imaging.ResizeType.BilinearResample);

                                                                                                                                                                                  // Save to PNG with the default options.
                                                                                                                                                                                  image.Save(dir + "upsample.bilinear.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                                              }

                                                                                                                                                                              using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                                                              {
                                                                                                                                                                                  // Scale down by 2 times using Bilinear resampling.
                                                                                                                                                                                  image.ResizeWidthProportionally(image.Width / 2, Aspose.Imaging.ResizeType.BilinearResample);                

                                                                                                                                                                                  // Save to PNG with the default options.
                                                                                                                                                                                  image.Save(dir + "downsample.bilinear.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                                              }

Rotate(Bulu, Bulu dan Warna)

Memutar gambar di sekitar pusatnya dengan metode yang nyaman ini. ideal untuk pengembangberusaha untuk menyesuaikan orientasi gambar secara dinamis, memastikan presentasi optimal danpenyesuaian dalam aplikasi mereka.

public override void Rotate(float angle, bool resizeProportionally, Color backgroundColor)

Parameters

angle float

Sudut berputar dalam derajat. nilai positif akan berputar secara jam.

resizeProportionally bool

Jika Anda menetapkan ‘kebenaran’ Anda akan memiliki ukuran gambar Anda berubah sesuai dengan proyeksi rektangle (titik sudut) yang ditarik di tempat lain yang meninggalkan dimensi tidak disentuh dan hanyainternal konten gambar ditarik.

backgroundColor Color

warna dari latar belakang.

Examples

Contoh ini menunjukkan cara memutar semua halaman dari gambar DICOM dan menyimpannya semua ke gambar TIFF multi-frame.

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

                                                                                                                     // Load a DICOM image from a file stream.
                                                                                                                     using (System.IO.Stream stream = System.IO.File.OpenRead(dir + "multiframe.dicom"))
                                                                                                                     {
                                                                                                                         using (Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = new Aspose.Imaging.FileFormats.Dicom.DicomImage(stream))
                                                                                                                         {
                                                                                                                             // Rotate the image around the center by 60 degrees clockwise.
                                                                                                                             // Use gray as the background color.
                                                                                                                             dicomImage.Rotate(60, true, Aspose.Imaging.Color.Gray);

                                                                                                                             Aspose.Imaging.ImageOptions.TiffOptions createOptions = new Aspose.Imaging.ImageOptions.TiffOptions(Imaging.FileFormats.Tiff.Enums.TiffExpectedFormat.Default);
                                                                                                                             createOptions.Compression = Aspose.Imaging.FileFormats.Tiff.Enums.TiffCompressions.Deflate;

                                                                                                                             // Note that if the image is colorful, it will be automatically converted to the grayscale format according to the options below
                                                                                                                             createOptions.Photometric = Aspose.Imaging.FileFormats.Tiff.Enums.TiffPhotometrics.MinIsBlack;
                                                                                                                             createOptions.BitsPerSample = new ushort[] { 8 };

                                                                                                                             // Create an array of TIFF frames.
                                                                                                                             // The number of the frames is equal to the number of the DJVU pages.
                                                                                                                             Aspose.Imaging.FileFormats.Tiff.TiffFrame[] tiffFrames = new Aspose.Imaging.FileFormats.Tiff.TiffFrame[dicomImage.DicomPages.Length];

                                                                                                                             // Save each page as an individual TIFF frame.
                                                                                                                             foreach (Aspose.Imaging.FileFormats.Dicom.DicomPage dicomPage in dicomImage.DicomPages)
                                                                                                                             {
                                                                                                                                 // Create a TIFF frame based on the DICOM page.
                                                                                                                                 tiffFrames[dicomPage.Index] = new Aspose.Imaging.FileFormats.Tiff.TiffFrame(dicomPage, createOptions);
                                                                                                                             }

                                                                                                                             // Compose a TIFF image from the frames.
                                                                                                                             using (Aspose.Imaging.FileFormats.Tiff.TiffImage tiffImage = new Aspose.Imaging.FileFormats.Tiff.TiffImage(tiffFrames))
                                                                                                                             {
                                                                                                                                 // Save to a file.
                                                                                                                                 tiffImage.Save(dir + "multiframe.tif");
                                                                                                                             }
                                                                                                                         }
                                                                                                                     }

RotateFlip(RotateFlipType)

Mudah memanipulasi bingkai aktif dengan berputar, melipat, atau melakukan kedua tindakandengan metode yang sederhana ini. ideal untuk pengembang yang perlusecara dinamis menyesuaikan orientasi bingkai tertentu dalam urutan gambar mereka,Memastikan presentasi dan penyesuaian yang optimal.

public override void RotateFlip(RotateFlipType rotateFlipType)

Parameters

rotateFlipType RotateFlipType

Jenis flip rotasi.

Examples

Contoh ini memuat gambar DICOM, memutarnya dengan 90 derajat jam dan secara opsional memutar gambar secara horizontal dan/atau vertikal.

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

                                                                                                                                               Aspose.Imaging.RotateFlipType[] rotateFlipTypes = new Aspose.Imaging.RotateFlipType[]
                                                                                                                                               {
                                                                                                                                                   Aspose.Imaging.RotateFlipType.Rotate90FlipNone,
                                                                                                                                                   Aspose.Imaging.RotateFlipType.Rotate90FlipX,
                                                                                                                                                   Aspose.Imaging.RotateFlipType.Rotate90FlipXY,
                                                                                                                                                   Aspose.Imaging.RotateFlipType.Rotate90FlipY,
                                                                                                                                               };

                                                                                                                                               foreach (Aspose.Imaging.RotateFlipType rotateFlipType in rotateFlipTypes)
                                                                                                                                               {
                                                                                                                                                   // Rotate, flip and save to the output file.
                                                                                                                                                   using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                                                                   {
                                                                                                                                                       image.RotateFlip(rotateFlipType);
                                                                                                                                                       image.Save(dir + "sample." + rotateFlipType + ".png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                   }
                                                                                                                                               }

Save(Stream, ImageOptionsBase, Rectangle)

Mudah menyimpan data gambar Anda ke arus tertentu dalam format file yang diinginkanApakah Anda bekerja dengan JPEG, PNG, atau format lain,Fungsi ini memastikan bahwa data gambar Anda disimpan dengan efisien dan akurat,membuatnya ideal untuk pengembang yang ingin mempercepat proses penyimpanan file mereka.

public override void Save(Stream stream, ImageOptionsBase optionsBase, Rectangle boundsRectangle)

Parameters

stream Stream

Aliran untuk menyimpan data gambar ke.

optionsBase ImageOptionsBase

Pilihan yang disimpan.

boundsRectangle Rectangle

Gambar tujuan membatasi rektangle. menetapkan rektangle kosong untuk menggunakan sumber batas.

Examples

Contoh berikut memuat gambar DICOM dari file, kemudian menyimpan gambar ke arus file PNG.

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

                                                                                                            using (Aspose.Imaging.FileFormats.Dicom.DicomImage image = (Aspose.Imaging.FileFormats.Dicom.DicomImage)Aspose.Imaging.Image.Load(dir + "sample.dicom"))
                                                                                                            {
                                                                                                                Aspose.Imaging.ImageOptions.PngOptions saveOptions = new Aspose.Imaging.ImageOptions.PngOptions();
                                                                                                                Aspose.Imaging.Rectangle bounds = new Aspose.Imaging.Rectangle(0, 0, image.Width / 2, image.Height / 2);
                                                                                                                using (System.IO.Stream outputStream = System.IO.File.Open(dir + "output.png", System.IO.FileMode.Create))
                                                                                                                {
                                                                                                                    // Save the upper-left quarter of the image to a file stream.
                                                                                                                    image.Save(outputStream, saveOptions, bounds);
                                                                                                                }
                                                                                                            }

SaveAll(Titik, ImageOptionsBase)

Simpan data objek dengan menyimpannya ke file yang ditunjuk (indexer + nama file)lokasi bersama dengan format file dan opsi yang ditentukan. ideal untuk pengembang yang ingindengan aman menyimpan data dalam berbagai format sambil menjaga fleksibilitas dan kontroldengan parameter penyimpanan.

public void SaveAll(string filePath, ImageOptionsBase options)

Parameters

filePath string

jalur file tersebut.

options ImageOptionsBase

dengan opsi tersebut.

SaveData(Stream)

Simpan data tersebut.

protected override void SaveData(Stream stream)

Parameters

stream Stream

Aliran untuk menyimpan data ke.

SetResolution(Double dan Double)

Menetapkan resolusi Aspose.Imaging.RasterImage ini dengan ketepatan menggunakan iniMetode sederhana. ideal untuk pengembang yang ingin menyesuaikan resolusi gambar denganKeperluan spesifik, memastikan kualitas paparan optimal dan pengelolaan ukuran file.

public override void SetResolution(double dpiX, double dpiY)

Parameters

dpiX double

Resolusi horizontal, dalam titik per inci, dari Aspose.Imaging.RasterImage.

dpiY double

Resolusi vertikal, dalam titik per inci, dari Aspose.Imaging.RasterImage.

UpdateDimensions(dengan int, int)

Mengemas kini dimensi gambar.

protected override void UpdateDimensions(int newWidth, int newHeight)

Parameters

newWidth int

Gambar baru yang luas.

newHeight int

Ketinggian gambar baru.

 Indonesia