如何通过脚本打开带注释的图像

问题描述 投票:1回答:1

如何在dm-script中的脚本中打开带有注释的(dm4)图像?


[dm4图像带有注释(例如比例尺或某些文本)时,当我通过菜单(Ctrl + O)打开图像时会显示此注释。但是,当我按openImage()在脚本中打开相同文件时,它们不会显示如下。

[左侧是通过菜单打开的图像,右侧是openImage()打开的完全相同的图像。它缺少注释。

[Real image Image opened via script

以下示例显示了相同的内容。该代码将文本添加到图像,保存并再次打开。打开的图像不像上面的图像那样显示注释:

String path = GetApplicationDirectory("current", 0);
path = PathConcatenate(path, "temp.dm4");

// get the current image
image img;
img.getFrontImage();
ImageDisplay display = img.ImageGetImageDisplay(0);

// add some test annotations
number height = img.ImageGetDimensionSize(1);
number padding = height / 100;
number font_size = height/10;
for(number y = padding; y + font_size + padding < height; y += font_size + padding){
    Component annotation = NewTextAnnotation(padding, y, "Test", font_size);
    annotation.componentSetForegroundColor(255, 255, 255);
    display.ComponentAddChildAtEnd(annotation);
}

// save the current image
img.saveImage(path);

// show the saved image
image img2 = openImage(path);
img2.showImage();
annotations dm-script
1个回答
0
投票
这是脚本新手时会犯的一个非常典型的错误,因为这是其他语言中找不到的脚本语言的“专业”。之所以出现这种情况,是因为脚本旨在实现非常简单的脚本,例如Z = log(A),其中通过处理现有图像(此处为A)即时创建新图像(此处为Z)。

因此,当一个人想要将图像

分配到变量时,需要有一个

different运算符。

有关详细信息,请参见F1帮助文档:enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.