amiga-news DEUTSCHE VERSION
.
Links| Forums| Comments| Report news
.
Chat| Polls| Newsticker| Archive
.

amiga-news.de Forum > Programmierung > Fonts beim Programmstart initialisieren? [ - Search - New posts - Register - Login - ]

-1- [ - Post reply - ]

2005-03-10, 22:46 h

Amigalien
Posts: 63
User
Hallo alle zusammen,
ich hab hier noch ein kleines Problem mit den Fonts. Muss ich den beim Start (bevor ich ihn benutze) noch irgendwie öffnen (wenn ja, wie?)?
Wenn ich den Font vorher via ASL-Requester öffne, geht das ganze. Allerdings möchte ich den Font festlegen.


struct TextAttr FONT;
struct IntuiText text;
char textinhalt[1000];
ULONG schwarz;
[...]

FONT.ta_YSize=(UWORD) 14;
FONT.ta_Style=(UBYTE) 0x0;
FONT.ta_Name=(STRPTR) "Bitstream Vera Sans Mono.font";
FONT.ta_Flags =(UBYTE) 0x2;

[...]

text.FrontPen = schwarz;
text.BackPen = 0;
text.DrawMode = JAM1;
text.LeftEdge = 10;
text.TopEdge = 20;
text.ITextFont = &FONT;
text.IText = textinhalt;
text.NextText = NULL;

[...]

IIntuition->PrintIText(win->RPort, &text, 0, 0);



Ich danke schon einmal für die Hilfe.

[ - Answer - Quote - Direct link - ]

2005-03-11, 01:55 h

DariusBrewka
Posts: 899
[Banned user]
Hmm, leider kann ich nicht erkennen was du fragen möchtest, irgendwie finde ich deine Frage sehr konfus gestellt!

[ - Answer - Quote - Direct link - ]

2005-03-11, 09:38 h

Amigalien
Posts: 63
User
Ich möchte den Font "Bitstream Vera Sans Mono.font" (Größe 14) zum Schreiben verwenden. Muss ich diesen vor Gebrauch initialiseren/laden? Wenn ja, wie?

Oben sind Ausschnitte aus meinem Code. So funktioniert es leider nicht...

[ Dieser Beitrag wurde von Amigalien am 11.03.2005 editiert. ]

[ - Answer - Quote - Direct link - ]

2005-03-11, 10:17 h

thomas
Posts: 7721
User

PrintIText sollte den Font für dich öffnen. Allerdings benutzt es dafür offenbar IGraphics->OpenFont, welches nur im Speicher sucht. Deshalb solltest du den Font vorher mit IDiskFont->OpenDiskFont öffnen, damit er in den Speicher geladen wird. Am Ende mußt du den Font dann natürlich mit IGraphics->CloseFont wieder schließen.

Gruß Thomas

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

[ - Answer - Quote - Direct link - ]

2005-03-11, 10:41 h

Amigalien
Posts: 63
User
Vielen Dank. Das Problem ist hiermit gelöst.

[ - Answer - Quote - Direct link - ]

2005-03-11, 18:16 h

Holger
Posts: 8116
User
Noch ne kleine Anmerkung:
Zitat:
Original von Amigalien:
FONT.ta_Name=(STRPTR) "Bitstream Vera Sans Mono.font";

Strings sind in C immer 0-terminiert, man braucht als kein hinten ranzuhängen.

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

[ - Answer - Quote - Direct link - ]

2005-03-11, 18:25 h

thomas
Posts: 7721
User

Wenn wir schon dabei sind, du solltest für Style und Flags auch lieber die Namen nehmen, als irgendwelche nichtssagende Zahlen.

Außerdem sind Namen mit nur Großbuchstaben für Konstanten vorbehalten.

Also

struct TextAttr font;

font.ta_Style =(UBYTE) FS_NORMAL;
font.ta_Flags =(UBYTE) FPF_DISKFONT;

Gruß Thomas

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

[ - Answer - Quote - Direct link - ]


-1- [ - Post reply - ]


amiga-news.de Forum > Programmierung > Fonts beim Programmstart initialisieren? [ - Search - New posts - Register - Login - ]


.
Masthead | Privacy policy | Netiquette | Advertising | Contact
Copyright © 1998-2025 by amiga-news.de - all rights reserved.
.