| | | | |
| |||||||
| PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen |
|
| | LinkBack | Themen-Optionen | Thema bewerten |
| | |
| Erfahrener Benutzer Registriert seit: 21.05.2008
Beiträge: 9.937
![]() | Hallo, ich grübel gerade wie ich alle Buchstaben einer Schrift in einem Bild einheitlich an der Grundlinie ausrichte. Leider ergeben sich einige Schwierigkeiten mit Buchstaben die unter die Grundlinie kommen, wie das g oder welche, die deutlich größer sind als Versalien, Ä im Gegensatz zu A also. Ohne Ä oder Buchstaben die größer als normale Versalien sind klappt das eigentlich gut - habe mich dazu aus den User-Notes bedient, speziell imagettfbboxextended(). Auch die Funktion fontBaselineOffset() ist scheinbar geeignet, berechnet mir für "Ähm" und "Apfel" jedoch den gleichen Wert, was nicht sinnvoll ist. http://www.bilder-speicher.de/070530....vollbild.html Gibts Ideen? Edit: Achso der Quellcode-Ausschnitt: PHP-Code: |
| | |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Gast
Beiträge: n/a
| Hmm, irgendwie hab ich mich gewundert was hier als Grundlinie gedacht war. Unabhängig davon ist dies rausgekommen: http://www.cix88.de/cix_php/php_graf...ausrichten.php |
|
| | |
| Erfahrener Benutzer Registriert seit: 21.05.2008
Beiträge: 9.937
![]() | Das Ergebnis auf deiner Seite ist ja doch aber falsch. Wie hoch ist denn der Rechenaufwand für imageTtfbBox()? Hast du damit Erfahrungen? Ich wollte eventuell Berechnungs-Ergebnisse dieser Funktion für eine Schrift und Schriftgröße zusätzlich cachen. |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 26.07.2006
Beiträge: 121
![]() | Ich verstehe es trotzdem nicht. imageTtfText richtet sich grundsätzlich an der Baseline des Fonts aus. d.h. der mit $y bestimmte Wert bildet die Baseline. Was jetzt noch fehlt, wäre die Höhe zur TopLine und zur BottomLine. Mit der (hoffentlich) freundlichen Erlaubnis von Cix88 habe ich mal das PHP etwas umgeschrieben. Der Kernfunktion textBox liefert jetzt als Ergebnis Länge, Höhe, (Höhendifferenz Top-Line zur BaseLine), (Höhendifferenz Bottom-Line zur BaseLine). Zur besseren Anschauung habe ich aus der BaseLine und der Funktion die Top- und Bottom-Line mit berechnet. http://jumper2.marsoftware.de/font_line/font_line.php /Edit: Besser wäre es natürlich, man hätte eine Funktion, die die entsprechenden Werte direkt aus einer TTF-Datei lesen würde. Gruß, Jumper, the II. |
| | |
| | |||
| Gast
Beiträge: n/a
| Irgendwie müsste mal geklärt werden, wer was als Grundlinie bezeichnet. Eigentlich ist die Schrift schon einer Linie ausgerichtet, und bedarf keiner weiteren Funktionen. Mein Script beruht darauf, dass mir nicht klar war (ist) von welcher Linie hier die Rede ist (das Beispiel von Zergling hat nicht völlig fertig gemacht) Und an welcher Linie was ausgerichtet werden soll. Deswegen sicher mein Koas-Script @JumperII Jo genau, so verstehe ich das auch Zitat:
Da ich bisher nie Schriften so weit oben oder unten in Bilder gesetzt habe, dass dann Teil dieser nicht zu sehen sind. Zitat:
Siehe: http://cix88.mediacix.de/galerie_b/pic_83 | ||
|
| | |
| Erfahrener Benutzer Registriert seit: 26.07.2006
Beiträge: 121
![]() | Also die Baseline ist die Grundlinie und setzt vereinfacht erklärt am unteren Zeichenende vom Zeichen 'a' an. Typischerweise wird diese Baseline in der Funktion imageTtfText zur Orientierung verwendet (Anwendung von Zeichensätze). Im TTF wird die Baseline durch das Y-Offset der Positionierung eines Zeichens definiert. in Verbindung mit der eigentlichen Zeichengröße können so auch weitere Werte direkt ermittelt werden. Im Übrigen ist im TTF auch Mapping und Kerning enthalten, also die Seitenabstände zu anderen Zeichen unter Berücksichtigung spezieller Elemente. Gut erkennbar, wenn man die Strings zeichenweise setzt versus als Zeichenkette setzen lässt. Bei einigen Zeichen wird beim Einzelzeichen setzen der Abstand zwischen zwei Zeichen gößer sein. Gruß, Jumper, the II. |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| imagettftext baseline, imagettfbbox, imagettfbbox get baseline y, imagettfbbox baseline, imagettfbbox falsch, php image text baseline, imagettfbbox falsche werte, imagettfbboxextended, php imagettftext baseline, imagettftext kerning, imagettftext line height, imagettftext grundlinie, schrift alle buchstaben auf grundlinie, imagettfbbox base line, imagettftext falsche ausrichtung, imagettfbbox umlaute, php abs textfeld, imagettfbbox offset, baseline imagettfbbox, php baseline font berechnen |

Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.