Is it possible to print unicode text or characters in MATLAB?
是否可以在子图中打印一些字符,例如\\'?\\'(U 062D)作为图像的标题?
使用Yair Altman在undocumentedmatlab.com上描述的Java,可以将HTML感知标签添加到绘图中。因此,您可以将Unicode字符"?"放入(U 062D)使用HEXCODE;语法转换为这样的标签,在您的情况下为 :
1 2 3 4
| figure;
labelStr = '<html> </html>';
jLabel = javaObjectEDT ('javax.swing.JLabel',labelStr );
[hcomponent,hcontainer ] = javacomponent (jLabel, [100, 100, 40, 20], gcf); |
这将显示一个空的图形窗口,其中仅包含单个Unicode字符。使用WinXP在Matlab R2010b上进行了测试。
有关诱使MATLAB显示Unicode的更多信息,请参见此SO帖子,该帖子可能部分特定于OSX。
请注意,通过MATLAB title()的本机LaTex功能可以使用当前字符集中不可用的一些字符,如此处所述;但是,这远没有涵盖所有Unicode。
查看后:
MATLAB源文件中的Unicode字符
http://www.mathworks.com/help/techdoc/ref/unicode2native.html
http://www.mathworks.com/help/techdoc/ref/native2unicode.html
我认为有些希望您可以在子图的标题上打印unicode字符。
祝你好运。
- 您链接到的SO帖子中包含以下注释:"即使问题仍未解决,我也接受这个答案"和"据我所知MATLAB对Unicode严重过敏。"。链接到的两个函数是关于修改内存中unicode文本的表示形式,而不是显示...
-
该问题的OP能够在编辑器上打印Unicode字符,但是在重新启动Matlab之后,会出现奇怪的字符。在您的情况下,一旦您在图像上获得输出,就可以将图像保存为jpg或其他格式,那么您不必担心,我猜
-
他能够在编辑器中键入unicode(因此用于MATLAB编辑器的编辑控件可以处理它);但是一旦他保存了源文件,该符号就会直接被问号代替。这个问题与图形或绘图无关,因此这里的问题非常有用,只是表明MATLAB还没有为Unicode做好准备。