Class DicomImage
nazivni prostor: Aspose.Imaging.FileFormats.Dicom Sastav: Aspose.Imaging.dll (25.4.0)
Ovaj razred implementira digitalnu sliku i komunikaciju u medicini(DICOM) raster format slike podržava i nudi sveobuhvatno rješenje zaobrađivanje DICOM slika s točnostom i fleksibilnošću.manipulirati slikama, uključujući operacije za dobivanje, dodavanje ili uklanjanje stranica, ikontrolu podrazumevane i aktivne stranice. sa sposobnostima za rad s alfa kanala,ugraditi XMP metapodatke, reciklirati, okrenuti, uzgajati, binarizirati i prilagoditi, primijeniti filtre,i pretvoriti u druge raster formate. ova API omogućuje razvijalcima da upravljajuDICOM učinkovito prikazuje dok zadovoljava različite zahtjeve za aplikaciju ukontekst medicinske slike.
[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
naslijeđeni članovi
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
Promijenite tip boje u kompresiji DICOM.
using (var inputImage = Image.Load("original.jpg"))
{
var options = new DicomOptions { ColorType = ColorType.Grayscale8Bit };
inputImage.Save("original_8Bit.dcm", options);
}
Koristite RLE kompresije u DICOM slici.
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);
}
Koristite JPEG 2000 kompresije u DICOM sliku.
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);
}
Koristite JPEG kompresije u DICOM sliku.
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);
}
Ovaj primjer pokazuje kako preuzeti DICOM sliku iz protok datoteke.
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());
}
}
}
Stvorite multi-page sliku Dicom.
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(Sljedeći članakDicomOptions, int)
Inicijalizirajte svježu primjenu razreda DicomImage bez napora s ovimkonstruktor, koristeći dicomOptions parametre. savršeno za razvijatelje gledajuda se potopiti u Aspose.Imaging.FileFormats.Dicom.Smith objekti brzo i učinkovito u njihovim projektima.
public DicomImage(DicomOptions dicomOptions, int width, int height)
Parameters
dicomOptions
DicomOptions
Opcije za dikom.
width
int
Širina je.
height
int
Veličina je.
DicomImage(Slijedeći članakStraam, LoadOptions)
Počnite novi primjer razreda DicomImage glatko korištenjem struje iOpcije parametara u ovom konstruktoru. idealno za razvijatelje koji žele započetiRaditi s Aspose.Imaging.FileFormats.Dicom.Primimage objekti brzo i učinkovito u njihovim projektima.
public DicomImage(Stream stream, LoadOptions loadOptions)
Parameters
stream
Stream
U toku je.
loadOptions
LoadOptions
Opcije za opterećenje.
Examples
Ovaj primjer pokazuje kako preuzeti DICOM sliku iz tokova datoteke da ostane unutar određenog ograničenja memorije.
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)
Stvaranje nove primjere razreda DicomImage pomoću parametara strujeIdealan za razvijatelje koji traže ukusan način za inicijaliziranjeAspose.Imaging.FileFormats.Dicom.Smithobjekti iz postojećih podataka u njihovim projektima.
public DicomImage(Stream stream)
Parameters
stream
Stream
U toku je.
Examples
Ovaj primjer pokazuje kako preuzeti DICOM sliku iz protok datoteke.
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
Upravljajte aktivnu stranicu slike s ovim intuitivnim svojstvom.tražeći da se dinamično prebacuje između stranica unutar više stranica, osiguravajući učinkovitostnavigacija i obrade.
public DicomPage ActivePage { get; set; }
Vrijednost nekretnina
Exceptions
Aktivna stranica se ne može postaviti jer pripada drugoj slici.
ActivePageIndex
Obnavljajte indeks aktivne stranice bez napora s ovim intuitivnim svojstvom.Idealan za razvijatelje koji traže brz pristup trenutnom indeksu stranice u više stranicaSlike, osiguravajući učinkovitu navigaciju i obradu.
public int ActivePageIndex { get; }
Vrijednost nekretnina
DicomPages
Pristup stranicama slike s ovim intuitivnim svojstvom. idealno za razvijateljetražeći interakciju s pojedinačnim stranicama unutar slike, osiguravajući da seNavigacija i manipulacija.
public DicomPage[] DicomPages { get; }
Vrijednost nekretnina
DicomPage []
FileFormat
Obnavljajte vrijednost formata datoteke bez napora s ovim intuitivnim svojstvom.razvijatelji koji traže brz pristup formatu datoteke slike, osiguravajući učinkovitostobrađivanje i obradu na temelju vrste datoteke.
public override FileFormat FileFormat { get; }
Vrijednost nekretnina
FileInfo
Obnavljajte vrijedne informacije naslovnika iz DICOM datoteke bez napora s ovimIdealan za razvijatelje koji traže brz pristup bitnim detaljimaencapsulated unutar DICOM datoteke, osiguravajući učinkovitu ekstrakciju i analizu podataka.
public DicomImageInfo FileInfo { get; }
Vrijednost nekretnina
HasAlpha
Otkrijte ima li slika alfa kanal bez napora s ovim intuitivnimIdealan za razvijatelje koji pokušavaju utvrditi sadrži li sliku transparentnostinformacije, osiguravajući točnu manipulaciju podataka alfa kanala u zadatcima obrade slike.
public override bool HasAlpha { get; }
Vrijednost nekretnina
PageCount
Povratak ukupnog broja stranica slike s ovim intuitivnim svojstvom.razvijatelji koji traže brz pristup broju stranica unutar slike, osiguravajućiUčinkovita navigacija i upravljanje.
public override int PageCount { get; }
Vrijednost nekretnina
Pages
Pristup stranicama slike s ovim intuitivnim svojstvom. idealno za razvijateljetražeći interakciju s pojedinačnim stranicama unutar slike, osiguravajući bespomoćnu navigacijui za manipulaciju.
public override Image[] Pages { get; }
Vrijednost nekretnina
Image []
Methods
AddPage(RasterImage)
Povećajte svoju kolekciju slika dodavanjem nove stranice pomoću ove intuitivne metode.Idealan za razvijatelje koji žele dinamično priključiti stranice na više stranica slika,osigurati neprestano proširenje i organizaciju sadržaja slike.
public void AddPage(RasterImage page)
Parameters
page
RasterImage
Stranica za dodavanje.
Exceptions
page’ is null.
AddPage()
Dodajte novu stranicu na kraju popisa stranica slike pomoću ove jednostavne metode.Idealan za razvijatelje koji pokušavaju dinamično proširiti više stranica slike, osiguravajući bezbrižnointegracija i organizacija sadržaja slike.
public DicomPage AddPage()
Returns
Novo stvoreno Aspose.Imaging.FileFormats.Dicom.Page.
Examples
Stvorite multi-page sliku Dicom.
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)
Povećava svjetlost slike prilagođavanjem brightness", aparameteriziranog načina koji omogućuje razvijalcima da savršeno toniraju svijetlost slika.Ova korisnička funkcija omogućuje razvijateljima da bezbrižno manipulišu slikom, pružajući fleksibilnost i kontrolu nad vizualnom estetikom.
public override void AdjustBrightness(int brightness)
Parameters
brightness
int
Vrijednost svjetlosti
Examples
Sljedeći primjer provodi korekciju svjetlosti slike DICOM-a.
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(float)
Povećanje Aspose.Imaging.Image kontrast s ovom korisnički prihvatljivom metodom,koja prilagođava razliku između svjetlosnih i tamnih područja. poboljšava vizualnu jasnost idefinicija bez napora, pružajući razvijalcima intuitivnu kontrolu nadKontrast slike za optimalno renderiranje.
public override void AdjustContrast(float contrast)
Parameters
contrast
float
Vrijednost kontrasta (u rasponu [-100; 100])
Examples
Sljedeći primjer provodi kontrastno ispravljanje DICOM slike.
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(float)
Povećajte kvalitetu slike i prilagodite ga gamma korekcijom, snažnom tehnologijomIdealan za razvijatelje koji nastoje optimizirati slikuprezentacija, prilagodba ravnoteže boja i osiguravanje dosljednog renderiranja između različitihuređaji i okoliša.
public override void AdjustGamma(float gamma)
Parameters
gamma
float
Gamma za koeficijenta crvenih, zelenih i plavih kanala
Examples
Sljedeći primjer provodi gamma-korekciju DICOM slike.
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(plovilo, plovilo i plovilo)
Postignuti točne prilagodbe boje primjenom gamma korekcije neovisnona crvene, zelene i plave komponente slike. ova metoda osigurava točnostBarva ravnoteža i optimalni vizualni rezultat, catering za razvijatelje koji traže granulekontrola renderiranja slike i točnosti boja.
public override void AdjustGamma(float gammaRed, float gammaGreen, float gammaBlue)
Parameters
gammaRed
float
Gamma za koeficijenta crvenog kanala
gammaGreen
float
Gamma za zeleni kanal koeficijenta
gammaBlue
float
Gamma za kofein plavog kanala
Examples
Sljedeći primjer provodi gamma-korekciju DICOM slike primjenom različitih koeficijenata za komponente boje.
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(Dvostruka, int)
Binarizirajte slike s Bradleyjevim adaptivnim algoritmom za ograničavanje granica, uključujući integracijusliku ograničavanje za poboljšanje performansi. idealno za razvijatelje koji tražeautomatski segmentiraju slike na temelju lokalnih promjena u svjetlosti, osiguravajućitočna detekcija i ekstrakcija predmeta u različitim uvjetima osvjetljenja.
public override void BinarizeBradley(double brightnessDifference, int windowSize)
Parameters
brightnessDifference
double
Razlika u svjetlosti između piksela i prosjeka prozora s x sSredište oko ovog piksela.
windowSize
int
Veličina s x s prozora piksela usredotočenih oko ovog piksela
Examples
Sljedeći primjer binarizira DICOM sliku s Bradleyjevim adaptivnim algoritmom ograničenja s određenom veličinom prozora.
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)
Jednostavno pretvoriti sliku u binarni format pomoću unaprijed definiranog pragaIdealan za razvijatelje koji žele pojednostavniti slikuobrađivanje zadataka segmentiranjem slike u prednjeg i pozadine komponenteNa temelju određenih razina intenziteta.
public override void BinarizeFixed(byte threshold)
Parameters
threshold
byte
Ako je odgovarajuća šljunčana vrijednost piksela veća od granice,255 će mu biti dodijeljeno, 0 drugačije.
Examples
Sljedeći primjer binarizira sliku DICOM s unaprijed definiranim pragom. binarne slike sadrže samo 2 boje - crno i bijelo.
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()
Aplikacija Otsu ograničenja za binarizaciju slike, automatski određivanjem optimalnogVrijednost ograničenja temelji se na histogramu slike. savršeno za razvijatelje koji tražepouzdan način za segmentaciju slika u prednjim i pozadinskim područjima sMinimalna ručna intervencija.
public override void BinarizeOtsu()
Examples
Sljedeći primjer binarizira sliku DICOM-a s Otsu ograničenjem. binarne slike sadrže samo 2 boje - crno i bijelo.
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()
Ova metoda učinkovito cache podatke, optimizira performanse i osigurava brz pristupidealno za razvijatelje koji žele poboljšati brzinu i učinkovitost svojihprimjene pametnim upravljanjem resursima podataka.
public override void CacheData()
Examples
Sljedeći primjer pokazuje kako sakriti sve stranice DICOM slike.
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)
Uzgajite sliku kako biste uklonili neželjene područja i usredotočili se na važan sadržaj s ovimIdealan za razvijatelje koji traže prilagodbu vizualnog sastavaslike, osiguravajući da učinkovito prenose željene poruke.
public override void Crop(Rectangle rectangle)
Parameters
rectangle
Rectangle
U pravom dijelu.
Examples
Sljedeći primjer uzgaja sliku DICOM. područje uzgoja određuje se putem 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)
Prilagodite područje kopanja slike primjenom promjena pomoću ove sveobuhvatne metode.Idealan za razvijatelje koji trebaju točnu kontrolu nad procesom uzgoja, osiguravajućida se važni detalji zadržavaju dok se uklanjaju nepotrebni elementi.
public override void Crop(int leftShift, int rightShift, int topShift, int bottomShift)
Parameters
leftShift
int
Ljevica je promijenila.
rightShift
int
To je prava promjena.
topShift
int
Vrhovna promjena
bottomShift
int
Spuštanje dolje.
Examples
Sljedeći primjer uzgaja sliku DICOM-a. područje uzgoja određuje se putem lijevih, gornjih, desnih, donjih margina.
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(DitheringMetoda, int, IColorPalette)
Poboljšajte trenutnu sliku primjenom efekata s ovim jednostavnimIdealan za razvijatelje koji namjeravaju dodati teksturu i dubinu slikama,poboljšati njihovu vizualnu kvalitetu i opću privlačnost.
public override void Dither(DitheringMethod ditheringMethod, int bitsCount, IColorPalette customPalette)
Parameters
ditheringMethod
DitheringMethod
Metoda za iscjedak.
bitsCount
int
Konačni bitovi računaju za dithering.
customPalette
IColorPalette
Korištenje prilagođene palete za dijetiranje.
Examples
Sljedeći primjer preuzima sliku DICOM-a i izvršava ograničenje i protjerivanje pomoću različitih dubina palete.
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(Sljedeći članakFilterOptionsBase)
Neuspješno poboljšati određena područja vaše slike primjenom filtera na određeneOva metoda pruža razvijalcima preciznu kontrolu nadmanipulacija slikom, omogućavajući ciljanim prilagodbama postizanje željeneVizualni učinci su vrlo jednostavni.
public override void Filter(Rectangle rectangle, FilterOptionsBase options)
Parameters
rectangle
Rectangle
U pravom dijelu.
options
FilterOptionsBase
i opcije .
Examples
Sljedeći primjer primjenjuje različite vrste filtera na sliku DICOM-a.
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()
Lako pretvoriti slike u njihovu grayscale reprezentaciju, pojednostavljujući vizualnuanalitičke i obrade zadatke. savršeno za razvijatelje koji žele poboljšati jasnost slike,smanjiti složenost i olakšati učinkovite algoritme na temelju grayscaleza različite primjene.
public override void Grayscale()
Examples
Sljedeći primjer pretvara obojenu sliku DICOM-a u njezinu graiskalnu reprezentaciju. Graiskalne slike sastoje se isključivo od sjene sive i nose samo informacije o intenzitetu.
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)
Upišite novu stranicu u popis stranica slike na određenom indeksu s ovim intuitivnimIdealan za razvijatelje koji traže preciznu kontrolu nad aranžmanom stranica uMnogobrojne slike, osiguravajući bezbrižnu organizaciju i prilagodbu sadržaja slike.
public DicomPage InsertPage(int pageIndex)
Parameters
pageIndex
int
Indeks stranice na ovoj stranici.
Returns
Novo stvoreno Aspose.Imaging.FileFormats.Dicom.Page.
Examples
Stvorite multi-page sliku Dicom.
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
pageIndex’ is out of range.
ReleaseManagedResources()
Uklonite upravljane resurse. pobrinite se da se ovdje ne otpuštaju nekontrolirani resursi, budući da su mogli bitiJoš je oslobođen.
protected override void ReleaseManagedResources()
RemovePage(int)
Uklonite stranicu na određenom indeksu s popisa stranica pomoću ove prikladne metode.Idealan za razvijatelje koji traže preciznu kontrolu nad upravljanjem više stranica slika,osigurati bezuvjetnu organizaciju i prilagodbu sadržaja slike.
public void RemovePage(int pageIndex)
Parameters
pageIndex
int
Indeks stranice na ovoj stranici.
Exceptions
pageIndex’ is out of range.
Resize(int, int, resizeType)
Prilagodite veličinu slike pomoću ove jednostavne metode. idealno za razvijateljetražeći dinamično rezanje slika, osiguravajući da se neprikladno prilagođavaju različitimKontekst i raspored u njihovim aplikacijama.
public override void Resize(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
U novoj širini.
newHeight
int
U novoj visini.
resizeType
ResizeType
Vrsta povlačenja.
Examples
Ovaj primjer preuzima sliku DICOM-a i ponavlja je pomoću različitih metoda ponovnog obračuna.
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, ImageResizeUredi)
Prilagodite veličinu vaše slike pomoću ove jednostavne metode rezanja.Smanjite ili proširite sliku, ova funkcija osigurava da se ispunjavaju vaše potrebe za ponavljanjem.učinkovito i točno, čineći ga savršenim za razvijatelje koji traže brzo i lakoPrilagodba veličine slike.
public override void Resize(int newWidth, int newHeight, ImageResizeSettings settings)
Parameters
newWidth
int
U novoj širini.
newHeight
int
U novoj visini.
settings
ImageResizeSettings
Određivanje nastavaka.
Examples
Ovaj primjer preuzima sliku DICOM-a i ponavlja je pomoću različitih postavki ponovnog podizanja.
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(Sljedeći Članak ResizeType)
Prilagodite visinu slike dok održavate njezin aspektni odnos s ovimMetoda je korisnička. savršena za razvijatelje koji traže dinamično recikliranje slikazadržavajući njihove proporcije, osiguravajući optimalan prikaz i upotrebljivostu njihovim zahtjevima.
public override void ResizeHeightProportionally(int newHeight, ResizeType resizeType)
Parameters
newHeight
int
U novoj visini.
resizeType
ResizeType
Vrsta povraćanja.
Examples
Ovaj primjer preuzima sliku DICOM-a i proporcionalno je rezira pomoću različitih metoda reziranja. samo se određuje visina, širina se automatski izračunava.
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)
Idealno za razvijatelje koji pokušavaju prilagoditi dimenzije slike proporcionalno, osigurati usklađenost i sačuvati proporcije izvornog sadržaja.Proporcionalna ponovna razmjera će ponoviti svaki okvir u skladu s omjerom
public void ResizeProportional(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
U novoj širini.
newHeight
int
U novoj visini.
resizeType
ResizeType
Vrsta povlačenja.
ResizeWidthProportionally(Sljedeći Članak ResizeType)
Prilagodite širinu slike dok održavate njezin aspektni odnos s ovim prikladnimIdealan za razvijatelje koji pokušavaju proporcionalno pretvoriti slike, osiguravajućikonsistentni i vizualno privlačni rezultati u različitim ekranskim okruženjima.
public override void ResizeWidthProportionally(int newWidth, ResizeType resizeType)
Parameters
newWidth
int
U novoj širini.
resizeType
ResizeType
Vrsta povraćanja.
Examples
Ovaj primjer preuzima sliku DICOM-a i proporcionalno je rezira pomoću različitih metoda reziranja. samo je širina određena, visina se automatski izračunava.
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(Float, bool, boja i boja)
Okrenite sliku oko svog centra pomoću ove prikladne metode.tražeći dinamičnu prilagodbu orijentacije slike, osiguravajući optimalnu prezentaciju iUsklađenost u njihovim zahtjevima.
public override void Rotate(float angle, bool resizeProportionally, Color backgroundColor)
Parameters
angle
float
Okretni kut u stupanjima. pozitivne vrijednosti će se okrenuti na sat.
resizeProportionally
bool
ako se postavite na ’true’ promijenit ćete veličinu slike prema rotacijskim rektangularnim (kornarnim točkama) projekcijama u drugim slučajevima koje ostavljaju dimenzije bez dodira i samointerna sadržaj slike je rotacijski.
backgroundColor
Color
Boja pozadine.
Examples
Ovaj primjer pokazuje kako okrenuti sve stranice DICOM slike i sačuvati ih sve na multi-frame TIFF slike.
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)
Jednostavno manipulirati aktivnim okvirom rotacijom, flippingom ili obavljanjem obiju akcijaistodobno s ovom jednostavnom metodom. idealno za razvijatelje koji trebajudinamično prilagoditi orijentaciju određenih okvira unutar njihovih slika sekvencija,osigurati optimalnu prezentaciju i usklađenost.
public override void RotateFlip(RotateFlipType rotateFlipType)
Parameters
rotateFlipType
RotateFlipType
Vrsta rotirajućeg flip.
Examples
Ovaj primjer opterećuje sliku DICOM-a, vrti je 90 stupnjeva na sat i opcionalno flije slikom horizontalno i (ili) vertikalno.
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(Proljev, ImageOptionsBase, Rectangle)
Jednostavno sačuvajte podatke o slici u određenom toku u željeni format datotekekoristite ovu prikladnu metodu. bilo da radite s JPEG, PNG ili drugim formatom,ta funkcija osigurava da se podaci o slikama čuvaju učinkovito i točno,čini ga idealnim za razvijatelje koji žele usporiti svoje procese spašavanja datoteka.
public override void Save(Stream stream, ImageOptionsBase optionsBase, Rectangle boundsRectangle)
Parameters
stream
Stream
U toku kako bi se sačuvali podaci slike.
optionsBase
ImageOptionsBase
Opcije za spašavanje.
boundsRectangle
Rectangle
Ciljna slika ograničava pravokut. postavite prazan pravokut za korištenje izvornih granica.
Examples
Sljedeći primjer preuzima sliku DICOM-a iz datoteke, a zatim spašava slika u PNG protok.
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(Sljedeći članakSljedeći članakImageOptionsBase)
Čuvajte podatke o objektu čuvajući ih na određenom datoteku (indeksator + ime)lokacija zajedno s određenim formatom datoteke i opcijama. idealno za razvijatelje koji tražesigurno pohranjivanje podataka u različitim formatima, a istodobno održavanje fleksibilnosti i kontroleSmanjivanje parametara.
public void SaveAll(string filePath, ImageOptionsBase options)
Parameters
filePath
string
Podaci o dosjeu.
options
ImageOptionsBase
i opcije .
SaveData(Stream)
Sačuvajte podatke.
protected override void SaveData(Stream stream)
Parameters
stream
Stream
Proljev za spašavanje podataka na.
SetResolution(Dvostruko, dvostruko)
Prilagodite rezoluciju ovog Aspose.Imaging.RasterImage s preciznošću pomoću ovogIdealan za razvijatelje koji žele prilagoditi rezoluciju slike naspecifične zahtjeve, osiguravajući optimalnu kvalitetu prikaza i upravljanje veličinom datoteke.
public override void SetResolution(double dpiX, double dpiY)
Parameters
dpiX
double
Horizontalna rezolucija, u točkama po centimetaru, Aspose.Imaging.RasterImage.
dpiY
double
Vertikalna rezolucija, u točkama po inču, Aspose.Imaging.RasterImage.
UpdateDimensions(u, u)
ažurira dimenzije slike.
protected override void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
Nova širina slike.
newHeight
int
Visina nove slike.