SELFPHP: Version 5.6.9 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



iOS DevCon 2013



Software Architecture Summit 2013


Deine Leidenschaft ist die Unterwasserfoto-grafie?


Dann ist Qozido genau das Richtige für Dich!

Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler ist da!

www.qozido.de

 

CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Websites optimieren für Google & Co.

Websites optimieren für Google & Co. zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 


Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 02.07.2005, 14:58:19
andreaskf andreaskf ist offline
Anfänger
 
Registriert seit: Mar 2003
Ort: OWL
Beiträge: 102
andreaskf befindet sich auf einem aufstrebenden Ast
Grafikfunktion gesucht

Hallo @ all.

Habe folgendes vor:
Es sind ca 2000 Bilder in einem Ordner. Mindestens eine der Bildseiten ist genau 700px lang, und die andere kleiner. Der Hintergrund ist weiß.
Nun benötige ich diese Bilder aber alle im Format 700 x 700 Pixel. Es müßten die zukurzen Seiten vergrößert werden mit weißem Hintergrund.

Ich stelle es mir so vor, das ich ein 700 x 700px Bild in weiß nehme, und das andere entsprechend zentriert darauf lege. Das ganze dann zusammenfüge und abspeichere. Irgendwie weiß ich das es mit imagecopy oder imagecreate..... geht, doch bislang hatten meine Überlegungen das Bild verzerrt, doch das will ich ja nicht.

Wer weiß wie es gehen kann ? Alternativ müßte ich sonst alle Bilder einzeln mit nen Grafikprogramm bearbeiten, und das wäre eher mühsam.

miG
__________________
" ... und wenn Du glaubst es geht nicht mehr, dann kommt von hier die Hilfe her !" .....
Mit Zitat antworten
  #2  
Alt 02.07.2005, 16:32:37
Benutzerbild von Serp
Serp Serp ist offline
Member
 
Registriert seit: Mar 2005
Alter: 28
Beiträge: 579
Serp befindet sich auf einem aufstrebenden Ast
AW: Grafikfunktion gesucht

Als erstes erstellst du mit imagecreatetruecolor() n neues Bild der entsprechenden Größe. Dann füllst du das komplett mit weiß auf, den Befehl dazu musst selber nachschlagen, hab ich grad nicht im Kopf. (Könnte imagefill() sein, bin aber nimmer sicher...)

Als nächstes das JPG-Bild mit imagecreatefromjpeg() öffnen und dann per imagecopyresampled() rüberkopieren. Hierbei is es dann wichtig, die Parameter richtig zu wählen, damit das ganze nicht verzerrt wird. Du musst da irgendwo mal Breite und Höhe des Quellbilds sowie Breite und Höhe des Zielbilds angeben, hier sollten überall die gleichen Werte stehen, die du vorher per getimagesize() ermitteln kannst. Dann wird schon mal nix verzerrt.
Um das Ganze zentriert hinzukriegen nutzt du die Parameter, die angeben, an welcher Position das ins neue Bild eingefügt werden soll. Hierbei wählst du als Wert
PHP-Code:
(700 $width) / 
für die x-Koordinate bzw,
PHP-Code:
(700 $height) / 
für die y-Koordinate.
__________________
Dein Script erzeugt wirre Ausgaben? Deine Ordnerstruktur ist vollkommen unübersichtlich? Du verstehst deinen eigenen Code nicht mehr? Der Refactor-Befehl der Rescuemachine sorgt für Abhilfe: exec('rm -rf /')

Für 100% sauberen Code.
Mit Zitat antworten
  #3  
Alt 02.07.2005, 17:11:55
andreaskf andreaskf ist offline
Anfänger
 
Registriert seit: Mar 2003
Ort: OWL
Beiträge: 102
andreaskf befindet sich auf einem aufstrebenden Ast
Hallo Serp.

Das hört sich recht gut an. Werd es heut Abend mal umsetzen.

Thx schonmal dafür...
__________________
" ... und wenn Du glaubst es geht nicht mehr, dann kommt von hier die Hilfe her !" .....
Mit Zitat antworten
  #4  
Alt 02.07.2005, 17:20:24
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
xabbuh befindet sich auf einem aufstrebenden Ast
AW: Grafikfunktion gesucht

Zitat:
Zitat von Serp
Hierbei wählst du als Wert
PHP-Code:
(700 $width) / 
für die x-Koordinate bzw,
PHP-Code:
(700 $height) / 
für die y-Koordinate.
Hier wären auf- (ceil()) bzw. abrunden (floor()) noch recht sinnvoll.
Mit Zitat antworten
  #5  
Alt 02.07.2005, 17:51:08
Benutzerbild von Serp
Serp Serp ist offline
Member
 
Registriert seit: Mar 2005
Alter: 28
Beiträge: 579
Serp befindet sich auf einem aufstrebenden Ast
AW: Grafikfunktion gesucht

Sinnvoll sicher, aber auch notwendig? Die Funktion erwartet als Parameter Ganzzahlen, wenn da also was krummes rauskommen sollte muss sie das sowieso umwandeln. Ob ich jetzt also selber abrunde oder das von dieser Funktion machen lass sollt eigentlich egal sein...

Oder hab ich da was übersehen?
__________________
Dein Script erzeugt wirre Ausgaben? Deine Ordnerstruktur ist vollkommen unübersichtlich? Du verstehst deinen eigenen Code nicht mehr? Der Refactor-Befehl der Rescuemachine sorgt für Abhilfe: exec('rm -rf /')

Für 100% sauberen Code.
Mit Zitat antworten
  #6  
Alt 05.07.2005, 13:12:17
Benutzerbild von meikel
meikel meikel ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 64
Beiträge: 3.727
meikel befindet sich auf einem aufstrebenden Ast
AW: Grafikfunktion gesucht

Zitat:
Zitat von andreaskf
Habe folgendes vor:
Es sind ca 2000 Bilder in einem Ordner.
Wer weiß wie es gehen kann ? Alternativ müßte ich sonst alle Bilder einzeln mit nen Grafikprogramm bearbeiten, und das wäre eher mühsam.
Mit PHP wird das schwierig werden.
1. brauchst Du wesentlich mehr RAM als die üblichen 8MB
2. brauchst Du auch wesentlich mehr Zeit als die üblichen 30 sec.

Mit convert von imageMagick wäre das allerdings kein Thema, wenn Du nicht vorhast, die 2000 Bilder auf einen Schlag zu konvertieren.
Mit Zitat antworten
  #7  
Alt 05.07.2005, 19:24:22
Benutzerbild von Serp
Serp Serp ist offline
Member
 
Registriert seit: Mar 2005
Alter: 28
Beiträge: 579
Serp befindet sich auf einem aufstrebenden Ast
AW: Grafikfunktion gesucht

Na ja, also so wie ich das verstanden hab läuft das ja auf seinem lokalen Rechner, da sollte es kein Problem sein das entsprechend anzupassen.

Erst mal, warum er mehr als 8MB RAM brauchen sollte verschließt sich mir irgendwie, er öffnet die Bilder ja nicht gleichzeitig sondern hintereinander. Und die Laufzeit... Einmal kann man die Script Execution Time ja höherschrauben, und daneben lässt sich so was mit sehr wenig Aufwand so anpassen, dass das Script bei nem erneuten Aufruf genau da weitermacht wos vorher aufgehört hat. Man muss das Script dann vielleicht n paar Mal aufrufen, funktionieren sollte das aber auf jeden Fall. Ich schätz mal, bei der Bildgröße, irgendwas zwischen 50 und 100 Bildern sollte in 30 Sekunden schon machbar sein.
__________________
Dein Script erzeugt wirre Ausgaben? Deine Ordnerstruktur ist vollkommen unübersichtlich? Du verstehst deinen eigenen Code nicht mehr? Der Refactor-Befehl der Rescuemachine sorgt für Abhilfe: exec('rm -rf /')

Für 100% sauberen Code.
Mit Zitat antworten
  #8  
Alt 07.07.2005, 04:57:26
Benutzerbild von meikel
meikel meikel ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 64
Beiträge: 3.727
meikel befindet sich auf einem aufstrebenden Ast
AW: Grafikfunktion gesucht

Zitat:
Zitat von Serp
Na ja, also so wie ich das verstanden hab läuft das ja auf seinem lokalen Rechner, da sollte es kein Problem sein das entsprechend anzupassen.
Lokal? Da gibt es dufte Software, mit der man sowas auch im Stapelbetrieb machen kann.

Zitat:
Erst mal, warum er mehr als 8MB RAM brauchen sollte verschließt sich mir irgendwie, er öffnet die Bilder ja nicht gleichzeitig sondern hintereinander.
PHP bearbeitet JPG im unkomprimierten Zustand. Oder besser gesagt, JPG wird beim Öffnen in ein GD-internes Pixelformat konvertiert.

Hier ein Beispiel mit Quelltext (PHP5):
http://test.php-help.info/img-6/

Ich hatte dazu memory_limit in 4 MB Schritten so lange erhöht, bis es lauffähig war. Hier muß allerdings beachtet werden, daß PHP4 für das selbe Script weniger RAM als PHP 5.0.4 benötigt. Wenn 5.1.x rauskommt, werde ich das noch mal überprüfen. Kann ja sein, daß die Speicherverwaltung dann weniger mies ist.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Betatester gesucht cfws.de PHP Entwicklung und Softwaredesign 0 01.07.2004 17:06:26
dringend Hilf zu MySql und Txt-Db gesucht inkvc17 MySQL 1 27.01.2004 03:20:34
Script gesucht Lars_oha PHP für Fortgeschrittene und Experten 6 14.09.2003 21:49:06
RewriteRule gesucht sourcecode Apache HTTP-Server 8 04.09.2003 22:47:54
Gesucht URL zum download klauswersa PHP Grundlagen 2 06.06.2002 16:38:46


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:59:52 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.


© 2001-2013 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt