画像を生成するための PHP スキルをトレーニングしています。うまくいかないことが1つだけ必要です。私が望む方法でそれが可能だとは思いませんが、別の方法があるはずです。私がすでに持っているコードはこれです:
<?php
$textSize = 10;
$text = addslashes("Wietse: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed malesuada aliquet dolor, vitae tristique lectus imperdiet nec. Pellentesque et.");
$maxWidth = 448;
//Create image
$im = imagecreate(468, 60);
// Black background and White text
$bg = imagecolorallocate($im, 0, 0, 0);
$textColor = imagecolorallocate($im, 255, 255, 255);
// Split in multiple lines
$words = explode(' ', $text);
$lines = array();
$line = "";
foreach ($words as $word) {
$box = imagettfbbox($textSize, 0, './arial.ttf', $line . $word);
$width = $box[4] - $box[0];
if($width > $maxWidth) {
$line = trim($line);
$line .= "\n";
}
$line .= $word . ' ';
}
// Write the text in the image
imagettftext($im, $textSize, 0, 10, $textSize + 10, $textColor, './arial.ttf', $line); // write text to image
// Output the image
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
?>
この画像は次のようになります。
正常に動作しますが、私の名前は Wietse で、Bold にする必要があります。簡単な方法でこれを行うことはできないと思いますが、可能であるべきです。Bold Arial フォントで別のフォントを追加できimagettftext()
ますが、Lorum ipsum テキストは名前の横から開始し、2 行目は名前と同じ X 座標に続く必要があります。今のように。あともう一つお願いがありますが、このテキストはどんな位置でもいいので難しすぎると思います。しかし、誰かがこれを行う方法を知っていれば、彼は素晴らしいです. これは、リンク ( http://www.google.com ) に下線が引かれていることです。これ以上の情報を伝える必要はないと思います。
わざとありがとう!