ページ 11

文字描画幅の取得について( DxLib GetDrawStringWidthToHandle)

Posted: 2011年2月08日(火) 13:53
by user name1
今,
    std::string msg
に格納された文字列の描画幅を取得して、
    DrowBox()で,
文字列に合わせて矩形を描画しようとしているのですが、
描画幅を得る関数
int GetDrawStringWidthToHandle( char *String , int StrLen , int FontHandle ) ;
の引数として
      (msg.c_str(), msg.lentgh(), FontHandle)
を代入してるのですが、戻り値が -1になってしまいます。
他に、一番目の引数を色々いじったりして何回もデバッグしてるのですが、思うような値が返ってきません。

フォントハンドルを使用して動的な描画幅を得るのに、良い方はありますか。
もし、間違っている部分や、思い当たることがあれば、指摘してください。

Re: 文字描画幅の取得について( DxLib GetDrawStringWidthToHandle)

Posted: 2011年2月08日(火) 15:56
by kimuchi
× msg.lentgh()
○ msg.length()

だと思いますが・・・

Re: 文字描画幅の取得について( DxLib GetDrawStringWidthToHandle)

Posted: 2011年2月08日(火) 17:31
by ゼルダの伝説が好き
kimuchi さんが書きました:× msg.lentgh()
○ msg.length()

だと思いますが・・・
あっ!
申し訳ない、投稿時のスペルミスです。
実際には、
     msg.length()
と、書いています。
そうでないと、コンパイル通らないので;

Re: 文字描画幅の取得について( DxLib GetDrawStringWidthToHandle)

Posted: 2011年2月08日(火) 17:41
by ゼルダの伝説が好き
あと、スペルミス見直していたら自分のミスに気がつきました。
閲覧して下さった方、投稿して下さった方、本当にありがとうございました。
原因はフォントハンドルに不正な値代入していたようでエラーチェックしてませんでした。