HTML не правильно разбирается при создании образа в php
Мне нужно создать журнал, получив несколько записей с точным контуром изображений. Сортируйте все записи в строке и теперь хотите создать файл JPG или PNG с выходом этой строки.
Я использовал этот код.
//set size of image
$pic = @imagecreatetruecolor(2835, 3898);
//setting text color
$text_color = imagecolorallocate($pic, 0, 0, 0); //black color
//setting bg color
$bgColor = imagecolorallocate($pic, 255,255,255); //white color
imagefill($pic , 0,0 , $bgColor);
//setting text with text color
imagestring($pic, 1, 5, 5, $output, $text_color);
//generating JPG
Imagepng($pic,$path."01.jpg");
//clearing image cache
ImageDestroy($pic);
Здесь $output - это имя строки.
Он отображает html-код выходных значений, в то время как включенные изображения и фоны divs не отображаются.
Может ли кто-нибудь помочь мне в этом отношении.
заблаговременно
Я думаю, вам нужно установить заголовок, если вы хотите отобразить изображение или сделать его загружаемым.
set
header("Pragma: public"); // required
header("Content-Type: image/png");
header("Content-Disposition: attachment; filename=\"image.jpg;" );
header("Content-Transfer-Encoding: binary");
перед отображением изображения
от php.net
imagestring() не анализирует HTML
см. http://ca2.php.net/manual/en/function.imagestring.php
Самое близкое, что я могу себе представить, - это использовать библиотеку HTML2PDF для создания PDF файла, а затем использовать инструмент PDF2TIFF для его растеризации, а затем преобразовать TIFF в любой формат изображения, который вы хотите на самом деле выводить.
Или, может быть, вы можете использовать phpGTK/GTKWebKit, чтобы напрямую растрировать его. В основном вы бы написали небольшой браузер в PHP.