我正在尝试将以下HTML表格添加到图像中,然后将其作为.jpg文件下载,但它会给我$dir
中给出的白色图像。请查看并指导我缺少的内容或此代码的错误
$dir = "../images/white.jpg";
$text = "tableHTML";
imagettftext($dir, 20, 0, 10, 20, $text);
imagepng($dir);
//$name = './img/ok.png';
header('Pragma: public');
header('Cache-Control: public, no-cache');
header('Content-Type: application/octet-stream');
header('Content-Length: ' . filesize($dir));
header('Content-Disposition: attachment; filename="' . basename($dir) . '"');
header('Content-Transfer-Encoding: binary');
readfile($dir);
输出image.jpg就像这样
Sr # | ID | Bar Code | Notes
1 | 1261 | |||||||| | Test
2 | 6781 | |||||||| | test
3 | 8895 | |||||||| | test
4 | 5578 | |||||||| | test
5 | 1123 | |||||||| | test
*测试数据
答案 0 :(得分:0)
你缺少一个参数。 遵循文档 - > http://php.net/manual/en/function.imagettftext.php
imagettftext(resource $ image,float $ size,float $ angle,int $ x,int $ y,int $ color,string $ fontfile,string $ text)
你正在使用
imagettftext((image)$ dir,(size)20,(angle)0,(x)10,(t)20,(color)$ text);
也许你错过了文字之前的颜色;)
答案 1 :(得分:0)
首先,你有一个jpg文件,你正在使用imagepng()
函数。
您的代码可能就像---
$file = 'images/white.jpg';
$text = "tableHTML";
header("Content-type: image/jpeg");
$file = ImageCreateFromJPEG($file);
$font = 'YOUR_FONT_FILE_PATH';
$black = ImageColorAllocate($file, 255, 255, 255);
Imagettftext($file, 20, 0, 10, 20, $black, $font, "text to write");
imagejpeg($file);