BitMapFont-Funktionen von Holzchopf

Übersicht BlitzBasic Codearchiv

Neue Antwort erstellen

Holzchopf

Meisterpacker

Betreff: BitMapFont-Funktionen von Holzchopf

BeitragSa, Okt 16, 2004 18:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Sodele, hab' vor längerem schon mal ein Paar nützliche BitMapFont -Funktionen gebastelt. Und jetzt hab ich mich halt dazu überwunden die (BOAH) durchzukommentieren Smile um sie euch nicht weiter vorenthalten zu müssen 8)

Um zu sehen was mit den Funktionen so möglich ist, bitte hier klicken.

Die Funktionen an sich sind nichts spezielles. Ich hab einfach die BB-Funktionen FontHeight, FreeFont, LoadFont, SetFont, StringWidth und Text genommen, sie um das Suffix _BMF erweitert und darauf geachtet, dass
1. sie von der Parametrierung her gleich bleiben wie die BB-Standard Befehle.
2. sie föllig darauf ausgelegt sind, mit den entsprechenden Bitmap-Font Dateitypen¹ zu arbeiten.
3. sie in jedes beliebige Projekt eingepflanzt werden können, dadurch, dass die Funktionsspezifischen Variablen alle ein Präfix (_BMF) erhalten haben (um Konflikte zu vermeiden).

¹) Die Dateitypen, welche unterstützt werden sind:
BFD, BMF (BMF1) und Standardgrafikformate wie BMP und PNG.
Die genaueren Erklärungen zu den einzelnen Formaten finden sich in der Beispiel.bb.
Achja, BMF ist ein ziemlich aufwändiges Format. Ich hab es so ausgelegt, dass es allerdings davon mehrere Varianten geben kann, im Header wird dann einfach noch die Variante mit angegeben. Derzeit existiert nur erst Variante 1, welche pro Pixel 2 Bits benötigt und sich wiederhohlende Pixel "abkürzt".

Im RAR-Archiv befindet sich zum einen ein Ordner mit den BMF-Only-Funktionen inkl. 3 Schriftarten (von mir 8) ) sowie eine Datei namens "Bit Read-Write.bb". Diese wird benötigt, damit die Laderoutine und die Speicherroutine für BMF-Dateien die Bits einzeln schreiben / lesen kann.
Damit es also überhaupt funktioniert, müsst ihr alles entpacken (am besten in einen Ordner, in dem ihr allseits verwendbare Includes habt) und in den Dateien "BMF-Generator.bb" und "BMF_Functions_Include ziemlich am Anfang der Dateien den Pfad fürs "Bit Read-Write.bb" Include abändern.

Falls ihr eigene Fonts machen wollt, nur zu. Hier die Richtlinien die es zu beachten gibt:

  • Die Breite / Höhe der einzelnen Zeichen ist frei wählbar, muss allerdings für jedes Zeichen in der Datei gleich sein.
  • In der Bitmap müssen die Zeichen so angeordnet sein, dass sich exakt 32 Zeichen pro Zeile befinden.
  • Es sind nur 7 Zeilen möglich, also 32*7=224 Zeichen (dh: Alle sichtbaren ASCI-Zeichen).
  • Die Gesamtabmasse der Bildatei müssen exakt (Zeichenbreite * 32) x (Zeichenhöhe * 7) betragen.
  • Wenn die Schriftart nach BMF exportiert werden soll, darf die Datei nur 3 Farben enthalten: Weiss (Farbe 1, Schriftfarbe), Schwarz (Farbe 2, Outlines) und Pink (RGB:255,0,255, Hintergrundfarbe).
  • Es ist empfehlenswert, die Matrizen für die einzelnen Zeichen nur so gross wie nötig zu wählen, da sonst ungebrauchter Speicherplatz draufgeht und sich die Ladezeiten verlängern.


Selbstverständlich dürft ihr nun die im Archiv enthaltenen Funktionen, Bild- und BitMapFont-Dateien frei verwenden. (Credits-Einträge bringen Schleim-Bonus Laughing , keine Credits-Einträge bringen nichts, machen auch nichts, denn BitMapFont-Routinen gibt es viele. Meine ist nur eine unter 1000en, und die werde ich in einem fertigen Spiel nicht so schnell wieder erkennen, es sei denn, ihr benutzt die BFD oder BMF Formate Rolling Eyes )

Wer noch andere, weitere, bessere Ideen für BMF-Varianten hat, also der Aufbau der Daten in der Datei & und die Möglichkeiten des Formats (mehr Farben etc...), möge mich bitte kontaktieren unter
info ät holzchopf punkt ch
( Diese Notstandsformatierung ist lächerlich, aber unser Forum wird von Bots durchsucht, das sag' ich euch Evil or Very Mad )

Am interessantesten ist mit Sicherheit der Befehl TextBlock_BMF. Seine Göttliche Kraft seht ihr auf dem Screenshot sowie in der Beispieldatei Razz )

Hier klicken, um die ultimative Bitmapfont-Funktions-Bibliothek runterzuladen

Nun, viel Spass wünscht
Holzchopf
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

Neue Antwort erstellen


Übersicht BlitzBasic Codearchiv

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group