Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Brauche kleine Hilfestellung bei PHP image() [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
brauche Webseite ideal für Vereine und Firmen
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Brauche kleine Hilfestellung bei PHP image()


 
moreplz
13-04-2011, 11:50 
 
Hallo zusammen. Ich habe das Vorhaben 2 Bilder untereinander anzureihen.

Um es kurz zu verdeutlichen: aus..

[A] (a.jpg) und [B] (b.jpg) soll..

[A]
[B]

..ein Bild test.jpg werden. Nun hab ich nach langem selbstversuch aufgegeben und doch Google zur Hilfe gezogen und hab folgende Funktion gefunden:

<?php
function merge_images($images, $path) {
$width = 0;
$height = 0;
$gd_ressources = array();
foreach($images as $image) {
$tmp = array();
$error = false;
if(!file_exists($image) || !is_file($image)) {
trigger_error('The image file ' . $image . ' does not exist', E_USER_WARNING);
continue;
}
$size = @getimagesize($image);
if(!is_array($size) || $size[2] == 4) {
trigger_error('The file ' . $image . ' seems not to be a valid image', E_USER_WARNING);
continue;
}
$tmp['width'] = $size[0];
$tmp['height'] = $size[1];
switch($size[2]) {
case 1:
$tmp['gd'] = imagecreatefromgif($image);
break;
case 2:
$tmp['gd'] = imagecreatefromjpeg($image);
break;
case 3:
$tmp['gd'] = imagecreatefrompng($image);
break;
}
$width += $size[0];
$height = max($size[1], $height);
$gd_ressources[] = $tmp;
}
$dst_image = imagecreatetruecolor($width, $height);
$x = 0;
foreach($gd_ressources as $gd) {
imagecopy($dst_image, $gd['gd'], $x, 0, 0, 0, $gd['width'], $gd['height']);
$x += $gd['width'];
}
imagejpeg($dst_image, $path);
}



$images = array('b.jpg', 'p.jpg');
merge_images($images, 'test.jpg')
?>

Allerdings stellt diese die Bilder nebeneinander [A][B] (test.jpg), was ja nicht so ganz das ist was ich möchte.. :)

Kann mir jemand erklären wie ich das zu ändern habe, dass es geht? Bin eher ein PHP-Neulign und kenne mich bisher nur mit Basics aus udn das übertrift mein "Können"..

Wäre sehr nett, wenn mir dabei jemand helfen könne.


LG
moreplz

 
TobiaZ
13-04-2011, 12:17 
 
Guck dir mal die Parameter von imagecopy genau an. Auch welche Werte du übergibst.


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:40 Uhr.