実現したいこと
●OS:Fedora release 37 (Thirty Seven)
●言語:PHP 7.3.6 (cli) (built: Jan 29 2024 11:18:18) ( ZTS )
Copyright (c) 1997-2018 The PHP Group Zend Engine v3.3.6, Copyright (c) 1998-2018 Zend Technologies
●実現したいこと
JpGraphでグラフを描画する際にタイトルなどのテキストに日本語書体を使って文字化けせずに表示させたいですので対策などがあればお教えいただければ、幸いです。皆様よろしくお願いいたします
●現状の問題
JpGraphでグラフを描画する際にタイトルなどのテキストに日本語書体を使うと文字化けしてしまう
以下URLに再現手順を記載いたしました
https://chie.ddns.net/publish/L1i4sKO2W41712174003660db3b3abc5c.html
発生している問題・分からないこと
●現状の問題
JpGraphでグラフを描画する際にタイトルなどのテキストに日本語書体を使うと文字化けしてしまう
該当のソースコード
// ************************************************************ // 棒グラフを描画するソースコードサンプル // OSは、linuxなのでエンコードは、utf-8に指定した // ************************************************************ <?php // content="text/plain; charset=utf-8" header('Content-Type: text/html; charset=utf-8'); require_once ('/opt/httpd/httpd-2.4.38/htdocs/jpgraph-4.4.2/src/jpgraph.php'); require_once ('/opt/httpd/httpd-2.4.38/htdocs/jpgraph-4.4.2/src/jpgraph_bar.php'); $datay1=array(13,8,19,7,17,6); $datay2=array(4,5,2,7,5,25); // Create the graph. $graph = new Graph(350,250); $graph->SetScale('textlin'); $graph->SetMarginColor('white'); ob_end_clean(); // 出力バッファを無効 mb_http_output("pass"); // データをそのまま出力する // タイトルは、'UTF-8'を指定 $graph->title->SetFont(FF_MINCHO,FS_NORMAL,20); $graph->title->Set(mb_convert_encoding('タイトル', 'UTF-8', 'auto')); // Create the first bar $bplot = new BarPlot($datay1); $bplot->SetFillGradient('AntiqueWhite2','AntiqueWhite4:0.8',GRAD_VERT); $bplot->SetColor('darkred'); // Create the second bar $bplot2 = new BarPlot($datay2); $bplot2->SetFillGradient('olivedrab1','olivedrab4',GRAD_VERT); $bplot2->SetColor('darkgreen'); // And join them in an accumulated bar $accbplot = new AccBarPlot(array($bplot,$bplot2)); $accbplot->SetColor('red'); $accbplot->SetWeight(1); $graph->Add($accbplot); $graph->Stroke(); ?>
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
調べてみましたが解決方法が見つかりませんでした
補足
https://chie.ddns.net/
まったくの初心者のわたくしの作成したサイトを更新中です