言いたいことはタイトルの通り。
imagefttext という関数を使うと画像に文字列を書き込むことができるが、文字数が同じでも文字の半角/全角さらにはフォントによって描画後のサイズは異なる。たいてい気になるのは横幅の長さだ。こちらの用意した土台となる元画像からはみ出してしまわないか。
でも大丈夫。imagettfbbox という関数に書き込みたい文字列やら何やらを突っ込めば、描画後のサイズとなる四隅のX/Yを配列で返してくれるのだから。
マジかよこんな便利な機能があったのか。最近画像に文字を書き込むサービスのスクリプトを諸々3週間かけて作ったけど、そうとは知らずに半角/全角の文字数に1文字あたりの幅を掛け算して強引にサイズを計測したわ。それでも結構ずれがあったけど。
って思ったけど、よく考えたら自分が作ったスクリプトでは文字数に応じても時間の空白を調整しているから imagettfbox はあまり使えないのだった。そりゃやろうと思えば、1文字づつのサイズを計測する使い方はできるけどね。ま、いいや。
でもこれからやろうとしている事には使えるので、忘れないうちにメモメモ。