PHP Developer ForumHier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here!
ich hoffe ich kann mal wieder von eurer Erfahrung "profitieren"
ich sehe derzeit ein unterschied, der wirklich unschön ist und wollte fragen, ob das normal ist wegen der Versionsunterschiede der system UND ob ich das beeinflussen kann (zeichenabstand) ?
Meine dyn. Bildscripte mit Text (ttf files) zeigen unterschiede in der Darstellung beim Zeichenabstand. Auch funktioniert online das imcreatetruecolor nicht, und ich weiß beim besten willen nicht wieso.
Kann mir da jemand helfen?
Lokaler Rechner ein WAMP mit php 5.2
GD Support enabled
GD Version bundled (2.0.34 compatible)
FreeType Support enabled
FreeType Linkage with freetype
FreeType Version 2.1.9
T1Lib Support enabled
Online Webserver: LINUX PHP Version 5.2.6-1+lenny3
GD Support enabled
GD Version 2.0 or higher
FreeType Support enabled
FreeType Linkage with freetype
FreeType Version 2.3.7
T1Lib Support enabled
Ich hoffe das verwendete Script bringt aufschluss
PHP-Code:
$icon2 = imagecreatefrompng('../_images/icon2.png'); # Icon wird aus Vorlage-Datei erzeugt # $abstand = 8; # Icon abstand rechts zur Schrift # $output_txt = ucfirst("Willkommen"); # hier wird text übergeben # $img_quality = 80; # hier wird Bildqualität übergeben: von 1 bis 100 # $font = "../_fonts/font1.ttf"; # Hier wird der pfad zur schriftart angegeben # $size = "11"; # Schriftgröße # $angle = "0"; # Schrift-winkel # # $image = imagecreate(500,41); // sonst imagecreatetruecolor(500,41) # imageantialias($image, true); $bg_color = imagecolorallocate($image, 255, 255, 255); #imagefill($image,0,0,$bg_color); $img_color_tx1 = imagecolorallocate ($image, 99, 133, 132); # Textfarbe # $img_width = imagesx($image); # Berechnet Breite des Bildes in Pixel # $img_height = imagesy($image); # Berechnet Höhe des Bildes in Pixel # $txt_width = imagettfbbox($size, 0, $font, $output_txt); # Berechnet TTF Textbreite in Pixel # $icon_pos_x = $abstand + $txt_width[2]; # Textbreit + Abstand des Icons # $x = 0; # Abstand zur linken Bildseite ist $img_width_mod # $y = "37"; # Abstand zur oberen Bildseite # imagettftext ($image, $size, $angle, $x, $y, $img_color_tx1, $font, $output_txt); # Zeichnet Text ins Bild # imagecopy($image, $icon2, $icon_pos_x, 29, 0, 0, 8, 8 ); # Zeichnet PfeilIcon ins Bild # imagepng ($image); # Erzeugt Bild nach Parametern # imagedestroy ($image); # Macht Speicher vom Bild frei #
wieviel genauer als: Meine dyn. Bildscripte mit Text (ttf files) zeigen unterschiede in der Darstellung beim Zeichenabstand.
soll ich das ganze machen, wenn es sich "nur" darum dreht? ( Das mit dem imagecreatetruecolor ist nur ein zusatz, wie man an der Threadüberschrift erkennen könnte! )
Wenn GD, FreeType und die .ttf auf beiden Systemen identisch wären, gäbe es diese Unterschiede nicht. Das ist dir sicherlich klar, deswegen lautet die Frage zwischen den Zeilen eigentlich "Welche Komponente ist für die Unterschiede verantwortlich?".
Das Font-File kannst du ja ganz einfach auf beiden Systemen benutzen. Damit ist das schon mal aus dem Rennen.
Aus dem Stand kann ich nicht sagen, ob FreeType oder GD die Unterschiede verursacht. Vermutlich FreeType. Aber was solls, bring doch einfach mal beide Bibliotheken auf beiden Systemen auf den selben Stand.
Weil eins der Systeme ein Windows ist, bedeutet "auf einen Stand bringen" wahrscheinlich ein Downgrade auf dem Debian. Wenn du das nicht willst, gäbe es noch die Möglichkeit, auf deinem lokalen Windows gar keine Bilder zu erzeugen sondern die URLs in den entsprechenden <img>-Tags auf den Live-Server zeigen zu lassen.
Geändert von onemorenerd (21-10-2009 um 19:40 Uhr)
ohja.. das ist eine gute Idee mit der img-src zum live-server
das werd ich künftig so machen..., so weiß ich wenigstens gleich wie das endergebnis online aussehen würde..
nun hab ich ja leider weiterhin das problem, dass diese unschöne Tatsache auf dem liveserver stattfindet... gibt es denn wenigstens eine Möglichkeit den zeichenabstand zu "manipulieren" ?
Warum verwendest du nicht einfach ein virtuelles Debian lokal zum Testen?
Hat ja wenig Sinn, wenn du unter Windows testest/entwickelst aber das ganze System dann unter Linux läuft. Unterschiede zwischen beiden Systemen kann man niemals ausschließen. Außerdem sollten alle Softwareversionen am Testserver identisch mit denen am Produktivserver sein.
Für mich ist das, was du machst, sehr unprofessionell.
Außerdem sollten alle Softwareversionen am Testserver identisch mit denen am Produktivserver sein.
Für mich ist das, was du machst, sehr unprofessionell.
Wenn es um ein Projekt in fünf- oder sechsstelliger Größe geht? Dann ja. Ansonsten finde ich es nicht so dramatisch. GD/Freetype gehören zu den wenigen extremen Spezialfällen, die sich nicht programmiertechnisch überbrücken lassen, und auf die stößt man dann halt... Wenn auch unter Schmerzen
Warum verwendest du nicht einfach ein virtuelles Debian lokal zum Testen?
Hat ja wenig Sinn, wenn du unter Windows testest/entwickelst aber das ganze System dann unter Linux läuft.
...
Für mich ist das, was du machst, sehr unprofessionell.
unprofessionell.. nun ja.. wie glücklicherweise bereits erwähnt wurde, handelt es sich dabei nicht um ein wirtschlich großes projekt, dann würde sich auch sicher jemand anderes darum kann als ich
es ist nur eine mini firmenseite.
aber einen vorteil seh ich dennoch an der ganze sache !!
ICH LERNE .. die hinweise von pekka, der link von wahsaga..und all die anderen Hilfreichen Poster.. und das ist, was wertvoll ist...
ich hab mir jedoch bereits ein virtuelles linux eingerichtet... wobei ich allerdings nur mit ubuntu ausreichend umgehen kann.. aber vielleicht hilft mir das schon weiter.. künftig..
danke jedenfalls für die klasse hinweise.. der link zum "spacing between letters" sieht auf den ersten blick ja nach einer lösung aus...
darüber werd ich mich gleich mal hermachen !
wünsche euch allen schon mal eine gute Nacht !
Rene´
Geändert von someRookie (21-10-2009 um 23:25 Uhr)
Grund: wort vergessen
MariaDB 5.5 veröffentlicht Die freie MySQL-Alternative MariaDB wurde in der stabilen Version 5.5.23 veröffentlicht und soll einige Verbesserungen gegenüber Oracles Communityversion von MySQL mitbringen.
Login-System und Kundenverwaltung, die sich spielend leicht in bestehende Webseiten einbauen lässt und einen enormen Funktionsumfang bietet.
Ihre eigene Webseite muss mit Advanced Login nicht umständlich an ein fertiges System angepasst werden.
Spezielles CMS für Betreiber von Ferienwohnungen. Komplette Seitenerstellung online, Verwaltung mehrerer Objekte, Reservierungssystem mit sofortigem Abgleich im Belegungskalender und vieles mehr bietet dieses Content Management System.