Mailinglisten-Archive |
>hat jemand evtl. schon Erfahrungen gesammelt mit der Nutzung >größerer Grafiken in der GD LIbary ??? Jein. >Im Grunde geht es um eine Deutschland Karte mit Koordinaten, auf denen >Systeme und Linien dynamisch eingezeichnet werden müssen ... Da der >Inhalt, der auf die Grafik gesetzt wird schon wenig mehr ist, >befürchte ich, daß es ein wenig zu viel für PHP/GD-Lib wird. "Dreh den Spieß um", das bringt viele Vorteile: Für www.bielewelt.de/stadtplan/ habe ich den Stadtplan, der als Photoshop-Dokument 400MB einnimmt, in 21*23 Segmente unterteilt und als JPEG/GIF gespeichert. Je nach Ausschnitt und Zoomstufe lade ich ein oder bis zu 16 Segmente per GD-lib ein und sakliere diese auf die Ausgabegröße, um anschließend nach einem DB-Zugriff noch besondere Ortssymbole einzuzeichen. Bei einzelnen Segmenten mit maximaler Detailstufe geht das sehr schnell, die maximale Übersicht mit 16 Einzelsegmente bremst zwar etwas, aber das ist fast zu vernachlässigen. Das bedeutet auch: die interessanten Maximalstufen gehen schnell während die Übersichtsstufen etwas länger dauern... Achtung: bei der Entwicklung mit der GD-Lib 2.1beta entdeckte ich bei ImageCopyResampled (das eine bessere Bildqualität liefert) einen Fehler, den der Entwickler schon bestätigt (und gefixt) hat. Obwohl die Bildqualität damit deutlich besser ist, ist diese Routine prinzipiell etwas langsamer. Da man bei Puretec (wo bielewelt.de gehostet wird) aber keinen Einfluß auf die GD-Lib hat (ist noch die alte mit GIF-Support), bin ich auf ImageCopyRescale zurückgekommen. www.bielewelt.de/stadtplan/ ist diesbezüglich übrigens ein schönes Beispiel, wie schnell die Server dort sind: Bilderladen, skalieren, DB-Zugriff, Symbole Laden und ins Bild reinkopieren, dann rausjagen - alles selbst unter den neuen Zeitlimits. -- Oliver Michalak www.werk01.de / omich_(at)_werk01.de / 0(049)177 - 75 75 393
php::bar PHP Wiki - Listenarchive