Hey allemaal,

Een .png wordt gemaakt met alle variabelen, daarna wil ik even checken of deze niet over een maximum grootte van 520 pixels gaat, en indien dat gebeurt, hem even hermaken:
<?
header("Content-Type: image/png");
imagePng($im);

$dimensions = getimagesize($im);
$bronbreedte = $dimensions[0];
$bronhoogte = $dimensions[1];

if($bronbreedte > 520) {
$tmp_img = imagecreatetruecolor(520, $bronhoogte);
imagecopyresampled($tmp_img, $im, 0, 0, 0, 0, 520, $bronhoogte, $bronbreedte, $bronhoogte);
header("Content-Type: image/png");
imagePng($im);

}

imageDestroy($im);
?>

Maar dit doet het helemaal niet.. Wat doe ik fout?

Grtz
Je maakt zelf een afbeelding en daarna wil je controleren of die afbeelding geschikt is. Vreemd.

getimagesize is, voor zover ik weet, enkel bedoeld voor files.

Waarom zou $im trouwens een breedte en hoogte hebben als je er nog niets mee gedaan hebt? Of komt er nog code voor die je ons niet toont?
Er komt nog code voor hoor, het probleem is dat die $im wordt bepaald door een breedte die dan weer bepaald wordt door variabelen.
Dus het kan zijn dat de ene keer een afbeelding groot is, een andere klein. Maar hij mag nooit een bepaalde breedte overschrijden, anders moet hij resized worden..
Toon anders eens hoe die breedte wordt bepaald, of waar het afhankelijk van is.
$gfx_width = $left_space + $bar_space + (($bar_width + $bar_space) * count($a));

$im = ImageCreate($gfx_width,$_config['gfxheight']);
Zo bij het eerste zicht zit er niets in $img.
Vervang regel 3 eens door $im = imagecreatefrompng("naam van je image.png");
Maar
<?
$gfx_width = $left_space + $bar_space + (($bar_width + $bar_space) * count($a));

$im = ImageCreate($gfx_width,$_config['gfxheight']);
?>
Komt ervoor, dus er zit wel degelijk iets in hoor..

<?
imagePng($im);
?>

maakt wel degelijk de afbeelding.. alleen zou ik een manier moeten vinden om de afbeelding die daar gemaakt wordt, niet over een breedte van 520 pixels gaat...

Reageren