3

简单的问题,但我无法在任何地方找到答案。到目前为止,没有任何搜索策略对我有用。

我有一个 ImageJ 宏,它打开一个对话框,供用户设置图像叠加层的大小。该对话框提示用户提供以微米为单位的覆盖层尺寸:

Dialog.addNumber("Width (µm):", 500);
Dialog.addNumber("Height (µm):", 250);

问题是对话框没有按预期显示:微米符号前面印有一个额外的字符。而不是这个(μm),我得到这个(¬μm)。

很明显,这是一个字符编码问题。但是我在任何地方都找不到任何文档告诉我如何正确地将非 ASCII 字符插入 ImageJ 对话框。我已经尝试过以我能想到的各种方式使用 ASCII 代码 (230) 和 Unicode (U+00B5),但在这些情况下,它只是呈现为代码而不是符号。ImageJ 中有宏调用来获取字符的 Unicode 字符串,但是除了作为数字字符串之外,没有办法将其打印回来?我难住了。

4

1 回答 1

1

你要做的是:

Dialog.addNumber("Width (" + fromCharCode(181) + "m):", 500);
Dialog.addNumber("Height (" + fromCharCode(181) + "m):", 250);

181十六进制的十进制值在哪里00B5

于 2012-06-01T05:17:04.367 回答