叠加位图是在主位图之上绘制的单独的1位位图。每个主位图最多可以有17个(max_overlay + 1)覆盖位图。覆盖存储在包含max_overlay + 1项的数组中。每个数组条目都包含覆盖位图及其属性。该数组使用一个基于0的索引。(即第一个条目的索引为0。)
对于每个覆盖层,值为0的覆盖像素被认为是透明的。值为1的覆盖像素被认为是非透明的,将使用OVERLAYATTRIBUTES.crColor中设置的颜色进行绘制。
控件可以自动绘制覆盖层L_PaintDC函数,也可以手动使用L_PaintDCOverlay.L_PaintDC以升序索引绘制覆盖层:索引0的覆盖层首先绘制,索引1的覆盖层其次绘制,等等。如果您需要更改覆盖的绘制顺序,则必须使用L_PaintDCOverlay手动绘制它们。另一种选择是重新排列覆盖,并确保索引为0的覆盖是您想要首先绘制的覆盖,然后使用L_PaintDC。
每个覆盖层都有一些属性(或属性),这些属性可以由用户设置。这些属性分为两类:
这些属性指定如何绘制覆盖:
财产 | 描述 |
---|---|
起源 | 相对于位图的左上角显示边距的左上角偏移量。偏移量位于显示视图透视图中,其中0,0表示左上角。 |
颜色 | 用于绘制覆盖层位1的颜色。 |
指数 | 每个覆盖层都有一个索引(0 - max_overlay)。 |
BitPosition | 相关的位平面(仅对每像素位图的灰度8、12和16位有效)。每个覆盖可以与位图位平面相关联(在0和位图的BitsPerPixel - 1之间)。您可以指定是否要将每个覆盖与位平面相关联。不要将其与Index混淆。叠加的相关位位置不必与叠加索引相同。只有设置了UseBitPlane标志,此属性才有效。 |
AutoPaint国旗 | 控件是否自动绘制覆盖层L_PaintDC函数与否。如果设置,L_PaintDC将自动绘制这个覆盖层。如果没有设置,L_PaintDC将不会自动绘制这个覆盖层。在这种情况下,您可能想手动绘制覆盖,使用L_PaintDCOverlay. |
自动处理国旗 | 标志,该标志决定当相关位图发生变化时是否自动处理覆盖。 |
如果设置了,当相关的位图被旋转、翻转、反转、调整大小、剪切时,覆盖将被自动处理。左边,右边和覆盖的大小将自动调整,以保持在相应的位图像素。 | |
如果没有设置,当相关位图被旋转、翻转、反转、调整大小、剪切时,覆盖层将不会自动处理。 | |
UseBitPlane国旗 | 标志,指示是否应该使用BitPosition属性。如果设置,BitPosition是对应的平面索引(0位图位/像素- 1)。如果没有设置,BitPosition属性将被忽略。 |
这些属性是DICOM特定的,基于DICOM标准PS 3.3中定义的“覆盖平面模块属性”:
财产 | 描述 |
---|---|
行 | 覆盖中的行数。 |
列 | 覆盖层中的列数。 |
类型 | 指示该覆盖层是否表示感兴趣的区域或其他图形。 |
BitsAllocated | 在覆盖层中分配的比特数。 |
描述 | 关于覆盖的用户定义注释。 |
子类型 | 已定义的术语,用于标识覆盖类型的预期用途。 |
标签 | 用户定义的文本字符串,可用于标记或命名此覆盖。 |
ROIArea | 感兴趣区域中的像素数。 |
ROIMean | 感兴趣区域的平均像素值。 |
ROIStandardDeviation | 感兴趣区域中像素值的标准偏差。 |
NumFramesInOverlay | 覆盖层中的帧数。如果覆盖数据包含多个帧,这是必需的。 |
ImageFrameOrigin | 应用该覆盖的多帧图像的帧数;帧从1开始编号。 |
ActivationLayer | 覆盖层将在其中显示。 |
覆盖数组在您第一次为特定覆盖索引设置属性或位图时自动创建。当主位图被释放时,覆盖数组被自动释放。若要设置特定叠加的属性,请使用L_SetOverlayAttributes.一次可以设置一个或多个属性。要获取特定叠加层的当前属性,请调用L_GetOverlayAttributes.的L_GetOverlayCount获取已定义的覆盖数。
叠加位图独立于主位图。为每个覆盖位图分配单独的内存。你可以通过以下方法设置叠加位图:
调用L_SetOverlayBitmap然后传递叠加位图。
使LEADTOOLS从主位图的某个位平面的位生成一个覆盖位图L_UpdateBitmapOverlayBits以及在uFlags中设置SETOVERLAYBITS_FROMBITMAP。
要获取特定叠加的叠加位图,请调用L_GetOverlayBitmap.
你可以用覆盖位图中的位来更新主位图中相应的位平面L_UpdateBitmapOverlayBits和设置SETOVERLAYBITS_FROMOVERLAY标志。这可用于在图像处理功能期间保存特定的位平面。防止某个图像处理函数对位平面的影响:
获得位平面到一个覆盖位图L_UpdateBitmapOverlayBits(…, SETOVERLAYBITS_FROMBITMAP);
应用图像处理功能
恢复所需的主位图位平面L_UpdateBitmapOverlayBits(…, SETOVERLAYBITS_FROMOVERLAY);
要保留整个位平面,请确保覆盖偏移量为0,0,并且覆盖与覆盖位图具有相同的大小。这在默认情况下是正确的,但是如果你改变了覆盖的位置和大小,你必须重置它们。
默认的覆盖宽度是显示位图宽度-覆盖的左偏移量。覆盖的左偏移量在OVERLAYATTRIBUTES.ptOrigin.x成员中设置。显示宽度取决于位图的视图视角,它是在屏幕上绘制的位图的宽度,缩放系数为100%。
默认的覆盖高度是显示位图高度-覆盖的顶部偏移。覆盖的顶部偏移量在OVERLAYATTRIBUTES.ptOrigin.y成员中设置。
你可以通过调用来改变覆盖位图的大小L_SetOverlayBitmap.注意,您可以使用未分配的位图调用L_SetOverlayBitmap。在这种情况下,只使用覆盖位图的宽度和高度。
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗网络查看器net
188宝金博怎么下载
支持的平台上
.NET、Java、Android和iOS/macOS程序集
C API/ c++类库
HTML5 JavaScript库
您的邮件已发送给技术支持!应该有人联系!如果你的事情很紧急,请回来聊天。
聊天时间:
周一至周五,美国东部时间上午8:30至下午6:00
感谢您的反馈!
请再次填写表格,开始新的聊天。
所有代理目前都离线。
聊天时间:
星期一至星期五
美国东部时间上午8:30 -下午6点
如需与我们联系,请填写此表格,我们将通过电子邮件与您联系。