Bilder in Buchstaben umwandeln


Hier ist ein Skript, um ein bestehendes Bild in ein Bild aus Buchstaben (ASCII-Art) umzuwandeln, ein Beispiel dafür ist auf dieser Seite unter Verschiedenes zu sehen. Ich stelle das Skript zur freien Verfügung, solltet ihr es verwenden, würde ich mich über einen Link zu www.bimbel.de freuen. Nichts zu tun hat das Ganze im Übrigen mit der sogenannten 'ASCII-Art'.

Php-Code:

<?php 

function getcolor($px,$py,$img,$size
{
    
$get_color imagecolorat($img,$px,$py);
    
$color imagecolorsforindex($img,$get_color);
    
$red sprintf("%02x"$color["red"]);
    
$green sprintf("%02x"$color["green"]);
    
$blue sprintf("%02x"$color["blue"]);
    
$colorcode $red $green $blue;
    return 
$colorcode;
}

echo 
"
<form method='post' action='
$_SERVER[PHP_SELF]'>
<input type='text' name='input'></input>
<input type='submit' value='Umwandeln'></input>
</form>"
;

if (!empty(
$_POST['input']))  
{
    
$img imagecreatefromjpeg($_POST['input']);
    
$size getimagesize($_POST['input']);
    
$stepping ceil($size[0] / 120); // beeinflusst die maximale Breite an Buchstaben.

    
echo "<p style=\"font-size: 6pt;line-height: 3pt; font-family: monospace\">";
    for (
$i=0$i<$size[1]; $i += $stepping
        {
        for (
$j=0$j<$size[0]; $j += $stepping
            {
                
$colorcode getcolor($j,$i,$img,$size);
                echo 
"<span style=\"color: #$colorcode;\">O</span>";
            }
        echo 
"<br />";
        }

    echo 
"</p>";
}
?>


Eine weitere Möglichkeit ist es, anstatt Farben verschiedene Buchstaben zu verwenden, diese werden anhand eines Schwellenwertes eingestellt, wie dies aussehen könnte, ist auch unter Verschiedenes zu sehen. Im dargestellten Skript wird das Bild mittels "0" und "1" ausgegeben.

Php-Code:

<?php 

function getcolor($px,$py,$img,$size
{
    
$get_color imagecolorat($img,$px,$py);
    
$color imagecolorsforindex($img,$get_color);
    
    
$red $color["red"];
    
$green $color["green"];
    
$blue $color["blue"];
    
$helligkeit = ($red $green $blue)/3;
    if (
$helligkeit <= 100$zeichen "0";
    if (
$helligkeit 100$zeichen "1";
    return 
$zeichen;
}


echo 
"<form method='post' action='$PHP_SELF'>
<input type='text' name='input'></input>
<input type='submit' value='Umwandeln'></input>
</form>"
;

if (!empty(
$_POST['input']))  
{
    
$img imagecreatefromjpeg($_POST['input']);
    
$size getimagesize($_POST['input']);

    
$stepping ceil($size[0] / 60);

    echo 
"<font style=\"font-size: 10pt;line-height: 5pt; font-family: monospace\">";
    for (
$i=0$i<$size[1]; $i += $stepping
    {
        for (
$j=0$j<$size[0]; $j += $stepping
        {
            
$zeichen getcolor($j,$i,$img,$size);
            echo 
$zeichen;
        }
        echo 
"<br>";
    }
    echo 
"</font>";
}
?>

Weitere Informationen kann man sich in folgendem Buch holen, das liegt bei mir auch immer griffbereit zur Referenz an der Seite:
PHP 5 / MySQL 4 Studienhandbuch

Kommentare

Sie haben Fragen oder Anregungen zu diesem Artikel? Nutzen sie doch die Kommentarfunktion:






[ Zurück zur Übersicht ]
Stichworte: buchstabenbild, Bustaben bilder, bilder aus buchstaben, bilder mit buchstaben, buchstaben bilder, bild aus buchstaben, bustaben, bilder aus buchstaben und zeichen, bilder in buchstaben umwandeln, bilder in zeichen umwandeln, buchstabenbilder, bild in buchstaben umwandeln, bilder aus bustaben, bild mit Buchstaben, bustaben zeichen
bimbel.de