※ ChatGPTを利用し、要約された質問です(原文:*******imagetext.php***************)
画像の文字化け問題を解決する方法
このQ&Aのポイント
画像の文字化け問題を解決するには、文字列をUTF-8に変換してから書き込む必要があります。
また、フォントファイルへのパスも正しく指定する必要があります。
文字列の書き込み後、画像を出力する際には、imagejpeg関数を使用します。
*******imagetext.php***************
*******imagetext.php***************::
<?php
//画像(JPEG)ヘッダを追加
header("Content-type: image/jpeg");
//作成する画像の設定
//幅
$width = 400;
//高さ
$height = 100;
//画像を作成
$img = imagecreate($width, $height);
//色の設定(背景/文字列)
imagecolorallocate($img, 255, 255, 255);
$textcol = imagecolorallocate($img, 255, 0, 0);
//書き込む座標
$x = 50;
$y = 50;
//文字サイズ
$size = 20;
//角度
$r = 0;
//フォントファイルへのパス
$font = "C:/WINDOWS/Fonts/MSGOTHIC.TTC";
//画像に文字列を書き込む
$string = "文字列を書き込む";
$string = mb_convert_encoding($string, "UTF-8", "SJIS");
imagettftext($img, $size, $r, $x, $y, $textcol, $font, $string);
//画像を出力
imagejpeg($img);
?>
**************************
MSゴシックのファイルパスはこのように設定しています。
C:/WINDOWS/Fonts/MSGOTHIC.TTC
エラーっぽいような文字化け画面になってしまいます。
質問1>>上記のような症状を解決するには?
質問2>>上記のことを解決したうえで、
//画像を出力
imagejpeg($img);
の部分をなくして、
//画像をファイルへ保存
??????
へ変更するにはどのようにすればいいですか?
お礼
ご丁寧に有難うございました。 参考にさせていただきます。