amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

amiga-news.de Forum > Programmierung > OpenFont - kein alternativ Font [ - Suche - Neue Beiträge - Registrieren - Login - ]

-1- [ - Beitrag schreiben - ]

28.11.2007, 18:13 Uhr

MaikG
Posts: 5172
Nutzer
Ich benutze OpenFont, und will falls das kein Rom-Font ist bzw.
der Diskfont sich nicht im Ram befindet eine NULL zurückbekommen.
Jetzt bekomme ich, falls ein Font mit selben Namen aber anderer
größe im Speicher ist diesen.

Geht das?

Sinn der Sache ist die diskfont.library nur zu benutzen wenn
es sein muss.

[ - Antworten - Zitieren - Direktlink - ]

28.11.2007, 19:02 Uhr

thomas
Posts: 7717
Nutzer
@MaikG:

Aus den Autodocs:
Zitat:
font is zero if the desired font cannot be found. If the nam
font is found, but the size and style specified are not
available, a font with the nearest attributes is returned.



Wenn du FPF_DESIGNED setzt, bekommst du einen Font, der am besten passt. Wenn du es nicht setzt, bekommst du einen "konstruierten".

NULL bekommst du nur, wenn es den Font-Namen nicht gibt, aber nicht, wenn die Größe nicht stimmt.

Gruß Thomas

--
Email: thomas-rapp@web.de
Home: thomas-rapp.homepage.t-online.de/

[ - Antworten - Zitieren - Direktlink - ]

28.11.2007, 20:22 Uhr

akl
Posts: 265
Nutzer
@MaikG:
Wenn Du OpenFont() nimmst - und nicht OpenDiskFont() - dann wird die diskfont.library auch nichts laden. Wenn Du nicht willst, dass OpenFont() einen Font zurückgibt, der bereits per OpenDiskFont() geladen wurde, dann würde ich FPF_ROMFONT und FPF_DESIGNED als "Requirement" setzen.

Außerdem kannst Du mit AvailFonts() und AFF_MEMORY als Flag selbst überprüfen, welche Fonts schon im Speicher sind und passgenau die via OpenFont() anfordern, die nicht mehr geladen werden müssen.


[ Dieser Beitrag wurde von akl am 28.11.2007 um 20:23 Uhr geändert. ]

[ - Antworten - Zitieren - Direktlink - ]

28.11.2007, 20:47 Uhr

Holger
Posts: 8116
Nutzer
Zitat:
Original von akl:
@MaikG:
Wenn Du nicht willst, dass OpenFont() einen Font zurückgibt, der bereits per OpenDiskFont() geladen wurde, dann würde ich FPF_ROMFONT und FPF_DESIGNED als "Requirement" setzen.

Er schrieb:
Zitat:
Sinn der Sache ist die diskfont.library nur zu benutzen wenn
es sein muss.

Das fand ich eigentlich eindeutig...
Es geht also nicht darum, einen ROM-Font zu bekommen. (Dann könnte er ja gleich topaz/8 öffnen)
Zitat:
Außerdem kannst Du mit AvailFonts() und AFF_MEMORY als Flag selbst überprüfen, welche Fonts schon im Speicher sind und passgenau die via OpenFont() anfordern, die nicht mehr geladen werden müssen.
Auch das passt nicht zu dem Wunsch, die diskfont.library nur bei Bedarf zu benutzen.

@MaikG:
Die bleibt nur, OpenFont mit FPF_DESIGNED zu benutzen und dann die Größe des zurückgegebenen Fonts mit der angeforderten Größe zu vergleichen. Bei Abweichung kommst Du um die diskfont.library nicht herum.

mfg

--
Good coders do not comment. What was hard to write should be hard to read too.

[ - Antworten - Zitieren - Direktlink - ]

29.11.2007, 13:48 Uhr

MaikG
Posts: 5172
Nutzer
Danke, ich vergleiche jetzt die YSize die reingeht mit der
die rauskommt.

[ - Antworten - Zitieren - Direktlink - ]


-1- [ - Beitrag schreiben - ]


amiga-news.de Forum > Programmierung > OpenFont - kein alternativ Font [ - Suche - Neue Beiträge - Registrieren - Login - ]


.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten.
.