回答編集履歴
1
実行結果を追記しました
answer
CHANGED
@@ -1,3 +1,35 @@
|
|
1
1
|
直接の回答ではありませんが、imagettftextで必要なFreeTypeを有効にしてPHPをビルドしてphpinfoを表示したところ、下記の赤枠で囲った部分が表示されます。phpinfoを確認してみることをお勧めします。
|
2
2
|
|
3
|
-

|
3
|
+

|
4
|
+
|
5
|
+
---
|
6
|
+
(追記)
|
7
|
+
|
8
|
+
PHP-8.0.0にFreeTypeを追加した環境で、下記のプログラムを実行したところ正常に動きました。環境依存ではあるでしょうが、フォントを絶対パスで指定してみたらどうでしょうか。
|
9
|
+
|
10
|
+
```PHP
|
11
|
+
<?php
|
12
|
+
header("Content-type: image/png");
|
13
|
+
|
14
|
+
$width = 600;
|
15
|
+
$height = 200;
|
16
|
+
|
17
|
+
$img = imagecreatetruecolor($width, $height);
|
18
|
+
$blue = imagecolorallocate($img, 200, 200, 255);
|
19
|
+
imagefilledrectangle($img, 0, 0, $width-1, $height-1, $blue);
|
20
|
+
|
21
|
+
$x = 100;
|
22
|
+
$y = 100;
|
23
|
+
$text = "愛されて豊穣の日本語フォント";
|
24
|
+
|
25
|
+
// $font = "fonts/mplus-1mn-bold.ttf";//この部分
|
26
|
+
$font = "/usr/share/fonts/opentype/ipafont-gothic/ipag.ttf"; // IPAフォントを絶対パスで指定
|
27
|
+
$black = imagecolorallocate($img, 0, 0, 0);
|
28
|
+
imagettftext($img, 20, 0, $x, $y, $black, $font, $text);
|
29
|
+
|
30
|
+
imagepng($img);
|
31
|
+
imagedestroy($img);
|
32
|
+
```
|
33
|
+
|
34
|
+
実行結果
|
35
|
+

|