- (BOOL)setOverlaySize:(LeadSize)size
forImageAtIndex:(NSInteger)index
error:(NSError **)error
index
The index of the overlay for which to set the image size. This index is zero-based and should be less than or equal to MaxOverlays.
width
New image width in pixels
height
New image height in pixels.
This method is available in the (Document/Medical only) Toolkits.
Sets the size of the overlay image for a certain index. If the image already has an overlay image at index, it will be freed and the overlay size will be set to width by height pixels. If the image has no overlay image at index, a new empty overlay image will be created with size of width and height. After calling SetOverlayImageSize, you must call UpdateOverlayBits to allocate the overlay bitmap and set the data.
For more information, refer to Overlay Overview.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Core;
using Leadtools.ImageProcessing.Color;
using Leadtools.Dicom;
using Leadtools.Drawing;
using Leadtools.Controls;
using Leadtools.Svg;
public void GetOverlayImageExample()
{
RasterCodecs codecs = new RasterCodecs();
// load an image and set an overlay
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "DICOM", "image2.dcm"), 0, CodecsLoadByteOrder.BgrOrGray, 1, 1);
RasterImage imageOverlay1 = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "ulay1.bmp"), 1, CodecsLoadByteOrder.Rgb, 1, 1);
RasterImage imageOverlay2 = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "ulay1.bmp"), 1, CodecsLoadByteOrder.Rgb, 1, 1);
image.SetOverlayImage(0, imageOverlay1, RasterGetSetOverlayImageMode.Copy);
image.SetOverlayImage(1, imageOverlay2, RasterGetSetOverlayImageMode.Copy);
// update the attributes of one of the overlays
RasterOverlayAttributes attributes = image.GetOverlayAttributes(0,
RasterGetSetOverlayAttributesFlags.Color |
RasterGetSetOverlayAttributesFlags.Flags |
RasterGetSetOverlayAttributesFlags.Origin |
RasterGetSetOverlayAttributesFlags.BitIndex);
attributes.Color = new RasterColor(255, 255, 255);
attributes.AutoPaint = true;
attributes.AutoProcess = true;
attributes.Origin = new LeadPoint(5, 5);
attributes.BitPosition = image.BitsPerPixel - 1;
image.UpdateOverlayAttributes(
0,
attributes,
RasterGetSetOverlayAttributesFlags.Color |
RasterGetSetOverlayAttributesFlags.Flags |
RasterGetSetOverlayAttributesFlags.Origin |
RasterGetSetOverlayAttributesFlags.BitIndex);
int count = image.OverlayCount;
for (int i = 0; i < count; i++)
{
using (RasterImage overlayTest = image.GetOverlayImage(i, RasterGetSetOverlayImageMode.NoCopy))
{
string fileName = string.Format(Path.Combine(LEAD_VARS.ImagesDir, "overlay{0}_copy.bmp"), i);
codecs.Save(overlayTest, fileName, RasterImageFormat.Bmp, 1);
}
}
image.Dispose();
imageOverlay1.Dispose();
imageOverlay2.Dispose();
codecs.Dispose();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document