Ben bir görüntü kütüphanesi ile ilgili bir sorun var. Ben sorunu biliyorum ama görüntüler hakkında çok az şey biliyor ve kimse kesin yanlış giden ne olduğunu bana söyleyebilir umuyordum düşünüyorum.
Ne yapmaya çalışıyorum bir. Png yeniden boyutlandırmak ve şeffaflığı korumak olduğunu. Ben yeniden boyutlandırmak ve bir. Png görüntü kaydetmek zaman saydamlığını kaybeder ve siyah olur.
Sorunun resize işlevinde imagecreatetruecolor
fonksiyonu olduğuna inanıyoruz. Belgelere bu siyah bir görüntü verir göstermektedir. Ben bu Sonra ben ne olduğunu sanmıyorum.
Birisi bir meraklı var ve sorun yeniden boyutlandırma fonksiyonu ile aslında yalan yapar ve nasıl bu sabit olmalıdır eğer bana söyler misiniz.
Teşekkürler.
class ResizeImage {
// Load Image
function load($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);
imagealphablending($this->image, true);
imagesavealpha($this->image, true);
}
}
// Resize the image
function resize($width,$height) {
$new_image = imagecreatetruecolor($width, $height);
imagecopyresampled($new_image, $this->image, 0, 0, 0, 0, $width, $height, $this->getWidth(), $this->getHeight());
$this->image = $new_image;
}
// Save the image
function save($filename, $image_type='', $compression=100, $permissions=null) {
if ($image_type != '') {
$this->image_type = $image_type;
}
if( $this->image_type == IMAGETYPE_JPEG ) {
imagejpeg($this->image,$filename,$compression);
} elseif( $this->image_type == IMAGETYPE_GIF ) {
imagegif($this->image,$filename);
} elseif( $this->image_type == IMAGETYPE_PNG ) {
imagepng($this->image,$filename);
}
if( $permissions != null) {
chmod($filename,$permissions);
}
}