Sirsin tämän viestin uuden aiheen alle, kun tuo ympyrän koko-juttu on jo ratkaistu.
Funktio ImageFilledArc tekee tuon isomman (200px) ympyrän vähän puhtaammin kuin ImageArc.
Tosin siinäkin jää ns. heikon kuvalaadun jälkiä.
<?php $file = "grafik12.jpg"; $width = 200; $height = 200; $x1=100; $y1=100; //tekstien koordinaatit $vx1=35; $yy1=55; $yy2=125; $ox1=120; $image = ImageCreate($width, $height); $color = ImageColorAllocate($image,255,255,230); // Tehdään ympyrälohkot $color1 = ImageColorAllocate($image,0,0,200); $color2 = ImageColorAllocate($image,190,40,20); $color3 = ImageColorAllocate($image,190,240,220); $color4 = ImageColorAllocate($image,255,255,255); for ($i = 1; $i <= $width; $i++) { ImageArc($image, $x1,$y1,0,0,0,360,$color); // // Taustaväri ImageFilledArc($image,$x1,$y1,$i,$i,270,360,$color1, IMG_ARC_PIE); // oikea yla ImageFilledArc($image,$x1,$y1,$i,$i,0,90,$color2, IMG_ARC_PIE); // oikea ala ImageFilledArc($image,$x1,$y1,$i,$i,90,180,$color3, IMG_ARC_PIE); // vasen ala ImageFilledArc($image,$x1,$y1,$i,$i,180,270,$color4, IMG_ARC_PIE); // vasen yla } // asetellaan tekstit imagestring($image, 5, $vx1, $yy1, "Yksi", $color1); imagestring($image, 5, $ox1, $yy1, "Kaksi", $color4); imagestring($image, 5, $vx1, $yy2, "Kolme", $color1); imagestring($image, 5, $ox1, $yy2, "Neljä", $color4); ImageJpeg($image, $file); ImageDestroy($image); echo "<img src=\"grafik12.jpg\">"; ?>
Tuossa tämän hetkinen koodi. Sellainen sivuseikka vielä, että teen näitä kuviota ihan opetellakseni php-grafiikkaa....
Lisäsin vasiten nuo tekstit, jotta näkyy, miten ne heikentää kuvan laatua.
Varsinainen kysymys onkin, millä "suodattimella" tuota kuvalaatua voisi tuosta parantaa?
Kun lisäät ImageJpeg($image, $file, 100); niin tuo tekee kuvan parhaalla laadulla. Normaalisti laatu on noin 75.
Tai sitten jos käytät png kuvia.
Thanks!
Aihe on jo aika vanha, joten et voi enää vastata siihen.