je moet ff kijken naar de functie
http://www.php.net/getimagesize/
hiermee kun je de hoogte en breedte van een plaatje herkennen..
als je dan checked of hij groter is dan 620 pixels, dat hij hem dan een vaste breede van 620 pixels geeft..
wat je daarna ook nog kan doen om het mooier te maken, is het verschil tussen het orrigineel en de 620 pixels berekenen..
het verschil trek je dan vervolgens ook af van de hoogte, zodat het plaatje niet vervormd.. succes :)
Link gekopieerd
?
Onbekende gebruiker
06-08-2004 09:42
ik kom met dat hoogte en breedte niet echt uit, het vervormd nu, zou je ff een voorbeeld daarvan willen geven?
Link gekopieerd
<?
$plaatje = "plaatje.gif";
$size = getimagesize($plaatje);
if ($size['0'] > 620)
{
$width = 620;
$verschil = $size['0'] - 620;
$height = $size['1'] - $verschil;
}
else
{
$width = $size['0'];
$height = $size['1'];
}
echo "<img src=\"" . $plaatje . "\" width=\"" . $width . "\" height=\"" . $height . "\" />";
?>
Link gekopieerd
?
Onbekende gebruiker
06-08-2004 16:36
nu vervormen mijn plaatjes helemaal, ik moet toch met een verhouding werken?
Link gekopieerd
ja moeje ff voor rekenen.. en zo zou het moeten werken.. misschien heb ik $size['0'] en $size['1'] met elkaar verward..
ik ga hiervan uit dat size[0] width is en size[1] height :)
check
www.php.net/getimagesize
Link gekopieerd
Nope is hoogte X breedte.
Je kunt bij het verkleinen de verkleiningsfactor berekenen
bijv: vaste hoogte = 250
hoogte plaatje = 500
breedte = breedte / (hoogte / vaste hoogte)
Link gekopieerd
?
Onbekende gebruiker
06-08-2004 17:27
ja maar het is een gastenboek duz weet je niets van het plaatje af
Link gekopieerd
D
Dbr Br
06-08-2004 18:16
gewijzigd op 06-08-2004 18:44
Dan moet je eerst het hele bericht van de site opsplitsen zoals dit:
<?php
$bericht = "texttexttext <img src="bestand.gif"> textextetxtetststa";
$chunks = explode("<img src=\"", $bericht);
$bit = explode("\"", $chunks[1]);
$picture = $graph[0];
$size = getimagesize($picture);
if ($size['1'] > 620)
{
$width = 620;
$verkleining = $size['1'] / 620;
$height = $size['0'] / $verkleining;
}
else
{
$width = $size['1'];
$height = $size['0'];
}
echo "<img src=\"" . $plaatje . "\" width=\"" . $width . "\" height=\"" . $height . "\" />";
?>
Er zal beslist een makkelijkere manier zijn om dit te doen maar voor zover weet ik alleen deze..
Link gekopieerd
?
Onbekende gebruiker
07-08-2004 10:26
ok, ik heb van dit script een functie gemaakt en probeer hem in te bouwen in:
<?
$naam = preg_replace("#\[img\](.*?)\[/img\]#si","<img src=\"\\1\">", $naam);
?>
De functie ziet er zo uit:
<?
function imgcontrole($plaatje) {
$size = getimagesize($plaatje);
if ($size['0'] > 620) {
$width = 620;
$verschil = ($size['1'] / $size['0']) * 620;
$height = $verschil;
} else {
$width = $size['0'];
$height = $size['1'];
}
$uitvoer = "width=\"" . $width . "\"
height=\"" . $height . "\" ";
return($uitvoer);
}
?>
Als ik het probeer in te bouwen krijg ik de volgende error:
Warning: getimagesize: Unable to open '\1' for reading. in
, weet iemand wat het probleem is?
Link gekopieerd