PHP + ImgMagick

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
devilx
Beiträge: 734
Registriert: 26.08.2003 22:57:20
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Filderstadt
Kontaktdaten:

PHP + ImgMagick

Beitrag von devilx » 05.08.2005 22:48:42

Hi,

Code: Alles auswählen

  $handle = imagick_readimage($screenshot_path);
	if(imagick_iserror($handle))
	{
		$reason      = imagick_failedreason( $handle ) ;
		$description = imagick_faileddescription( $handle ) ;
 
		echo "<h2>ImageMagick error: $reason<br/>$description</h2><br/>";
	}

	else
	{
		if(!imagick_resize($handle, 170, 130, IMAGICK_FILTER_UNKNOWN, 0 ))
		{
			$reason      = imagick_failedreason( $handle ) ;
			$description = imagick_faileddescription( $handle ) ;
 
			echo "<h2>ImageMagick error: $reason<br/>$description</h2><br/>";
		}
		else
		{
			if(!imagick_writeimage($handle,$screenshot_path))
			{
				$reason      = imagick_failedreason( $handle ) ;
				$description = imagick_faileddescription( $handle ) ;
 
				echo "<h2>ImageMagick error: $reason<br/>$description</h2><br/>";
			}
			else
			{
				echo "<h2>ImageMagick done.</h2><br/>";
			}
		}
	}
Ergibt:

Code: Alles auswählen

Warning: imagick_iserror() expects parameter 1 to be resource, boolean given in /apache2/my/gdesklets/modules/project/releases.module on line 130
Warning: imagick_resize() expects parameter 1 to be resource, boolean given in /apache2/my/gdesklets/modules/project/releases.module on line 139
Warning: imagick_failedreason() expects parameter 1 to be resource, boolean given in /apache2/my/gdesklets/modules/project/releases.module on line 141
Warning: imagick_faileddescription() expects parameter 1 to be resource, boolean given in /apache2/my/gdesklets/modules/project/releases.module on line 142
Kann mir jmd. evtl. sagen, was an dem Code falsch ist?
Thx in advance.

//edit: Was die Warnings bedeuten weiss ich btw auch. $handle scheint ein true/false zu enthalten und nicht das, was die imagemagick-function erwartet hat. Wieso aber enthaelt $handle das? Der Pfad ist correct, er weisst auf /apache_root/site/bla/images/blupp.jpg.

Bye
When you smile, the world smiles with you :)
When you fart, you stand alone :(
... a place full of dorkness

Benutzeravatar
Silke
Beiträge: 559
Registriert: 17.05.2005 15:58:20
Wohnort: Hannover
Kontaktdaten:

Beitrag von Silke » 06.08.2005 17:28:00

Moin,

wenn imagick_readimage(image) image nicht lesen kann, gibt es false zurueck, und
das ist boolean. Ich tippe also, dass $screenshot_path doch der falsche Pfad ist
(vielleicht wird apache_root/ als Rootverzeichnis angenommen, dann muesste es

Code: Alles auswählen

/site/bla/images/blupp.jpg
sein, oder mal mit relativem Pfad versuchen - oder blupp.jpg ist nicht lesbar) ... sagt das
Apache-Errorlog irgendwas dazu?

Gruss,
- Silke -
Der Vorteil der Klugheit liegt darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.
- Kurt Tucholsky -

Antworten