---
title: "Skapa gif, png, jpg thumbs"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/147351-skapa-gif-png-jpg-thumbs"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "apaaa"
published: "2006-05-26T16:35:18.000Z"
updated: "2006-05-27T00:31:43.000Z"
replies: 5
views: 553
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/147351-skapa-gif-png-jpg-thumbs"
---

# Skapa gif, png, jpg thumbs

## #1 — apaaa, 2006-05-26T16:35Z

Hej, lite problem med mitt bild script.

För att skapa en jpg bild ser kör jag följande kod

```
	$dst_im = imagecreatetruecolor($dstW, $dstH); 
	imagecopyresampled ( $dst_im, $src_im, 0, 0, 0, 0, $dstW, $dstH, $srcW, $srcH);
	imagejpeg($dst_im, "Bilder/TEST/apa.$filetyp[1]", 90); 
	imagedestroy($src_im); 
	imagedestroy($dst_im);
```

Men hur gör jag för skapa png, gif bilder?
om jag bara byter ut imagejpeg till imagepng eller imagegif så blir bilderna helt svart, varför?

Antar att imagecopyresampled bara fungerar på jpg-bilder, vad skriver man istället för png och gif?

Mvh Anders.

Permalänk: https://www.webforum.nu/p/147351

## #2 — Fuel, 2006-05-26T16:42Z

du använder imageCreateFromPNG() och imagePNG() samt se till att du har libpng installerat

eller det kanske räcker med GD bara .. ?

Permalänk: https://www.webforum.nu/p/1820757

## #3 — apaaa, 2006-05-26T16:59Z

> **Fuel skrev:**
>
> du använder imageCreateFromPNG() och imagePNG() samt se till att du har libpng installerat
> 
> eller det kanske räcker med GD bara .. ?

Jo, så långt fungerar det men, om jag vill göra om storleken(x\*y) på den också?

Permalänk: https://www.webforum.nu/p/1820759

## #4 — Fuel, 2006-05-26T18:49Z

```php
$src_img=imagecreatefrompng($name);
// width & height från bilden
$old_w=imageSX($src_img);
$old_h=imageSY($src_img);
// Egna mått
$thumb_w="200";
$thumb_h="100";
$dst_img=ImageCreateTrueColor($thumb_w,$thumb_h);
imagecopyresampled($dst_img,$src_img,0,0,0,0,$thumb_w,$thumb_h,$old_w,$old_h);
```

Hoppas jag inte har tokfel .. det var ett tag sen..  :bire

**Edit:**  blir ett mellanslag i thumb_h

Permalänk: https://www.webforum.nu/p/1820767

## #5 — apaaa, 2006-05-26T19:20Z

> **Fuel skrev:**
>
> ```php
> $src_img=imagecreatefrompng($name);
> // width & height från bilden
> $old_w=imageSX($src_img);
> $old_h=imageSY($src_img);
> // Egna mått
> $thumb_w="200";
> $thumb_h="100";
> $dst_img=ImageCreateTrueColor($thumb_w,$thumb_h);
> imagecopyresampled($dst_img,$src_img,0,0,0,0,$thumb_w,$thumb_h,$old_w,$old_h);
> ```
>
> 
> Hoppas jag inte har tokfel .. det var ett tag sen..  :bire
> 
> **Edit:**  blir ett mellanslag i thumb_h

Så ser min kod ungfär, men bilderna blir hetl svarta, både för png och gif.

Min kompletta kod;

```php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>

<body>
<form id="form" name="form" enctype="multipart/form-data" method="post" action="test.php?do=apa">
  <input type="file" name="file" />
  <input type="submit" name="Knapp" value="Skicka" />
</form>
</body>
</html>
<?php
if($_REQUEST['do'] == "apa") {

$fileName = $_FILES['file']['name'];
$fileType = $_FILES['file']['type'];
$fileSize = $_FILES['file']['size'];
$fileTmpName = $_FILES['file']['tmp_name'];
$fileError = $_FILES['file']['error'];

$filetyp = split("/", $fileType);
$apa = "1.$filetyp[1]";
echo $filetyp[1];

if($fileName != ""){
if($fileError == 0){
$filePath = "D:/WWWROOT/Projekt/Bilder/Test/$apa";
move_uploaded_file($fileTmpName,$filePath);
}else{
die("ett fel uppstod vid uppladdningen.");
}
}

if($filetyp[1] == "jpg" or $filetyp[1] == "jpeg") {
 $src_im = imagecreatefromjpeg($filePath); 
 }
 elseif($filetyp[1] == "gif") {
  $src_im = imagecreatefromgif($filePath); 
 }
 elseif($filetyp[1] == "png") {
  $src_im = imagecreatefrompng($filePath);
 }
 $srcW = imagesx($src_im); 
 $srcH = imagesy($src_im); 
 $thumb = 300;
if($srcW < 300 and $srcH < 300) {
 	$dstW = $srcW;
	$dstH = $srcH;
	}
elseif($srcW > $srcH) {
	$ratio = $srcH / $srcW;
	$dstH = $thumb * $ratio;
	$dstW = $thumb;
	}
elseif($srcH > $srcW) {
	$ratio = $srcW / $srcH;
	$dstW = $thumb * $ratio;
	$dstH = $thumb;
	}
elseif($srcH == $srcW) {
	$dstW = $thumb;
	$dstH = $thumb;
	}
	echo "width $dstW <br> height $dstH<br>$ratio<br>$fileType";
	 
	$dst_im = imagecreatetruecolor($dstW, $dstH); 
	imagecopyresampled ( $dst_im, $src_im, 0, 0, 0, 0, $dstW, $dstH, $srcW, $srcH);
	imagepng($dst_im, "Bilder/TEST/apa.png"); 
	
	#imagejpeg($dst_im, "Bilder/TEST/apa.jpg");
	#imagegif($dst_im, "Bilder/TEST/apa.gif");  
	
	imagedestroy($src_im); 
	imagedestroy($dst_im);
	

	  }
?>
```

imagejpeg($dst_im, "Bilder/TEST/apa.png"); fungerar helt utmärkt men imagegif och png vill inte fungera.

Om jag försöker kopiera en gifbild eller en pngbild och spara som jpgbild eller dylikt så blir den också svart, varför?

Mvh Anders.

Permalänk: https://www.webforum.nu/p/1820774

## #6 — apaaa, 2006-05-27T00:31Z

Nu har jag fått ordning på det, på något sätt?

Måste varit någon med min phpinstall att göra, installerad om sedan fungerade det, efter att prövat olika saker i ca 8timmar :\\

Skam den som ger sig!

Permalänk: https://www.webforum.nu/p/1820840

---

Tråden på webben: https://www.webforum.nu/amne/php/147351-skapa-gif-png-jpg-thumbs
