- phpeter
- Groep: Forumleden
- Posts: 10
- Actief sinds: 15-12-2006
Ik heb een class gemaakt die kijkt wat voor plaatje het is (jpeg, png etc.) vervolgens resize ik het plaatje met een bepaald percentage. En daarna output ik het plaatje zonder het op te slaan. Dit werkt perfect.
Maar wanneer ik het een tweede keer op de zelfde pagina probeer laat hij alleen nog steeds maar alleen plaatje 1 zien.
Of als ik het plaatje in een tabel zet ook dan zie ik alleen het plaatje het tabel wordt niet ge-echot.
Wat kan ik hier aan doen?? Hoe kan ik er voor zorgen dat het wel goed werkt. btw ik ben nieuw met classes en wil meteen van af het begin netjes proberen te werken dus opmerking/tips zijn altijd welkom.
Maar wanneer ik het een tweede keer op de zelfde pagina probeer laat hij alleen nog steeds maar alleen plaatje 1 zien.
Of als ik het plaatje in een tabel zet ook dan zie ik alleen het plaatje het tabel wordt niet ge-echot.
Wat kan ik hier aan doen?? Hoe kan ik er voor zorgen dat het wel goed werkt. btw ik ben nieuw met classes en wil meteen van af het begin netjes proberen te werken dus opmerking/tips zijn altijd welkom.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | <?php
class SimpleImage {
var $image;
var $image_type;
var $orgWidth;
var $orgHeight;
function __construct($filename) {
$image_info = getimagesize($filename);
$this->image_type = $image_info[2];
if( $this->image_type == IMAGETYPE_JPEG ) {
$this->image = imagecreatefromjpeg($filename);
} elseif( $this->image_type == IMAGETYPE_GIF ) {
$this->image = imagecreatefromgif($filename);
} elseif( $this->image_type == IMAGETYPE_PNG ) {
$this->image = imagecreatefrompng($filename);
}
}
function output() {
imagejpeg($this->image);
}
function scale($scale) {
$this->orgWidth = imagesx($this->image);
$this->orgHeight = imagesy($this->image);
$width = $this->orgWidth * $scale/100;
$height = $this->orgHeight * $scale/100;
$this->resize($width,$height);
}
function resize($width,$height) {
$new_image = imagecreatetruecolor($width, $height);
imagecopyresampled($new_image, $this->image, 0, 0, 0, 0, $width, $height, $this->orgWidth, $this->orgHeight);
$this->image = $new_image;
}
}
$image = new SimpleImage('http://smbjorklund.no/sites/smbjorklund.no/files/pictures/1/apple_mac_os_x_10.5_leopard_1024x768_1.jpg');
$image->scale(50);
$image->output();
unset ($image);
// tweede plaatje, deze doet het niet
$image1 = new SimpleImage('http://smbjorklund.no/sites/smbjorklund.no/files/pictures/1/snow-leopard1.jpg');
$image1->scale(50);
$image1->output();
unset ($image1);
?> |


