DicomImage
محتويات
[
يخفي
]DicomImage class
إنها فئة التنفيذ التي تعمل مع الصورة من DICOM file
public sealed class DicomImage : RasterCachedMultipageImage, IMultipageImageExt
المنشئون
| اسم | وصف |
|---|---|
| DicomImage(Stream) | يقوم بتهيئة مثيل جديد لملفDicomImage فئة . |
| DicomImage(Stream, LoadOptions) | يقوم بتهيئة مثيل جديد لملفDicomImage فئة . |
| DicomImage(DicomOptions, int, int) | يقوم بتهيئة مثيل جديد لملفDicomImage فئة . |
الخصائص
| اسم | وصف |
|---|---|
| ActivePage { get; set; } | الحصول على الصفحة النشطة أو تعيينها. |
| ActivePageIndex { get; } | الحصول على صفحة الفهرس النشطة. |
| AutoAdjustPalette { get; set; } | الحصول على أو تعيين قيمة تشير إلى ما إذا كانت لوحة الضبط التلقائي. |
| override BackgroundColor { get; set; } | الحصول على أو تعيين قيمة للون الخلفية . |
| override BitsPerPixel { get; } | الحصول على عدد بتات الصورة لكل بكسل . |
| Bounds { get; } | يحصل على حدود الصورة . |
| BufferSizeHint { get; set; } | الحصول على أو تعيين تلميح حجم المخزن المؤقت الذي تم تحديده بالحجم الأقصى المسموح به لجميع المخازن المؤقتة الداخلية. |
| Container { get; } | يحصل على ملفImage حاوية . |
| DataStreamContainer { get; } | يحصل على دفق بيانات الكائن. |
| DicomPages { get; } | الحصول على الصفحات . |
| Disposed { get; } | يحصل على قيمة تشير إلى ما إذا كان هذا المثيل قد تم التخلص منه. |
| override FileFormat { get; } | يحصل على قيمة تنسيق الملف |
| FileInfo { get; } | يحصل على قيمة تحتوي على معلومات رأس DICOM file |
| override HasAlpha { get; } | يحصل على قناة ألفا . |
| virtual HasBackgroundColor { get; set; } | الحصول على أو تعيين قيمة تشير إلى ما إذا كانت الصورة لها لون خلفية. |
| override HasTransparentColor { get; } | يحصل على قيمة تشير إلى ما إذا كانت الصورة ذات لون شفاف. |
| override Height { get; } | الحصول على ارتفاع الصورة . |
| virtual HorizontalResolution { get; set; } | الحصول على أو تعيين الدقة الأفقية ، بالبكسل في البوصة ، لهذاRasterImage . |
| override ImageOpacity { get; } | يحصل على عتامة هذه الصورة . |
| InterruptMonitor { get; set; } | الحصول على أو تعيين شاشة المقاطعة. |
| IsCached { get; } | يحصل على قيمة تشير إلى ما إذا كانت بيانات الصورة مخزنة مؤقتًا حاليًا. |
| IsRawDataAvailable { get; } | يحصل على قيمة تشير إلى ما إذا كان تحميل البيانات الأولية متاحًا. |
| override PageCount { get; } | الحصول على عدد الصفحات . |
| override PageExportingAction { get; set; } | الحصول على إجراء تصدير الصفحة أو تعيينه . يرجى ملاحظة أن تعيين هذه الطريقة سيؤدي تلقائيًا إلى تحرير موارد الصفحة بعد تنفيذها. سيتم تنفيذها قبل حفظ كل صفحة مباشرةً. |
| override Pages { get; } | الحصول على الصفحات . |
| Palette { get; set; } | الحصول على لوحة الألوان أو تعيينها. لا يتم استخدام لوحة الألوان عندما يتم تمثيل وحدات البكسل مباشرةً. |
| virtual PremultiplyComponents { get; set; } | الحصول على أو تعيين قيمة تشير إلى ما إذا كان يجب مضاعفة مكونات الصورة مسبقًا. |
| RawCustomColorConverter { get; set; } | الحصول على أو تعيين محول الألوان المخصص |
| virtual RawDataFormat { get; } | يحصل على تنسيق البيانات الأولية. |
| RawDataSettings { get; } | يحصل على إعدادات البيانات الأولية الحالية. ملاحظة عند استخدام هذه الإعدادات ، يتم تحميل البيانات بدون تحويل. |
| RawFallbackIndex { get; set; } | الحصول على الفهرس الاحتياطي أو تعيينه لاستخدامه عندما يكون فهرس اللوحة خارج الحدود |
| RawIndexedColorConverter { get; set; } | الحصول على أو تعيين محول الألوان المفهرس |
| virtual RawLineSize { get; } | الحصول على حجم الخط الخام بالبايت. |
| Size { get; } | يحصل على حجم الصورة . |
| virtual TransparentColor { get; set; } | الحصول على لون شفاف للصورة . |
| virtual UpdateXmpData { get; set; } | الحصول على أو تعيين قيمة تشير إلى ما إذا كان سيتم تحديث بيانات تعريف XMP. |
| override UsePalette { get; } | يحصل على قيمة تشير إلى ما إذا كانت لوحة الصور مستخدمة. |
| virtual UseRawData { get; set; } | الحصول على أو تعيين قيمة تشير إلى ما إذا كان سيتم استخدام تحميل البيانات الأولية عند توفر تحميل البيانات الأولية. |
| virtual VerticalResolution { get; set; } | الحصول على أو تحديد الدقة الرأسية ، بالبكسل في البوصة ، لهذاRasterImage . |
| override Width { get; } | الحصول على عرض الصورة . |
| override XmpData { get; set; } | الحصول على أو تعيين بيانات Xmp . |
طُرق
| اسم | وصف |
|---|---|
| AddPage() | إضافة صفحة جديدة إلى نهاية قائمة الصفحات. |
| AddPage(RasterImage) | يضيف صفحة للصورة. |
| override AdjustBrightness(int) | ضبط أbrightness للصورة . |
| override AdjustContrast(float) | Image التباين |
| override AdjustGamma(float) | تصحيح جاما لصورة . |
| override AdjustGamma(float, float, float) | تصحيح جاما لصورة . |
| override BinarizeBradley(double) | ثنائية الصورة باستخدام خوارزمية العتبة التكيفية لبرادلي باستخدام عتبة الصورة المتكاملة |
| override BinarizeBradley(double, int) | ثنائية الصورة باستخدام خوارزمية العتبة التكيفية لبرادلي باستخدام عتبة الصورة المتكاملة |
| override BinarizeFixed(byte) | ثنائية الصورة مع عتبة محددة مسبقًا |
| override BinarizeOtsu() | ثنائية الصورة مع عتبة Otsu |
| override CacheData() | تخزين البيانات الخاصة. |
| CanSave(ImageOptionsBase) | يحدد ما إذا كان يمكن حفظ الصورة بتنسيق الملف المحدد الذي تم تمثيله بواسطة خيارات الحفظ التي تم تمريرها. |
| override Crop(Rectangle) | اقتصاص الصورة . |
| override Crop(int, int, int, int) | اقتصاص الصورة مع التحولات . |
| Dispose() | التخلص من المثيل الحالي . |
| Dither(DitheringMethod, int) | يقوم بالتردد على الصورة الحالية. |
| override Dither(DitheringMethod, int, IColorPalette) | يقوم بالتردد على الصورة الحالية. |
| override Filter(Rectangle, FilterOptionsBase) | يقوم بتصفية المستطيل المحدد . |
| GetArgb32Pixel(int, int) | الحصول على صورة ARGB بكسل 32 بت . |
| GetDefaultArgb32Pixels(Rectangle) | الحصول على صفيف ARGB بكسل الافتراضي 32 بت. |
| virtual GetDefaultOptions(object[]) | يحصل على الخيارات الافتراضية . |
| GetDefaultPixels(Rectangle, IPartialArgb32PixelLoader) | الحصول على مصفوفة البكسل الافتراضية باستخدام محمل البكسل الجزئي. |
| GetDefaultRawData(Rectangle, RawDataSettings) | يحصل على مصفوفة البيانات الأولية الافتراضية. |
| GetDefaultRawData(Rectangle, IPartialRawDataLoader, RawDataSettings) | الحصول على مصفوفة البيانات الأولية الافتراضية باستخدام محمل البكسل الجزئي. |
| virtual GetModifyDate(bool) | الحصول على تاريخ ووقت آخر تعديل لصورة المورد. |
| virtual GetOriginalOptions() | الحصول على الخيارات بناءً على إعدادات الملف الأصلية. يمكن أن يكون هذا مفيدًا للحفاظ على عمق البت والمعلمات الأخرى للصورة الأصلية دون تغيير . على سبيل المثال ، إذا قمنا بتحميل صورة PNG أبيض وأسود مع 1 بت لكل بكسل ثم احفظه باستخدام the Save الطريقة ، سيتم إنتاج صورة PNG الناتجة بمعدل 8 بت لكل بكسل. لتجنب ذلك وحفظ صورة PNG بمعدل 1 بت لكل بكسل ، استخدم هذه الطريقة للحصول على خيارات الحفظ المقابلة وتمريرها إلىSave الطريقة كمعامل ثاني. |
| GetPixel(int, int) | الحصول على بكسل صورة . |
| GetSkewAngle() | الحصول على زاوية الانحراف. هذه الطريقة قابلة للتطبيق على المستندات النصية الممسوحة ضوئيًا ، لتحديد زاوية الانحراف عند المسح. |
| override Grayscale() | تحويل الصورة إلى تمثيلها بالتدرج الرمادي |
| InsertPage(int) | إدراج صفحة جديدة في قائمة الصفحات بالفهرس المحدد. |
| LoadArgb32Pixels(Rectangle) | تحميل 32 بت ARGB بكسل . |
| LoadArgb64Pixels(Rectangle) | تحميل 64 بت ARGB بكسل . |
| LoadCmyk32Pixels(Rectangle) | تحميل وحدات البكسل بتنسيق CMYK . |
| LoadPartialArgb32Pixels(Rectangle, IPartialArgb32PixelLoader) | تحميل 32 بت ARGB بكسل جزئيًا بواسطة الحزم. |
| LoadPartialPixels(Rectangle, IPartialPixelLoader) | يتم تحميل وحدات البكسل جزئيًا بالحزم . |
| LoadPixels(Rectangle) | تحميل بكسل . |
| LoadRawData(Rectangle, RawDataSettings, IPartialRawDataLoader) | تحميل البيانات الأولية . |
| LoadRawData(Rectangle, Rectangle, RawDataSettings, IPartialRawDataLoader) | تحميل البيانات الأولية . |
| NormalizeAngle() | تطبيع الزاوية. هذه الطريقة قابلة للتطبيق على المستندات النصية الممسوحة ضوئيًا للتخلص من المسح المنحرف. تستخدم هذه الطريقةGetSkewAngle وRotate الطرق . |
| override NormalizeAngle(bool, Color) | تطبيع الزاوية. هذه الطريقة قابلة للتطبيق على المستندات النصية الممسوحة ضوئيًا للتخلص من المسح المنحرف. تستخدم هذه الطريقة!:GetSkewAngle وRotate الطرق . |
| ReadArgb32ScanLine(int) | يقرأ خط المسح بالكامل بواسطة فهرس خط المسح المحدد. |
| ReadScanLine(int) | يقرأ خط المسح بالكامل بواسطة فهرس خط المسح المحدد. |
| RemovePage(int) | يزيل الصفحة الموجودة في الفهرس المحدد لقائمة الصفحات. |
| ReplaceColor(Color, byte, Color) | يستبدل لونًا بآخر بالاختلاف المسموح به ويحتفظ بقيمة ألفا الأصلية لحفظ الحواف المتجانسة. |
| override ReplaceColor(int, byte, int) | يستبدل لونًا بآخر بالاختلاف المسموح به ويحتفظ بقيمة ألفا الأصلية لحفظ الحواف المتجانسة. |
| ReplaceNonTransparentColors(Color) | يستبدل كل الألوان غير الشفافة بلون جديد ويحتفظ بقيمة ألفا الأصلية لحفظ الحواف الناعمة . ملاحظة: إذا كنت تستخدمها على صور بدون شفافية ، فسيتم استبدال كل الألوان بواحد. |
| override ReplaceNonTransparentColors(int) | يستبدل كل الألوان غير الشفافة بلون جديد ويحتفظ بقيمة ألفا الأصلية لحفظ الحواف الناعمة . ملاحظة: إذا كنت تستخدمها على صور بدون شفافية ، فسيتم استبدال كل الألوان بأخرى. |
| Resize(int, int) | يغير حجم الصورة. الافتراضيNearestNeighbourResample يستخدم . |
| override Resize(int, int, ImageResizeSettings) | يغير حجم الصورة. |
| override Resize(int, int, ResizeType) | يغير حجم الصورة. |
| ResizeHeightProportionally(int) | يغير حجم الارتفاع بشكل متناسب. الافتراضيNearestNeighbourResample يستخدم . |
| virtual ResizeHeightProportionally(int, ImageResizeSettings) | يغير حجم الارتفاع بشكل متناسب . |
| override ResizeHeightProportionally(int, ResizeType) | يغير حجم العرض بشكل متناسب . |
| ResizeProportional(int, int, ResizeType) | يؤدي تغيير الحجم النسبي على الصورة. سيؤدي تغيير الحجم النسبي إلى تغيير حجم كل إطار وفقًا لنسبةnewWidth العرض وnewHeight / ارتفاع . |
| ResizeWidthProportionally(int) | يغير حجم العرض بشكل متناسب. الافتراضيNearestNeighbourResample يستخدم . |
| virtual ResizeWidthProportionally(int, ImageResizeSettings) | يغير حجم العرض بشكل متناسب . |
| override ResizeWidthProportionally(int, ResizeType) | يغير حجم العرض بشكل متناسب . |
| virtual Rotate(float) | تدوير الصورة حول المركز . |
| override Rotate(float, bool, Color) | !:RasterCahcedMultipageImage.Rotate الصورة حول المركز . |
| override RotateFlip(RotateFlipType) | يقوم بتدوير الإطار النشط فقط أو قلبه أو تدويره وقلبه. |
| Save() | يحفظ بيانات الصورة في التدفق الأساسي. |
| Save(Stream) | يحفظ بيانات الكائن في الدفق المحدد. |
| override Save(string) | يحفظ الصورة في موقع الملف المحدد. |
| Save(Stream, ImageOptionsBase) | يحفظ بيانات الصورة إلى التدفق المحدد بتنسيق الملف المحدد وفقًا لخيارات الحفظ. |
| virtual Save(string, bool) | يحفظ بيانات الكائن في موقع الملف المحدد. |
| virtual Save(string, ImageOptionsBase) | يحفظ بيانات الكائن في موقع الملف المحدد بتنسيق الملف المحدد وفقًا لخيارات الحفظ. |
| override Save(Stream, ImageOptionsBase, Rectangle) | يحفظ بيانات الصورة إلى التدفق المحدد بتنسيق الملف المحدد وفقًا لخيارات الحفظ. |
| virtual Save(string, ImageOptionsBase, Rectangle) | يحفظ بيانات الكائن في موقع الملف المحدد بتنسيق الملف المحدد وفقًا لخيارات الحفظ. |
| SaveAll(string, ImageOptionsBase) | يحفظ بيانات الكائن في موقع الملف المحدد (المفهرس + اسم الملف) بتنسيق الملف المحدد وفقًا لخيارات الحفظ .. |
| SaveArgb32Pixels(Rectangle, int[]) | يحفظ 32 بت ARGB بكسل . |
| SaveCmyk32Pixels(Rectangle, int[]) | يحفظ البكسل . |
| SavePixels(Rectangle, Color[]) | يحفظ البكسل . |
| SaveRawData(byte[], int, Rectangle, RawDataSettings) | يحفظ البيانات الأولية . |
| SetArgb32Pixel(int, int, int) | يضبط صورة ARGB بكسل 32 بت للوضع المحدد. |
| override SetPalette(IColorPalette, bool) | يضبط لوحة الصور . |
| SetPixel(int, int, Color) | يضبط بكسل الصورة للوضع المحدد. |
| override SetResolution(double, double) | يضبط الدقة لهذا الغرضRasterImage . |
| virtual ToBitmap() | تحويل الصورة النقطية إلى الصورة النقطية. |
| WriteArgb32ScanLine(int, int[]) | يكتب خط المسح بالكامل إلى فهرس خط المسح المحدد. |
| WriteScanLine(int, Color[]) | يكتب خط المسح بالكامل إلى فهرس خط المسح المحدد. |
أمثلة
تغيير نوع اللون في ضغط DICOM.
[C#]
using (var inputImage = Image.Load("original.jpg"))
{
var options = new DicomOptions { ColorType = ColorType.Grayscale8Bit };
inputImage.Save("original_8Bit.dcm", options);
}
استخدم ضغط RLE في صورة DICOM.
[C#]
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);
}
استخدم ضغط JPEG 2000 في صورة DICOM.
[C#]
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);
}
استخدم ضغط JPEG في صورة DICOM.
[C#]
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);
}
يوضح هذا المثال كيفية تحميل صورة DICOM من تدفق ملف.
[C#]
string dir = "c:\\temp\\";
// تحميل صورة DICOM من دفق ملف.
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))
{
// احفظ كل صفحة كصورة PNG فردية.
foreach (Aspose.Imaging.FileFormats.Dicom.DicomPage dicomPage in dicomImage.DicomPages)
{
// قم بإنشاء اسم ملف بناءً على فهرس الصفحة.
string fileName = string.Format("sample.{0}.png", dicomPage.Index);
// صفحة DICOM هي صورة نقطية ، لذا فإن جميع العمليات المسموح بها باستخدام صورة نقطية قابلة للتطبيق على صفحة DICOM.
dicomPage.Save(dir + fileName, new Aspose.Imaging.ImageOptions.PngOptions());
}
}
}
قم بإنشاء صورة Dicom متعددة الصفحات.
[C#]
using (DicomImage image = (DicomImage)Image.Create(
new DicomOptions() { Source = new StreamSource(new MemoryStream()) },
100,
100))
{
// ارسم شيئًا باستخدام الرسومات المتجهة
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);
// احفظ وحدات البكسل للصورة المرسومة. هم الآن على الصفحة الأولى من صورة Dicom.
int[] pixels = image.LoadArgb32Pixels(image.Bounds);
// أضف بضع صفحات بعد ذلك ، مما يجعلها أكثر قتامة
for (int i = 1; i < 5; i++)
{
DicomPage page = image.AddPage();
page.SaveArgb32Pixels(page.Bounds, pixels);
page.AdjustBrightness(i * 30);
}
// أضف بضع صفحات أمام الصفحة الرئيسية ، مما يجعلها أكثر إشراقًا
for (int i = 1; i < 5; i++)
{
DicomPage page = image.InsertPage(0);
page.SaveArgb32Pixels(page.Bounds, pixels);
page.AdjustBrightness(-i * 30);
}
// احفظ الصورة متعددة الصفحات التي تم إنشاؤها في ملف الإخراج
image.Save("MultiPage.dcm");
}
أنظر أيضا
- class RasterCachedMultipageImage
- interface IMultipageImageExt
- مساحة الاسم Aspose.Imaging.FileFormats.Dicom
- المجسم Aspose.Imaging