Невозможно создать (полу) прозрачное изображение PNG, которое будет размытым независимо от того, что оно перекрывает. Это просто невозможно сделать. Если вам действительно нужен динамический веб-сайт, чтобы вы могли легко изменить текст, я бы порекомендовал использовать скрипт PHP, как показано ниже, чтобы размыть изображение. Это идет отсюда. Вы можете использовать другой скрипт PHP для генерации текстового изображения.
Результат:
<?php
function blur (&$image) {
$imagex = imagesx($image);
$imagey = imagesy($image);
$dist = 2;
for ($x = 0; $x < $imagex; ++$x) {
for ($y = 0; $y < $imagey; ++$y) {
$newr = 0;
$newg = 0;
$newb = 0;
$colours = array();
$thiscol = imagecolorat($image, $x, $y);
for ($k = $x - $dist; $k <= $x + $dist; ++$k) {
for ($l = $y - $dist; $l <= $y + $dist; ++$l) {
if ($k < 0) { $colours[] = $thiscol; continue; }
if ($k >= $imagex) { $colours[] = $thiscol; continue; }
if ($l < 0) { $colours[] = $thiscol; continue; }
if ($l >= $imagey) { $colours[] = $thiscol; continue; }
$colours[] = imagecolorat($image, $k, $l);
}
}
foreach($colours as $colour) {
$newr += ($colour >> 16) & 0xFF;
$newg += ($colour >> 8) & 0xFF;
$newb += $colour & 0xFF;
}
$numelements = count($colours);
$newr /= $numelements;
$newg /= $numelements;
$newb /= $numelements;
$newcol = imagecolorallocate($image, $newr, $newg, $newb);
imagesetpixel($image, $x, $y, $newcol);
}
}
}
echo "Image before blurring: <img src=\"blurimg.jpg\" /><br /><br />";
$im = imagecreatefromjpeg("blurimg.jpg");
blur($im);
imagejpeg($im, "blurimg2.jpg");
echo "Image blurred: <img src=\"blurimg2.jpg\" /><br />";
imagedestroy($im);
?>