#php #html #image #png
#php #HTML #изображение #png
Вопрос:
У меня есть таблица html.Я хочу преобразовать эту таблицу html в png и хочу отобразить ее на веб-странице с помощью PHP.
<table>
<tbody>
<tr>
<td>Day</td>
<td>Timing </td>
</tr>
<tr>
<td>
Sunday
</td>
<td>8:30-6:30</td>
</tr>
<!-- New -->
<tr>
<td>
Monday
</td>
<td>8:30-6:30</td>
</tr>
<!-- New -->
<tr>
<td>
Tuesday
</td>
<td>8:30-6:30</td>
</tr>
<!-- New -->
<tr>
<td>
Wednesday
</td>
<td>8:30-6:30</td>
</tr>
<!-- New -->
<tr>
<td>
Thursday
</td>
</tr>
<!-- New -->
<tr>
<td>
Friday
</td>
</tr>
<!-- New -->
<tr>
<td>
Saturday
</td>
<td>8:30-6:30</td>
</tr>
</tbody>
</table>
В настоящее время этот код отображает html-таблицу в webapge. Я хочу показывать только PNG этой веб-страницы, чтобы на веб-странице было только изображение, а не таблица html.
Я пробовал этот код, но он показывает только желтоватый
<?php
$out = "<table><tr><td>There will be data</td></tr></table>";
header('Content-type: image/png');
$png_image = imagecreate(50, 500);
$tcol = imagecolorallocate($png_image, 255, 255, 0);
imagestring($png_image, 4, 30, 25, $out, $tcol);
// echo $out;
imagepng($png_image);
imagedestroy($png_image);
?>
Комментарии:
1. что плохого в отображении HTML на веб-странице? в этом весь смысл HTML. Возможно, я что-то пропустил, но это кажется странным требованием.
2. В этом конкретном примере для этого может не быть веской причины, но могут быть случаи, когда это может быть полезно. Например. если вы не хотите, чтобы данные легко копировались, вставлялись и обрабатывались, или хотите показать динамическую таблицу вместо изображения в системе,и т.д.
Ответ №1:
Вы просто пытаетесь открыть этот файл напрямую? Или отобразить ее на веб-странице? Потому что тогда вы будете ссылаться на этот PHP-файл «как», это изображение с a <img src="table_image.php" />
на вашей веб-странице.
Кроме того, как в официальном примере (https://www.php.net/manual/en/function.imagecreate.php ), лучше всего включить некоторую обработку ошибок на случай, если у вас нет доступа к функции imagecreate на вашем сервере.
$png_image = @imagecreate(500, 300)
or die("Cannot Initialize new GD image stream");