我是MatLab的新手,目前我坐在电脑前,不知道如何解决问题。我确实计划向我的参与者展示一个字符串,其中一个字母(字母的位置不同)必须在屏幕上的某个位置,并且在屏幕上有不同的颜色,之前和之后的字母必须根据字母的位置进行定向,并且颜色不同(基本上我试图重建spritz.com)。到目前为止,我知道如何对齐不水平重叠的片段。但我不知道如何处理大小不同的字母(例如:"y"与"d"与"o"),因为它们的位置不同,对于参与者来说,它们似乎不在同一行。
所以问题是,我如何将一行上的字符串与不同的字符串源对齐,使y与o和d在同一行上。现在,每个字母的最低像素都在同一线上,但"y"的部分必须低于d。到目前为止,这是我的简化代码:
[nxORP, nyORP, wb] = DrawFormattedText2('p',...
'win', w1, 'sx', 960, 'sy', 553, 'xalign', 'left', 'yalign', 'bottom');
DrawFormattedText2('d',...
'win', w1, 'sx', wb(1), 'sy', 553, 'xalign', 'right', 'yalign', 'bottom');
DrawFormattedText2('y',...
'win', w1, 'sx', wb(3), 'sy', 553, 'xalign', 'left', 'yalign', 'bottom');
有人能帮我吗?
PS:在的帮助下http://psychtoolbox.org/docs/DrawFormattedText2我看到:"所以要使用(nx,ny)作为连接更多文本字符串的新起始位置,你需要用yPositionIsBaseline==true来绘制这些字符串。"但我不知道如何做到这一点,也不知道这是否是解决方案。感谢您的帮助。祝你一切顺利,多米尼克
如果使用等宽字体,则字母宽度相等。您可用的字体会因您的操作系统而异,但Courier是一种常见的单空格字体。
字体可以通过Screen(‘TextFont’)
指定一次:http://psychtoolbox.org/docs/Screen-TextFont
或在使用DrawFormattedText2时作为格式化标记之一:http://psychtoolbox.org/docs/DrawFormattedText2