header ("Content-type: image/jpeg");
//Buchstaben
//A 1
$bchst[1][0]="0110";
$bchst[1][1]="1001";
$bchst[1][2]="1111";
$bchst[1][3]="1001";
$bchst[1][4]="1001";
//c 3
$bchst[3][0]="0111";
$bchst[3][1]="1000";
$bchst[3][2]="1000";
$bchst[3][3]="1000";
$bchst[3][4]="0111";
//d 4
$bchst[4][0]="1110";
$bchst[4][1]="1001";
$bchst[4][2]="1001";
$bchst[4][3]="1001";
$bchst[4][4]="1110";
//e 5
$bchst[5][0]="0111";
$bchst[5][1]="1000";
$bchst[5][2]="1111";
$bchst[5][3]="1000";
$bchst[5][4]="0111";
//f 6
$bchst[6][0]="0111";
$bchst[6][1]="1000";
$bchst[6][2]="1111";
$bchst[6][3]="1000";
$bchst[6][4]="1000";
//g 7
$bchst[7][0]="0111";
$bchst[7][1]="1000";
$bchst[7][2]="1011";
$bchst[7][3]="1001";
$bchst[7][4]="0111";
//h 8
$bchst[8][0]="1001";
$bchst[8][1]="1001";
$bchst[8][2]="1111";
$bchst[8][3]="1001";
$bchst[8][4]="1001";
//i 9
$bchst[9][0]="111";
$bchst[9][1]="010";
$bchst[9][2]="010";
$bchst[9][3]="010";
$bchst[9][4]="111";
//j 10
$bchst[10][0]="0111";
$bchst[10][1]="0001";
$bchst[10][2]="0001";
$bchst[10][3]="0001";
$bchst[10][4]="1110";
//k11
//l12
//m13
//n 14
$bchst[14][0]="10001";
$bchst[14][1]="11001";
$bchst[14][2]="10101";
$bchst[14][3]="10011";
$bchst[14][4]="10001";
//o 15
$bchst[15][0]="0110";
$bchst[15][1]="1001";
$bchst[15][2]="1001";
$bchst[15][3]="1001";
$bchst[15][4]="0110";
//p 16
//q 17
//r 18
$bchst[18][0]="1110";
$bchst[18][1]="1001";
$bchst[18][2]="1110";
$bchst[18][3]="1001";
$bchst[18][4]="1001";
//s 19
$bchst[19][0]="0111";
$bchst[19][1]="1000";
$bchst[19][2]="0110";
$bchst[19][3]="0001";
$bchst[19][4]="1110";
//t 20
$bchst[20][0]="11111";
$bchst[20][1]="00100";
$bchst[20][2]="00100";
$bchst[20][3]="00100";
$bchst[20][4]="00100";
//u 21
$bchst[21][0]="1001";
$bchst[21][1]="1001";
$bchst[21][2]="1001";
$bchst[21][3]="1001";
$bchst[21][4]="0110";
//0 30
$bchst[30][0]="0110";
$bchst[30][1]="1001";
$bchst[30][2]="1001";
$bchst[30][3]="1001";
$bchst[30][4]="0110";
//1 31
$bchst[31][0]="010";
$bchst[31][1]="110";
$bchst[31][2]="010";
$bchst[31][3]="010";
$bchst[31][4]="111";
//2 32
$bchst[32][0]="1110";
$bchst[32][1]="0001";
$bchst[32][2]="0110";
$bchst[32][3]="1000";
$bchst[32][4]="1111";
//3 33
$bchst[33][0]="1110";
$bchst[33][1]="0001";
$bchst[33][2]="1110";
$bchst[33][3]="0001";
$bchst[33][4]="1110";
//4 34
$bchst[34][0]="00110";
$bchst[34][1]="01010";
$bchst[34][2]="11111";
$bchst[34][3]="00010";
$bchst[34][4]="00010";
//buchstabenfeld
$wobuch[1][1]=0;
$wobuch[2][1]=0;
$wobuch[3][1]=6; //f
$wobuch[4][1]=18; //r
$wobuch[5][1]=15; //o
$wobuch[6][1]=8; //h
$wobuch[7][1]=5; //e
$wobuch[1][2]=0;
$wobuch[2][2]=6; //f
$wobuch[3][2]=5; //e
$wobuch[4][2]=19; //s
$wobuch[5][2]=20; //t
$wobuch[6][2]=20; //t
$wobuch[7][2]=1; //a
$wobuch[1][3]=7; //g
$wobuch[2][3]=5; //e
$wobuch[3][3]=0;
$wobuch[4][3]=32; //2
$wobuch[5][3]=30; //0
$wobuch[6][3]=31; //1
$wobuch[7][3]=33; //3
$wobuch[1][4]=0;
$wobuch[2][4]=0;
$wobuch[3][4]=0;
$wobuch[4][4]=0;
$wobuch[5][4]=5; //E
$wobuch[6][4]=9; //i
$wobuch[7][4]=14; //n
$wobuch[1][5]=7; //g
$wobuch[2][5]=21; //u
$wobuch[3][5]=20; //t
$wobuch[4][5]=5; //e
$wobuch[5][5]=19; //s
$wobuch[6][5]=0;
$wobuch[7][5]=14; //n
$wobuch[1][6]=5; //e
$wobuch[2][6]=21; //u
$wobuch[3][6]=5; //e
$wobuch[4][6]=19; //s
$wobuch[5][6]=0;
$wobuch[6][6]=10; //J
$wobuch[7][6]=1; //a
$wobuch[1][7]=8; //h
$wobuch[2][7]=18; //r
$wobuch[3][7]=0;
$wobuch[4][7]=32; //2
$wobuch[5][7]=30; //0
$wobuch[6][7]=31; //1
$wobuch[7][7]=34; //4
//echo "Farbliste
";
$aktfile = "/hsphere/local/home/umwelt/cug.umweltnetz.ch/bildchen/farb13/farbdaten.txt";
if (file_exists($aktfile))
{
if ($datei = fopen ($aktfile, "r"))
{
$xx=0;
while (!feof ($datei))
{
$zeile = fgetcsv ($datei, 100);
$xx=$xx+1;
$werte[$xx][0] = $zeile[0]; //filenam
$werte[$xx][1] = $zeile[1]; //1:dunkle schrift, 2: helle schrift
}
fclose ($datei);
$farbmax = $xx;
}
} else
{
echo "Datei $aktfile nicht vorhanden";
}
//echo $farbmax." Farben
";
//flush();
$hraster = 7;
$vraster = 7;
// auswahlarray füllen
for ($auswr=1;$auswr<=$farbmax;$auswr++) {
$auswrast[$auswr]=0;
} // ende auswahlraster füllen
// raster mit bildchennummer füllen
for ($mm=1;$mm<=$hraster;$mm++) {
for ($nn=1;$nn<=$vraster;$nn++) {
//noch nicht benutztes bildchen suchen
$bildsuch=0;
do {
$randfeld=mt_rand(1,$farbmax);
if ($auswrast[$randfeld] != 1) {
$bilddarst[$mm][$nn]=$randfeld;
$auswrast[$randfeld]=1;
$bildsuch=1;
}
} while ($bildsuch != 1);
//echo $werte[$bilddarst[$mm][$nn]][0]."
";
} //ende $nn
} //ende $mm
// ab hier grafik
//A4-Format
$bildh = 7*150;
$bildv = 7*150;
$image = imagecreatetruecolor($bildh, $bildv);
$bchenh=150;
$bchenv=150;
$fakth= $bildh/($bchenh*$hraster);
$faktv= $bildv/($bchenv*$vraster);
$bchh1 = ceil($bchenh*$fakth);
$bchv1 = ceil($bchenv*$faktv);
//echo "fakth faktv: ".$fakth." ".$faktv."
";
//echo "bchh1 bchv1: ".$bchh1." ".$bchv1."
";
for ($mm=1;$mm<=$hraster;$mm++) {
for ($nn=1;$nn<=$vraster;$nn++) {
$xpos = round(($mm-1) * $bchenh * $fakth);
$ypos = round(($nn-1) * $bchenv * $faktv);
$bildnam = "farb13/".$werte[$bilddarst[$mm][$nn]][0];
$imageo = imagecreatefromjpeg($bildnam);
imagecopyresized ($image, $imageo, $xpos, $ypos, 0, 0, $bchh1, $bchv1, $bchenh, $bchenv);
//echo $xpos." ".$ypos." ".$bchh1." ".$bchv1." ".$bchenh." ".$bchenv." ".$bildnam."
";
//buchstabe schreiben
$sabst=8;
if ($wobuch[$mm][$nn] != 0) {
$buchstakt=$wobuch[$mm][$nn];
for ($oo=0;$oo<=5;$oo++) {
for ($pp=0;$pp<=strlen($bchst[$buchstakt][$oo]);$pp++) {
$xposb = $xpos+12+$pp*$sabst;
$yposb = $ypos+12+$oo*$sabst;
//punkt ja/nein
$puakt=substr($bchst[$buchstakt][$oo],$pp,1);
//punkt darstellen
if ($puakt==1) {
$farbpunkt = imagecolorallocate($image, 85, 85, 85);
if ($werte[$bilddarst[$mm][$nn]][1] ==2) $farbpunkt = imagecolorallocate($image,220,220,220);
//echo $xpos."/".$ypos.": ".$scwrr[$pupu]." ".$scwgg[$pupu]." ".$scwbb[$pupu]."
";
imagefilledellipse ( $image , $xposb , $yposb , 1.2*$sabst, 1.2*$sabst , $farbpunkt );
}
} //for pp
} //end loop zeilen buchstabe
} //ende buchstaben
} //for nn
} //for mm
imagejpeg($image);
imagedestroy($image);
//echo "Schluss des Scripts
";
?>