Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » PHP » Schriftzugbreite in cm berechnen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
16.09.2003, 22:18 Uhr
markus



Hi!

Ich bastel jetzt schon seit Tagen an einem Problem. Hier die Problemstellung:

Ich habe einen Text $string und eine schriftart $font ausserdem habe ich eine buchstabenhöhe in cm $hoehe wie bekomme ich die Textbreite in cm heraus?

Ich habe es zunächst so versucht:

Mit imagettfbbox die werte für breite und höhe in Pixeln berechnet.

dann einfacher dreisatz (in meinen augen)

hoehe in cm verhält sich zu hoehe in pixeln wie breite in cm zu breite in pixeln.

der Kunde (und mit ihm corel draw) sagt: passt nicht!

Warum?
Was mache ich falsch?

Danke für die Hilfe!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
16.09.2003, 22:56 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


Die Breit ist abhängig von der Schriftart und der Reihenfolge in der die Zeichen aneinandergereit sind. Ich glaub sowas was du da auszurechnen versuchst klappt höchstens bei Proportionalschriften

Ach so falls ichs richtig im Kopf habe. Ich habe mal sowas gelesen das ein Pixel 1/72 '' ist. Demanch würde ein Pixel 2,54/72 cm entsprechen
--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 16.09.2003 um 22:59 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
16.09.2003, 23:02 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Wie Windalf schon sagte, deine Rechnung geht nur bei "Courier"-Schriften (damit mein ich z.b Courier, also die Schriften bei denen alle Buchstaben die gleiche Breite haben)
Bearbeitung:
etz fällts mir ein: "Konsolenschriften"
Ansonsten müsstest du ermitteln welche Zeichen, dann ausrechnen wieviel platz das zeichen beansprucht, usw (was sich rechentechnisch nicht lohnt)

Nur mal so: Für was brauchst du sowas?
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
17.09.2003, 06:35 Uhr
markus



für eine berechnung für schilderdruck.
der kunde sucht sich eine schrift, einen font und die buchstabenhöhe in cm aus. das script soll sagen, wie breit es wird...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
17.09.2003, 19:10 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


Da das so wohl nicht funktioneren wird bleibt dir wohl nur übrig dem Kunden aufzuwingen Schrift, die Fontgrösse und Text zu übergeben. Daraus sollte sich dann villeicht errechnen lassen wie gross das ganze wird in dem du dir den Umrechnungsfaktor von Pixeln zu mm suchst.

Ich kenn zwar kein php aber wenn es eine funktion gibt die dir die Pixelbreite von nem String einer bestimmten schriftart, einer Fontgrössse rausschmeisst dann sollte es relativ einfach sein. Wenn nicht hast du leider ein richtiges Problem
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
17.09.2003, 20:44 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


ich hab mal im php manual nachgeschaut:


Code:
[b]ImagePSBBox[/b] - Ermittelt die Ausmaße des Rechtecks, das für die Ausgabe eines Textes unter Verwendung eines PostScript-Fonts (Typ 1) notwendig ist.

[b]ImageTTFBBox[/b] - Ermittelt die Rahmenmaße für die Ausgabe eines Textes im True-Type-Format


--
class God : public ChuckNorris { };

Dieser Post wurde am 17.09.2003 um 20:44 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
17.09.2003, 22:55 Uhr
markus



so weit war ich auch schon. leider stimmt dann das verhältnis höhe breite in pix nicht mit höhe und breite in cm überein. Da haben wir ja das problem...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
18.09.2003, 08:25 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Haste halt falsch umgerechnet?

1Inch = 72Pixel
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
18.09.2003, 08:58 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


Du sollst ja auch nicht das verhältnis benutzen sondern die Breite in Pixeln mit 2,54/72 multiplizieren
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
18.09.2003, 17:04 Uhr
markus



Das klang alles sehr gut.
Leider passt es nicht so ganz genau. Ist schon ziemlich eng, aber nicht 100%.

Schade eigentlich. Sollte PHP da etwas schummeln oder benutzt Corel Draw da
irgendwelche overheads? Ich probier noch mal was rum und versuche dann hier mal beispiel code und beispielergebnisse zu liefern.

Weitere Tipps bitte... Danke :o)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ PHP ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: