Impressum · Kontakt · Hilfe
Besucher online · Mitglieder



Portal > Foren > PHP > PHP-Programmierung > Frage zu GD Grafiken
Antwort
 
Themen-Optionen
Alt 04.10.2006, 13:11   Nach oben    #1
Benutzer
 
Registriert seit: 03.03.2006
Beiträge: 31
Standard Frage zu GD Grafiken

Hallo Leute,

Ich habe ein kleines Script das mir meine Menüpunkte als kleine dynamische Grafiken erzeugt. Es geht pro Seitenaufruf um ca. 20 Grafiken, die im Schnitt ca. 0.58 KB (592 Bytes) gross sind.

Ich frage mich nun, ob ich einen Vorteil hätte, diese Grafiken, nach dem ersten erstellen auf dem Server zu speichern und diese dann von dort zu laden, sofern sie vorhanden sind, wenn nicht, generiere ich sie neu und speichere sie wieder.

Was würdet Ihr empfehlen? on-the-fly lassen oder speichern?
heohni ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 04.10.2006, 13:14   Nach oben    #2
Blubb... öfz
 
Benutzerbild von ljungi
 
Registriert seit: 16.03.2006
Ort: Berlin
Beiträge: 419
Standard

Speichern würd ich vorziehen, das spart jede menge Ressourcen.
__________________
Vive la France! Welcome to Sarkoworld...
ljungi ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 04.10.2006, 16:32   Nach oben    #3
Benutzer
 
Registriert seit: 03.03.2006
Beiträge: 31
Standard

Dazu habe ich gleich folgendes Problem:

PHP-Code:
$filename $_REQUEST['t'];
$ext ".png";

if(!
file_exists($path.$filename.$ext)){
    
# Anlegen des Bildes, existiert nun als Zeiger
    
$x_size strlen($_REQUEST['t']) * 8;
    
$y_size 14;
    
$img imagecreate($x_size$y_size );
    
    
# Hintergrund zum späteren entfernen setzen
    
$cl_bg imagecolorallocate($img0077157);
    
    
# Schriftfarbe
    
$cl_white imagecolorallocate($img255255255);
    
    
ImageTTFText ($img100212$cl_white"font/pk.TTF"strtoupper $_REQUEST['t'] ));

    
# Nun wird die Hintergrundfarbe wieder entfernt - es soll ja transparent sein
    
imagecolortransparent($img$cl_bg);
    
    
$img ImageCreateFromPNG($filename.$ext);
    
    
ImagePNG($img);
}else{
    
ImagePNG($img);
}

# Den Speicher wieder freigeben
imagedestory($img); 
erzeugt diesen Fehler:

Warning: imagecreatefrompng(unternehmen.png failed to open stream: No such file or directory in E:\___new\inc\button.php on line 27

Warning: imagepng( supplied argument is not a valid Image resource in E:\___new\inc\button.php on line 29

Und ich weiss nicht so recht warum das passiert...
heohni ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 04.10.2006, 17:04   Nach oben    #4
Mensch
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.710
Standard

Kann jetzt zu deinem Problem nichts sagen, aber ich rate von der Nutzung von $_REQUEST ab, da dort sowohl $_GET als auch $_POST drin ist, sprich das gibt Sicherheitsprobleme.
Infos: http://de.php.net/manual/de/security.globals.php
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 04.10.2006, 19:12   Nach oben    #5
Blubb... öfz
 
Benutzerbild von ljungi
 
Registriert seit: 16.03.2006
Ort: Berlin
Beiträge: 419
Standard

Wurde die Datei denn richtig raufgeladen? Er kann nicht auf die Temporäre Datei zugreifen
__________________
Vive la France! Welcome to Sarkoworld...
ljungi ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 04.10.2006, 19:51   Nach oben    #6
Benutzer
 
Registriert seit: 03.03.2006
Beiträge: 31
Standard

Ich hab das bis jetzt nur lokal
heohni ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 04.10.2006, 20:21   Nach oben    #7
BIN EIN KRASSA HELD!!!111
 
Benutzerbild von robo47
 
Registriert seit: 02.06.2005
Ort: weiher im tiefsten Odenwald
Beiträge: 1.184
Standard

versuchs mal mit nem absoluten pfad zu dem bild, bzw. schau mal wo das script läuft und wo die bilder imgegensatz dazu liegen.
robo47 ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 05.10.2006, 07:01   Nach oben    #8
Erfahrener Benutzer
 
Registriert seit: 18.03.2005
Beiträge: 588
Standard

Zitat:
$img = imagecreate($x_size, $y_size );
Zitat:
$img = ImageCreateFromPNG($filename.$ext);
Also irgendwie kann das nicht ganz stimmen.
Zuwas soll ImageCreateFromPNG() gut sein, wenn du oben schon ein Bild erzeugst ?
CIX88 ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 05.10.2006, 13:03   Nach oben    #9
Blubb... öfz
 
Benutzerbild von ljungi
 
Registriert seit: 16.03.2006
Ort: Berlin
Beiträge: 419
Standard

Ich verstehe nicht, was in $_REQUEST['t'] drin sein soll.
Ist das nur ein String, oder ist das $_FILES['t']?

Wenn nur ein String, ist dann die Datei in diesem Verzeichnis vorhanden?

Wenn ein FILES-Array, dann müsstest du

PHP-Code:
$img ImageCreateFromPNG($filename['tmp_name']); 
so vorgehen...


Ich nehme an, du willst irgendwas auf das Bild schreiben? Aber du erstellst ein leeres Bild, wie CIX schon sagte, und gleich darauf, ohne es vorher irgendwie zu speichern, wird es überschrieben..?
__________________
Vive la France! Welcome to Sarkoworld...
ljungi ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 05.10.2006, 13:52   Nach oben    #10
Erfahrener Benutzer
 
Registriert seit: 18.03.2005
Beiträge: 588
Standard

Ohne jetzt selber ausbrobiert zu haben, aber:

Zitat:
$img = imagecreate($x_size, $y_size );
würde ich ändern in:
$img = ImageCreateTrueColor($x_size, $y_size );

Zitat:
$img = ImageCreateFromPNG($filename.$ext);
Diese Zeile ergibt keinen Sinn -> weg damit.
Es sei denn du willst vordefinierte Bilder beschreiben, dann ist ImageCreate() fehl am Platz.
Also im groben:

Neues Bild erzeugen mit ImageCreateTrueColor() ODER ImageCreateFromPNG().
Farben definieren, Text schreiben -> Bild ausgeben, -> Speicher freigeben.
Fertig ....
CIX88 ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


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

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 An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are Aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
indireckte Frage zu Template system kampfgnom PHP-Programmierung 4 04.06.2007 04:12
Frage zu Aufklapp-Menü mit CSS Hobbyuser HTML, XML und CSS 8 12.08.2006 18:41
PEAR Klasse für dreidimensionale Grafiken via PHP Ben Nachrichten 1 20.03.2006 22:18
[XAMPP] Localhost zeigt keine Grafiken mehr an PaterNoster Tools, Server, Betriebssysteme 7 21.12.2005 23:17
Java Programm - Code Frage (Problem) Finki Allgemeine Java-Programmierung 16 23.10.2005 12:36


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

Nach oben
Wir nutzen das Zend Framework, vBulletin (vBulletin v3.7.3, Copyright ©2000-2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0) und vBSEO.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44