php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 11.07.2007, 17:10  
Erfahrener Benutzer
 
Benutzerbild von SvenLittkowski
 
Registriert seit: 05.09.2004
Beiträge: 578
SvenLittkowski zeigte ein beschämendes Verhalten in der Vergangenheit
Standard PHP: Image-Funktionen: CopyResized: Problem

Hallo Community,

ich habe erfolgreich ein Bild hochgeladen. Aus diesem (grossen) Bild will ich zwei kleinere generieren mit CopyResized. In der Tat generiere ich zwei huebsche Bildchen in der richtigen Groesse, jedoch bleiben sie weiss...

Ich will das gesamte Originalbild kopieren, und verkleinert (Breite 200 px und 150 px, Hoehen relativ dazu) in zwei kleineren Bildern ausgeben.

Woran liegt es?

Hier ist der Code.


PHP-Code:
 $MyNewPhoto="../v/Prom/".$MyStories."_".$MyPhoto.".jpg";
 
$MyNewPhoto200="../v/Prom/".$MyStories."_".$MyPhoto."_200.jpg";
 
$MyNewPhoto150="../v/Prom/".$MyStories."_".$MyPhoto."_150.jpg";

 
$Size=@getimagesize($MyNewPhoto);
 
$Width=$Size[0];
 
$Height=$Size[1];
     
 
$Faktor200=bcdiv($Size[0],200,0);
 
$Faktor150=bcdiv($Size[0],150,0);
     
 
$Bild200=imagecreate(bcdiv($Size[0],$Faktor200,0),bcdiv($Size[1],$Faktor200,0)); 
 
$Hintergrundfarbe=imagecolorallocate($Bild200,255,255,255); 
 
imagefill($Bild200,0,0,$Hintergrundfarbe);
 
imagecopyresized($MyNewPhoto,$Bild200,0,0,0,0,200,bcdiv($Size[1],$Faktor200,0),$Width,$Height);
 
imagejpeg($Bild200,$MyNewPhoto200,100); 

 
$Bild150=imagecreate(bcdiv($Size[0],$Faktor150,0),bcdiv($Size[1],$Faktor150,0)); 
 
$Hintergrundfarbe=imagecolorallocate($Bild150,255,255,255); 
 
imagefill($Bild150,0,0,$Hintergrundfarbe);
 
imagecopyresized($MyNewPhoto,$Bild150,0,0,0,0,200,bcdiv($Size[1],$Faktor150,0),$Width,$Height);
 
imagejpeg($Bild150,$MyNewPhoto150,100); 
Fuer mich sind diese speziellen Image-Funktionen noch immer sehr komplex und abstrakt. Wer kann helfen?
__________________

Vielen Dank für Eure Zeit, Absicht, Mühe und für Eure Ideen. Grüße,
Sven
SvenLittkowski ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 11.07.2007, 18:06  
CIX88
Gast
 
Beiträge: n/a
Standard

Schauen wir uns doch mal das genau an:
http://php.net/imagecopyresized

Zitat:
imagecopyresized ( resource $dst_im, resource $src_im, int
also in Deutsch:
imagecopyresized ( resource neues Bild, resource von alten Bild, int .....

Abgesehen von anderen Schönheitsfehlern.
 
Alt 11.07.2007, 18:28  
Erfahrener Benutzer
 
Benutzerbild von SvenLittkowski
 
Registriert seit: 05.09.2004
Beiträge: 578
SvenLittkowski zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Hmm..., danke, CIX88. Aber da steht auch nur das drin, was in meiner SelfPHP.chm drinsteht.

Ich will jedoch wissen, was ich falsch mache (konkret an meinem Code), da ich selbst beim Vergleichen mit der SelfPHP meinen Fehler nicht erkennen konnte. Manchmal sieht man halt den Wald vor lauter Baeumen nicht...

Wer kann helfen?
__________________

Vielen Dank für Eure Zeit, Absicht, Mühe und für Eure Ideen. Grüße,
Sven
SvenLittkowski ist offline  
Alt 11.07.2007, 18:50  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

CIX hat alles gesagt, was nötig wäre. Eine Ressource ist kein String. Schau Dir nochmal das Beispiel unter imagecopyresampled () an.
nikosch ist gerade online  
Alt 11.07.2007, 19:55  
CIX88
Gast
 
Beiträge: n/a
Standard

Zitat:
was in meiner SelfPHP.chm drinsteht
Werf das Zeug in die Ecke, und schaue dir lieber die Beispiele im PHP-Handbuch auf www.php.net an.

Dein Script (was auch immer das sein soll) funktioniert hinten und vorne nicht.

Das Originalbild ist $MyNewPhoto, soweit ich das sehe.
Dann wird als erstes dieses eingelesen mit
$altes_bild = ImageCreateFromJPEG($MyNewPhoto);
(weil es ein Jpeg ist)

Dann wird eine neue Ressource erstellt:
$neues_bild = ImageCreateTrueColor( breite, höhe);

Und dann erfolgt:
ImageCopyResized( $neues_bild, $altes_bild, ..............);

$altes_bild und $neues_bild sind die Ressourcen, die du völlig vertauscht hast.

Aus meiner Abfalltonne zum Vergleichen und um das Prinzip zu verstehen:
http://www.cix88.de/cix_tonne/tonne_...ize_upload.php
 
Alt 11.07.2007, 21:25  
Erfahrener Benutzer
 
Benutzerbild von SvenLittkowski
 
Registriert seit: 05.09.2004
Beiträge: 578
SvenLittkowski zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

CIX88, vielen Dank! Du hast mir sehr geholfen. Aber die Loesung des einen Problemes fuehrt mich nun zu einem anderen Problem:

Das gegenwaertige Resizing verkleinert, indem es senkrechte und vertikale Reihen von Pixel einfach entfernt. Resultat: ein Treppeneffekt bei diagonalen Bildinhalten.

Gibt es eine Methode, ein Bild weicher zu verkleinern (zu resamplen), aehnlich wie ein Grafikprogramm? Gerne auch innerhalb einer zusaetzlichen Code- / Funktionssammlung.
__________________

Vielen Dank für Eure Zeit, Absicht, Mühe und für Eure Ideen. Grüße,
Sven
SvenLittkowski ist offline  
Alt 11.07.2007, 21:47  
CIX88
Gast
 
Beiträge: n/a
Standard

Zitat:
Gibt es eine Methode, ein Bild weicher zu verkleinern (zu resamplen),
Die hat nikosch77 bereits genannt
Ich wusste das dieses Problem noch kommt, aber darauf wollte ich vorerst nicht eingehen, solange dein Script vom logischen Aufbau her nicht stimmt.
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Timestamp problem phrain PHP Tipps 2008 2 04.04.2008 09:41
Problem beim Bildupload/ Thumbnailerstellen imported_FlasH PHP Tipps 2006 2 02.03.2006 08:12
problem!!! PHP Tipps 2006 6 08.02.2006 11:06
[Erledigt] wieder ein Problem bei phpmailer und smtp PHP Tipps 2006 24 07.02.2006 01:07
Image Problem CHRIS PHP Tipps 2006 3 27.01.2006 12:38
Problem mit Image as link ausloser stat text in java script. Bruce HTML, Usability und Barrierefreiheit 5 17.01.2006 11:31
Globale Variabeln in Funktionen finerip PHP Tipps 2007 3 28.11.2005 16:00
problem mit rollover-button lukatsch HTML, Usability und Barrierefreiheit 5 04.11.2005 19:03
Image Hosting Problem PHP Tipps 2005-2 2 15.10.2005 20:14
link image als background AliceD HTML, Usability und Barrierefreiheit 4 31.08.2005 14:10
[Erledigt] Problem mit Backslash Patrick Schwarz PHP Tipps 2005-2 5 26.07.2005 09:54
[Erledigt] Problem mit User/Group: nobody(99)/99 Server, Hosting und Workstations 3 09.07.2005 15:31
image problem Ohrwurm83 PHP Tipps 2004 3 31.10.2004 00:18
[Erledigt] problem mit ftp funktionen und chmod PHP-Fortgeschrittene 7 19.08.2004 16:59
Problem mit alter JavaScript-Funktion woods PHP Tipps 2004 1 13.08.2004 13:34

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php copyresized, copyresized, imagecopyresized background, imagecopyresized breite höhe vertauscht, img copyrezized

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




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.