Bild skalieren

sagt er nicht. Der Text wird quasi als alternativ Text fürs Bild angezeigt (Bei Rechtsklickt auf den Text kommt "Grafik neu laden" etc.)
 
So siehts aus:
PHP:
header('Content-Type: image/jpeg');
$scale = GetImageSize ("Pics/test.jpg");
$breite = $scale[0];
$hoehe = $scale[1];

$neuehoehe = 50;
$neuebreite = floor($breite * ($neuehoehe / $hoehe));
$neuesbild = imagecreatetruecolor($neuebreite, $neuehoehe);
$image = imagecreatefromjpeg("Pics/test.jpg");
imagecopyresized($neuesbild, $image, 0, 0, 0, 0, $neuebreite, $neuehoehe, $breite, $hoehe);

$size = array(50,50);
$point = array(0,0);

$new = imagecreatetruecolor($size[0],$size[1]);
imagecopyresized($new, $neuesbild, 0,0, $point[0],$point[1],$size[0],$size[1], $size[0],$size[1]);

imagejpeg();

anzuschauen hier: http://patrickhieber.de/bild.php
 
Das ist wieder mal so ein Fall von Volle-Kanne-gegen-die-Wand-rennen-wollen: Woher soll denn die Funktion imagejpeg() wissen, was sie anzeigen soll? Du musst dort natürlich die Resource des anzuzeigenden Bildes angeben.

PHP:
# ... sonstiges Skript
imagejpeg($new);
 
ups ok :)
Plötzlich funktioniert es :D

Danke für die Hilfe

EDIT:
So, jetzt hab ich es gerade in eine normale Datei gesetzt (mit head und body Tags) und schon kommt wieder der Fehler, dass die Grafik Fehler enthält.

Mein Code:
PHP:
<?php header('Content-Type: image/jpeg'); ?>
<!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=utf-8" />
<title>Unbenanntes Dokument</title>
</head>

<body>
<?php
$scale = GetImageSize ("Pics/test.jpg");
$breite = $scale[0];
$hoehe = $scale[1];

$neuehoehe = 50;
$neuebreite = floor($breite * ($neuehoehe / $hoehe));
$neuesbild = imagecreatetruecolor($neuebreite, $neuehoehe);
$image = imagecreatefromjpeg("Pics/test.jpg");
imagecopyresized($neuesbild, $image, 0, 0, 0, 0, $neuebreite, $neuehoehe, $breite, $hoehe);

$size = array(50,50);
$point = array(0,0);

$new = imagecreatetruecolor($size[0],$size[1]);
imagecopyresized($new, $neuesbild, 0,0, $point[0],$point[1],$size[0],$size[1], $size[0],$size[1]);

imagejpeg($new);

?>
</body>
</html>
 
Zuletzt bearbeitet:
Du bereitest mir echt Kopfschmerzen: Warum mischst du bitte HTML und JPEG? Das geht nicht! Du kannst ein Bild in HTML einbinden und zwar mit dem IMAGE-Tag, aber du kannst nicht direkt ein Bild in HTML ausgeben. Mach's weg!
 
ah ok. Gibt es dann sonst irgendeine Möglichkeit, dass Bild auszugeben? Das ganze soll später mit PHP variabel sein. Es wird immer ein Bild aus einer Datenbank geholt und dieses soll angezeigt werden.
 
Entferne einfach alles, was HTML ist, und dann wird dir dein Bild wie gewünscht ausgegeben. Wenn du es in eine Webseite einbinden willst, dann binde es so ein, wie du jedes x-beliebige andere Bild in eine Webseite einbinden würdest, da es ein Bild ist!
 

Neue Beiträge

Zurück