Seite 1 von 4

Bitmap Fontsystem (Editor, Include, Fonts und Beispiele)

Verfasst: 08.03.2005 09:32
von Lebostein
Hallo PB-Freunde,

ich darf euch heute mein Bitmap-Fontsystem präsentieren, das ich schon seit längerem in Spielen und Anwendungen verwende und das nun endlich einen Editor bekommen hat. Mit dem beigefügten Editor lassen sich, basierend auf einer einfachen Bitmap und einem aufgelegten Raster, ASCII-Codes zuweisen, Buchstaben und Zeilenabstände festlegen, eine transparente und eine veränderliche Farbe auswählen usw. Der Editor verfügt nebenbei über allerlei Hilfsfunktionen wie automatische Zeichenbreitenermittlung, Änderung der Bitmapgröße durch Beschneiden und Hinzufügen von Pixelreihen sowie eine automatische Optimierung der Rastergröße. Der Font kann in Echtzeit ausprobiert werden, alle Änderungen werden im Beispielfenster sofort sichtbar. Hier ein Screenshot:

Bild

Herzstück des Fontsystems ist eine kleine und sehr simple Include-Datei, mit der man die bearbeiteten Fonts in beliebigen PB-Programmen und Spielen einladen und anzeigen lassen kann. Die Textausgabe erfolgt über eine Koordinate und eine Ausrichtung in horizontaler Richtung (linksbündig, zentriert oder rechtsbündig) sowie eine Ausrichtung in vertikaler Richtung (obenbündig, zentriert oder untenbündig). Zeilenumbrüche mit dem ASCII-Code 13 (Return) werden bei der Ausgabe berücksichtigt, so dass zum Beispiel ganze Textblöcke ausgerichtet dargestellt werden können (siehe Beispiele 'Example1.pb' und 'Example2.pb'). Jedem Font kann eine veränderliche Farbe zugewiesen werden, die zur Laufzeit beliebig verändert werden kann.

Mit dem Editor (+Quellcode) und der Include habe ich außerdem noch 28 Fonts mit reingepackt. Die Fonts stammen zum größten Teil aus Adventure- und anderen Spielen, aus dem Internet oder sind selbstgemacht. Ich kann nicht garantieren, dass die Verwendung der beigefügten Fonts ohne Verletzung irgendwelcher Copyrights geschieht, also bitte die Fonts nur zu Testzwecken verwenden.

Hier der Downloadlink zur aktuellen Version des Fontsystems:

http://www.purearea.net/pb/showcase/show.php?id=165

Viel Spaß damit!

Euer Lebostein


PS: Wer noch irgendwelche schöne Bitmap-Fonts bei sich rumliegen hat, kann sie mir ja schicken. Ich würde eine kleine Sammel-Datenbank mit den Fonts einrichten und sie zum Download anbieten, so eine Art Fundgrube für Bitmap-Fonts.

Verfasst: 08.03.2005 10:10
von Dostej
Wow - find ich cool.... so was hab ich schon länger gesucht. Das einzige was ich bisher gefunden hatte, war ne pseudokommerzielle form mit ziemlich vielen Bugs... praktisch unbrauchbar...

das sieht gut aus.. werd ich mal testen

Verfasst: 08.03.2005 11:48
von SoS
einfach nur klasse :allright:
Dagegen kommt mir mein Fontkonverter wie eine Lachnummer vor :mrgreen:

Verfasst: 08.03.2005 12:06
von ts-soft
:allright: Spitzenteil

Verfasst: 08.03.2005 15:31
von Lebostein
:D Danke!

Hab die Include noch beschleunigt, alle ASC(), MID() und RED(), GREEN() und BLUE() Befehle sind entfernt und durch schnellere Berechnungen ersetzt worden...

Verfasst: 08.03.2005 18:43
von benny
@Lebostein:

Habe mir Dein Prog eben mal runtergeladen und es kurz überflogen.
Sieht wirklich astrein aus :allright: Also - RESPEKT - von meiner Seite.


Solltest Du noch Bitmap-Font-Quellen suchen, so kannst Du Dir ja mal
folgenden Link anschauen :

http://cgi.algonet.se/htbin/cgiwrap?use ... t=fonts.pl

Dort gibt es über 300 (!) Bitmap-Fonts. Überwiegend gerippt aus
Amiga-Demos / Games (also Vorsicht zwecks Lizenzen/Copyright usw.)

Hier mal zwei Beispielfonts:

Bild

Bild

Verfasst: 09.03.2005 09:47
von Lebostein
@benny: Vielen Dank für den interessanten Link! Sind ein paar schöne Dinger dabei....

Verfasst: 10.03.2005 15:11
von Lebostein
Update!

Hier die überarbeitete Version. Folgende Neuerungen im Editor:

- durch den Einbau von ScrollAreaGadgets sind nun beliebig große Fonts editierbar (max. 1280 x 1280 Pixel... wer mehr braucht: Source anpassen)
- freie Auswahl des Zoomlevels zwischen 2x und 8x im Buchstabenfenster
- Erstellen eines Bitmapfonts aus einer beliebigen Windows-Schriftart (vorläufige Variante)
- Die veränderliche Vordergrundfarbe eines Fonts kann nun abgeschaltet werden (siehe unten)
- programminterne Unstimmigkeiten beseitigt
- 4 neue Großbuchstaben-Fonts hinzugefügt (Danke @benny)

Änderungen in der Include:

Durch das Abschalten der Vordergrundfarbe (zum Beispiel bei bunten Fonts) werden nun nicht mehr standardmäßig 2 Sprites pro Font reserviert (das spart Videospeicher). Nur wenn die Vordergrundfarbe aktiv ist, wird ein Mirror-Sprite für den Farbwechsel angelegt. Der Farbparameter der Funktion 'FontMapOutput()' hat im Falle abgeschalteter Vordergrundfarbe keine Bedeutung.

PS: Das Font-Format hat sich nicht geändert. Alle bisherigen Fonts können geladen werden.

Verfasst: 10.03.2005 19:19
von DarkDragon
Hmm... genau das gibts zwar schon lange(mit 255 Zeichen oder 128 Zeichen wählbar), aber was solls, danke.

Verfasst: 11.03.2005 09:59
von Lebostein
DarkDragon hat geschrieben:Hmm... genau das gibts zwar schon lange(mit 255 Zeichen oder 128 Zeichen wählbar), aber was solls, danke.
Meinst du damit das Erstellen eines Fonts aus einer TTF-Schriftart? Das hab ich nur vorläufig 'so zum Spaß an der Freude' mit eingebaut. Da gibt es sicher bessere Programme, da geb ich dir recht. Derzeit ist es nur ein stumpfes Schreiben von Buchstaben auf ein Image, d.h ich öffne die TTF nicht binär sondern nutze ein paar einfache PB-Drawing Funktionen. Vielleicht bastel ich da noch ein wenig dran, aber es ist nur eine Zusatzfunktion, die eigentlich nichts mit dem Sinn meines Programmes zu tun hat.