如何在imagestring(PHP中的文本到图像)中添加换行符(<br/>)

时间:2018-05-21 10:08:43

标签: php

我正在创建一张名片。因此,我创建了视图以获取用户输入,例如姓名,电子邮件,网络。当有人将这些数据输入视图时,所有数据都将显示为图像。现在我得到所有的一行。但是,我需要这样的单独行中的姓名,电子邮件和网络,

我该如何解决这个问题?

  

名称

     

电子邮件

     

网络

这是PHP代码。

<?php

if(isset($_GET['submit'])){

$name = $_GET['name'];
$email = $_GET['email'];
$web = $_GET['web'];
$message = "<h1>$name</h1> <br> <h2>$email</h2> <br> <h3>$web</h3>";

$length = strlen($message) * 9.3;

$image = imagecreate($length,20);
$back = imagecolorallocate($image, 0,0,0);
$for = imagecolorallocate($image, 255,255,255);

imagestring($image,5,5,1,$message,$for);

header("Content-Type: image/jpeg");
imagejpeg($image);
}

?>

这是表格。

<form action="" method="" class="formsize">
Your Name : <input type="text" name="name" id="name" class="form-control"> <br><br>
Your Email : <input type="email" name="email" id="email" class="form-control"> <br><br>
Your Web Address : <input type="text" name="web" id="web" class="form-control"> <br><br>
<label>Upload Photo : </label>
<input type="file" class="form-control-file" name="file_img" aria-describedby="fileHelp"> <br><br>
<input type="submit" name="submit" value="Submit" class="btn btn-primary"> <br><br>
</form>

1 个答案:

答案 0 :(得分:1)

创建图片中有不行 单独 相反,你可以使用image_width:

$text = "Your Message";
$image_width = 200; // pixels
text_to_image($text, $image_width);

function text_to_image($text, $image_width, $colour = array(0,244,34), $background = array(0,0,0))
{
    $font = 5;
    $line_height = 15;
    $padding = 5;
    $text = wordwrap($text, ($image_width/10));
    $lines = explode("\n", $text);
    $image = imagecreate($image_width,((count($lines) * $line_height)) + ($padding * 2));
    $background = imagecolorallocate($image, $background[0], $background[1], $background[2]);
    $colour = imagecolorallocate($image,$colour[0],$colour[1],$colour[2]);
    imagefill($image, 0, 0, $background);
    $i = $padding;
    foreach($lines as $line){
        imagestring($image, $font, $padding, $i, trim($line), $colour);
        $i += $line_height;
    }
    header("Content-type: image/jpeg");
    imagejpeg($image);
    imagedestroy($image);
    exit;
}