Тема: Генератор HTML зображень
Коли разбирав взлом простих каптч,тоді виникла така ідея,хз,може комусь пригодиться..
Вказуємо шлях до зображення в мережі,зчитуємо колір кожного пікселя по вертикалі/горизонталі.
Отримуємо його колір в RGB і переводимо в HEX для вставки в тег <font>,де кожен піксель представлений в вигляді крапки.
Використано PHP + GD (для роботи з графікою),ну і верстка HTML,CSS
В сучасних версіях браузерів зображення має виглядати цілісним.. (в інших може бути трішки роздрібненим).
<?php
error_reporting(0);
if ($_GET['html_image']) {
$getImg = $_GET['html_image'];
$imgType = exif_imagetype($getImg);
if ($imgType == 1) $img = imagecreatefromgif($getImg);
elseif ($imgType == 2) $img = imagecreatefromjpeg($getImg);
elseif ($imgType == 3) $img = imagecreatefrompng($getImg);
elseif ($imgType == 6) $img = imagecreatefrombmp($getImg);
else exit('Невірний формат зображення!');
echo '<style>
*{
white-space: 0px;
letter-spacing: -3px;
}
br{
margin-top: 2px;
margin-bottom: -19px;
content: "";
display: block;
}
</style>
<br>';
$w_img = imagesx($img);
$h_img = imagesy($img);
for ($h = 1; $h < $h_img; ++$h) {
for ($w = 1; $w < $w_img; ++$w) {
$RGB = imagecolorat($img, $w, $h);
$R = ($RGB >> 16) & 0xFF;
$G = ($RGB >> 8) & 0xFF;
$B = $RGB & 0xFF;
$HEX = str_pad(dechex($R), 2, '0', STR_PAD_LEFT);
$HEX .= str_pad(dechex($G), 2, '0', STR_PAD_LEFT);
$HEX .= str_pad(dechex($B), 2, '0', STR_PAD_LEFT);
echo '<font color="#'.$HEX.'">.</font>';
}
echo '<br>';
}
}
else {
echo '<div><form action="?html_image">
<p>Адрес зображення:</p>
<p><input name="html_image"></p>
<p><input type="submit" value="Генерувати"></p>
</form></div>';
}