文字を呈示する際、文字の上部分が切れてしまう

265 views
Skip to first unread message

skum...@gmail.com

unread,
May 17, 2018, 2:26:27 AM5/17/18
to 心理学実験について話そう
黒木様

初めて投稿させていただきます。初学者なので低次元な質問で申し訳ないのですが、よろしくお願いいたします。

 % Psychtoolboxのスクリーンの設定
    Screen('Preference', 'SkipSyncTests', 1);       % SyncTestsを強行突破
    Screen('Preference', 'VisualDebugLevel', 1);    % welcome to 画面をblackに
    screenNumber = 1;  % 呈示モニタの設定
    white = WhiteIndex(screenNumber);
    black = BlackIndex(screenNumber);
    gray = GrayIndex(screenNumber);
    bgColor = gray;  % 背景色の設定
    fontColor = white;  % 文字色
    [win, rect] = Screen('OpenWindow', screenNumber, bgColor);  % フルスクリーンで呈示
    Screen('FillRect', win, black, [0 0 100 100]); 
    Screen('Flip', win);
    [centerX, centerY] = RectCenter(rect);  % 中心座標
    Screen('TextSize', win, 20);
    Screen('TextFont', win, '-:lang=ja');
    Screen('TextFont', win, 'Arial');

%    myText = double('クリックで実験スタート');
    myText = double('Click to start experiment');
    DrawFormattedText(win, myText, 'center', 'center');
    Screen('Flip', win);

上記のようなプログラムを作成し実行したところ、英語呈示の場合も日本語呈示の場合もギリギリ文章が理解できる程度に文字の上の部分が切れてしまいます。
何が原因かも分からないため、質問させていただきました。

改善策などご教授いただければ幸いです。

嵯峨

黒木@九州大学

unread,
May 21, 2018, 12:20:33 AM5/21/18
to 心理学実験について話そう
せっかく頼っていただいたのに恐縮なのですが、私の環境では英語も日本語も問題なく表示され、原因が分かりません。
たぶん、すでに試されていると思うのですが、フォントの種類やサイズを変えてみるくらいしか思いつきません・・・。

DrawFormattedTextDemo
でも文字が切れるのでしょうか?

skum...@gmail.com

unread,
May 22, 2018, 1:46:20 AM5/22/18
to 心理学実験について話そう
黒木様

お忙しい中対応していただきありがとうございます。一応先ほど自己解決することができました。一応、同じことで悩まれた方のために解決策を残しておきます。

解決方法なのですが、まず結局原因はよくわかりませんでした。DrawFormattedTextDemoもエラーが出て動かすことができませんでした。ただ、Screen('DrawText')では正常に表示させることができたため、そちらを使いました。一応、しょぼいものですが関数を作成したので張っておきます。 文章を読み込んで中心に表示させるものです。

function [] = DrawTx(win, x, y, Tx, Color)
[area, offset]= Screen('TextBounds', win, Tx);
StartX = x - (area(RectRight)/2);
StartY = y - (carea(RectBottom)/2);
Screen('DrawText', win, Tx, StartX, StartY, Color);

こんな質問にもお時間を使っていただき、本当にありがとうございました。




黒木@九州大学

unread,
May 22, 2018, 2:43:45 AM5/22/18
to 心理学実験について話そう
有益な情報をありがとうございました。

DrawFormattedTextDemoでエラーが出たとのことですが、もしエラーメッセージを教えていただけましたら、何かアドバイスができるかもしれません。

skum...@gmail.com

unread,
May 23, 2018, 12:41:24 AM5/23/18
to 心理学実験について話そう
黒木様

今出先なのでエラーメッセージをそのまま貼り付けたりは出来ないのですが、内容としてはSyncTestsに関するエラーでした。

プログラムを走らせた後、メインのウィンドウの方にSyncTestsと表示され、その下に上記のSyncTestsのエラーというような内容の文章が書かれていました。

以前投稿させていただいたプログラムは黒木様のパソコンで動作したと言うことでしたが、所属の研究したのパソコン数台で試したところ他の方のパソコンでは動作をしました。ただ、同じように文字が切れるパソコンもあった為、パソコン側の問題かと考えられます。それでもScreen('DrowText')で動作する理由はよくわかりませんが...。

現在のところ分かったことはその程度です。これしか情報がなくて申し訳ありません。何かの役に立てば幸いです。

黒木@九州大学

unread,
May 23, 2018, 8:35:11 PM5/23/18
to 心理学実験について話そう
お返事をありがとうございました。

DrawFormattedTextDemo
が動かない理由ですが、
で書いていることが関係しているかもしれません。

もしよろしければお試しください。

それにしても、DrawTextだとうまくいく理由が分かりませんね。
私は経験したことありませんが、別の関数ですし、挙動が違うということもあるのでしょうね・・・。
Reply all
Reply to author
Forward
0 new messages