相关疑难解决方法(0)

MATLAB:如何显示从文件中读取的UTF-8编码文本?

我的问题的主旨是这样的:

如何在Matlab的GUI(OS X)中显示Unicode字符,以便正确呈现它们?

细节:

我有一个存储在文件中的字符串表,其中一些字符串包含UTF-8编码的Unicode字符.我已尝试了许多不同的方法(这里列出太多)以在MATLAB GUI中显示该文件的内容,但没有成功.例如:

>> fid = fopen('/Users/kj/mytable.txt', 'r', 'n', 'UTF-8');
>> [x, x, x, enc] = fopen(fid); enc

enc =

UTF-8

>> tbl = textscan(fid, '%s', 35, 'delimiter', ',');
>> tbl{1}{1}

ans =

ÎÎÎÎÎΠΣΦΩαβγδεζηθικλμνξÏÏÏÏÏÏÏÏÏÏ
>> 
Run Code Online (Sandbox Code Playgroud)

碰巧的是,如果我将字符串直接粘贴到MATLAB GUI中,粘贴的字符串会正确显示,这表明GUI基本上不能显示这些字符,但是一旦MATLAB读入它,它就会更长时间地显示它.例如:

>> pasted = '?????????????????????????????????'

pasted =


>> 
Run Code Online (Sandbox Code Playgroud)

谢谢!

unicode macos matlab user-interface utf-8

25
推荐指数
1
解决办法
2万
查看次数

如何在Matlab图中使用非ASCII字符(用于LaTeX doc)?

我正在使用包含Matlab绘制的数字到LaTeX中.我通常的工作流程如下:

  1. matlab中的脚本创建了图形,
  2. 我调整了我认为需要在视觉图形编辑器中调整的内容,
  3. 图保存为.fig(以备将来修改)和.eps(包含在LaTeX中),
  4. 我将.eps文件转换为.pdf,
  5. LaTeX源代码中引用了PDF文件.

重点:当我尝试在轴标签,图例,标题等非ASCII字符中使用时(确切地说:波兰国家字符,例如''',''',''','ć')编码在Matlab图编辑器很好,字符显示正常.在输出到.eps后,它们都是错的(例如:"Głębokość"变成"G³êbokoœæ").

是否存在通过调整Matlab选项或更改工作流程来正确执行此操作的方法?

注:我发现,出口png格式或其他非矢量格式正确处理字符编码,但我想避免这样做 -我要求的方式,以"保持载体".直接导出到.pdf会产生与.eps相同的效果,例如它会产生错误的结果.

PS.Matlab是R2008a,.latex文件是用pdflatex编译的,带有来自MikTeX 2.9的epstopdf的.eps文件(全部在Win7下).

matlab latex postscript character-encoding

9
推荐指数
1
解决办法
8029
查看次数