Hallo,
Ik kom er even niet meer uit en het wordt al laat dus ik hoop via deze weg antwoord te kunnen krijgen op mijn vraag.
Ik heb (ondertussen 2 zelf gemaakt 4 gedownload) een image resize script die ervoor zorgt dat mijn plaatjes op de site een zelf instelbaar formaat krijgen (Dus een thumbnail). Nu wordt deze thumbnail niet opgeslagen maar teruggestuurd naar de browser.
Dit werkt zoals het werken moet alleen bij een .PNG afbeelding met transparante pixels geeft het script (alle) de afbeelding terug in een ander formaat (juist) maar de transparante pixels zijn niet meer transparant maar wit (Niet juist).
Ik zou dus graag willen weten hoe ik png afbeeldingen met tranparante pixels ook kan verkleinen en de transparantie kan behouden.
Heeft iemand voorbeeld code, weet iemand dit aan te passen in het onderstaand script (tevens mijn laatste download poging):
Alvast bedankt :)PHP Code:
<?php
header ("Content-type: image/png");
/*
JPEG / PNG Image Resizer
Parameters (passed via URL):
img = path / url of jpeg or png image file
percent = if this is defined, image is resized by it's
value in percent (i.e. 50 to divide by 50 percent)
w = image width
h = image height
constrain = if this is parameter is passed and w and h are set
to a size value then the size of the resulting image
is constrained by whichever dimension is smaller
Requires the PHP GD Extension
Outputs the resulting image in JPEG Format
By: Michael John G. Lopez - www.sydel.net
Filename : imgsize.php
*/
$img = $_GET['img'];
$percent = $_GET['percent'];
$constrain = $_GET['constrain'];
$w = $_GET['w'];
$h = $_GET['h'];
// get image size of img
$x = @getimagesize($img);
// image width
$sw = $x[0];
// image height
$sh = $x[1];
if ($percent > 0) {
// calculate resized height and width if percent is defined
$percent = $percent * 0.01;
$w = $sw * $percent;
$h = $sh * $percent;
} else {
if (isset ($w) AND !isset ($h)) {
// autocompute height if only width is set
$h = (100 / ($sw / $w)) * .01;
$h = @round ($sh * $h);
} elseif (isset ($h) AND !isset ($w)) {
// autocompute width if only height is set
$w = (100 / ($sh / $h)) * .01;
$w = @round ($sw * $w);
} elseif (isset ($h) AND isset ($w) AND isset ($constrain)) {
// get the smaller resulting image dimension if both height
// and width are set and $constrain is also set
$hx = (100 / ($sw / $w)) * .01;
$hx = @round ($sh * $hx);
$wx = (100 / ($sh / $h)) * .01;
$wx = @round ($sw * $wx);
if ($hx < $h) {
$h = (100 / ($sw / $w)) * .01;
$h = @round ($sh * $h);
} else {
$w = (100 / ($sh / $h)) * .01;
$w = @round ($sw * $w);
}
}
}
$im = @ImageCreateFromJPEG ($img) or // Read JPEG Image
$im = @ImageCreateFromPNG ($img) or // or PNG Image
$im = @ImageCreateFromGIF ($img) or // or GIF Image
$im = false; // If image is not JPEG, PNG, or GIF
if (!$im) {
// We get errors from PHP's ImageCreate functions...
// So let's echo back the contents of the actual image.
readfile ($img);
} else {
// Create the resized image destination
$thumb = @ImageCreateTrueColor ($w, $h);
// Copy from image source, resize it, and paste to image destination
@ImageCopyResampled ($thumb, $im, 0, 0, 0, 0, $w, $h, $sw, $sh);
// Output resized image
@imagepng($thumb);
}
?>
Aanvullend bericht:
Probleem inmiddels opgelost :-)
- PHP imageresize script probleem
-
06-11-2008, 18:57 #1
- Berichten
- 1.483
- Lid sinds
- 16 Jaar
PHP imageresize script probleem
Laatst aangepast door Arek van Schaijk : 08-11-2008 om 08:16 Reden: Automatisch samengevoegd.
-
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic