我在Psychtoolbox中展示了德语文本。特殊字符(变音符号(未在 DrawText 或 DrawFormattedText 中正确显示。当我在.txt文件中读取字符单元格结构时,Matlab 会识别这些字符,但 Psychtoolbox 用其他符号替换字符.
以前有人解决这个问题吗?
您也可以尝试使用屏幕("首选项","文本编码区域设置","UTF-8"(来确保您的文本以UTF-8编码。我还尝试了uint8解决方案,它适用于我的一台工作计算机,但不适用于另一台
我们刚刚找到了一个解决方案。如果文本存储在变量"消息"中
message='öäüßÄÖÜ'
- 通过将消息转换为uint8((来显示文本
DrawFormattedText(w, uint8(message((; % 使用 uint8(( 通过传递为uint8来显示变音符号和其他非 ASCII 符号 (UTF-8(
而不是 DrawFormattedText(w, message(;** % 不适用于变音等。
- 使用显示所有字符的字体,例如 Arial
Screen('TextFont', w, 'Arial', 1(;% 不使用 Helvetica,不能正确显示大写字母 ÄÖÜ(即使将其转换为 uint8(