Strumento per creare un carattere bitmap da un carattere di tipo reale [chiuso]


26

Quale strumento usi per convertire i caratteri ttf in caratteri bitmap?

Di seguito è riportato un elenco di funzionalità che sto cercando. Sarei davvero felice con qualsiasi strumento, ma uno che avesse queste caratteristiche sarebbe meglio.

  • genera un atlante di trama power-of-2
  • file di configurazione analizzabile (quindi non devo usare la loro libreria di rendering)
  • informazioni sulla crenatura dell'output
  • piattaforma incrociata
  • una libreria di rendering sarebbe ottima se mi permettesse di effettuare le chiamate OpenGL effettive.

Quindi quale strumento hai usato? Ne eri felice?


Ho citato la multipiattaforma mentre programma su una macchina Linux. Faccio il doppio avvio di Windows 7 in modo da poter giocare, ma in genere non ci sviluppo.
deft_code

Risposte:


19

Font Builder

Font Builder fa quasi tutto ciò di cui ho bisogno. Sia Font Studio che Angel Code's BMFont eseguono attività simili. Ecco alcune delle funzionalità di Font Builders.

  • Un'app QT, quindi funziona ugualmente bene su tutte le piattaforme.
  • Open source in modo da poter estendere facilmente l'app se necessario
  • Progettato per consentire agli esportatori di immagini e descrizioni (layout) personalizzate, rendendo ancora più semplice l'estensione
  • Carica i caratteri dal filesystem anziché dal registro di Windows. Questo rende molto più semplice generare caratteri di trama dai miei TTF.
  • Ridimensiona automaticamente l'immagine finale, quindi non ho bisogno di indovinarlo (come in FontStudio). Inoltre, queste trame possono essere vincolate ad un potere di 2 dimensioni.
  • Le coppie di crenatura sono supportate, in modo che le informazioni possano essere esportate se il TTF le utilizza.

Non è tutto perfetto comunque. I plugin di layout predefiniti fanno schifo. Lo strumento Layout casella riempie la trama dall'alto in alto a sinistra in basso a destra usando i caratteri in ordine alfabetico. Non molto efficiente. L'ho modificato per ordinare prima i caratteri per altezza e rapidamente migliorato la sua efficienza (un cambio di 2 righe).


BmFont fa il lavoro, aveva buone opzioni e posso usare la trama più di 128x128 dimensioni, grazie L'unica cosa necessaria era la corretta impostazione di esportazione come trama png e tipo di carattere a 32 bit
Diljeet

10

Google ha mostrato alcune di quelle bestie. Questo potrebbe essere vicino a quello che stai cercando
http://www.angelcode.com/products/bmfont/

Citi multipiattaforma, ma intendi lo strumento o l'output? (che sarebbe cross platform forse a parte l'endianness)


Ottimo strumento ma genererà solo bitmap dai caratteri di sistema. Ho un particolare file TTF che vorrei usare. Inoltre non gli piace molto il vino.
deft_code

8
Non potresti aggiungere il TTF come carattere di sistema?
Kaj,

4

Prova FontStudio: http://www.ogre3d.org/forums/viewtopic.php?f=11&t=47802

È fatto appositamente per la creazione di caratteri bitmap per i giochi.

Pubblico un link al forum Ogre3D, perché al momento non ha una propria casa.

Trova un collegamento all'ultima versione nell'ultimo post di quell'argomento (pagina 2).


Ottimo strumento ma genererà solo bitmap dai caratteri di sistema. Ho un particolare file TTF che vorrei usare.
deft_code

1
Ciao, sono il creatore di Font Studio, ho messo la fonte di Font Studio su bitbucket. bitbucket.org/michael_pote/font-studio
Mikepote,


2

Esistono molti strumenti complicati e ricchi di funzionalità, ma il mio strumento preferito per la creazione di caratteri bitmap è Bitmap Font Generator (CBFG) di Codehead . È uno strumento semplice che fa molto bene una cosa. È chiaramente documentato con suggerimenti per l'implementazione.

Come la maggior parte dei creatori di font bitmap, è ovviamente indipendente dall'API grafica perché esporta semplicemente un'immagine (e una struttura di dati di facile lettura). Tuttavia, implementare il proprio sistema di rendering del testo, in OpenGL o Direct3D, non è troppo difficile: renderizzare un quad per ogni lettera e applicare la trama del font bitmap con coordinate appropriate.

Spero che aiuti!

Nota: questa è solo un'applicazione Win32, ma la consiglio comunque!


2

Un ottimo strumento per Mac è Glyph Designer ed è diventato lo strumento preferito dagli utenti Cocos2D. Ha molte funzionalità ed è stato recentemente aggiornato per includere il supporto della riga di comando!


9
In genere qui è considerata una forma scadente per non rivelare chiaramente la tua affiliazione con i prodotti che stai raccomandando.
Josh,

1

L'ultima volta che stavo cercando questo (per un gioco per iPhone), ho provato varie opzioni ma non sono riuscito a trovarne uno che facesse tutto ciò che desideravo. Avevo bisogno di renderizzare una singola trama usando caratteri molto piccoli da un carattere TTF commerciale. Dovevo essere in grado di specificare gli intervalli di caratteri in modo che contenesse solo i caratteri di cui avevo bisogno. Volevo che racchiudesse i glifi il più strettamente possibile. Avevo bisogno di coordinate di trama in fase di esecuzione. Non mi importava della crenatura "reale", ma avevo bisogno di misurazioni dei glifi in fase di esecuzione in modo che fossero spaziate sensibilmente. Quindi ho scritto una piccola app per Windows che ha reso tutti i personaggi e salvato le spaziature ABC (come riportato da Windows) insieme alle coordinate delle trame.

A proposito, se si desidera eseguire il rendering di testo molto piccolo (come meno di 16 pixel di altezza) in XP o Vista, si verificheranno carenze con l'antialiasing di Windows. Una soluzione semplice per me era usare http://drwatson.nobody.jp/gdi++/index-en.html per ottenere un supersampling trasparente. Se dovessi ricominciare da capo, probabilmente prenderei lo stesso approccio ma guarderei FreeType2 invece del rendering del testo nativo.

Se il tuo testo non viene aggiornato spesso, puoi semplicemente utilizzare il rendering del testo della piattaforma (o forse FreeType) per rendere interi blocchi a trama come necessario in fase di runtime. Quindi devi solo renderizzare un singolo quad per ogni stringa, ma l'allocazione delle trame diventa più complicata. Il lato positivo, tuttavia, si ottiene un rendering e un layout del testo impeccabili gratuitamente su quelle difficili lingue asiatiche insieme al codice GL significativamente più veloce. Il rendering di molti singoli personaggi è costoso, anche con tri-strip degenerate o quant'altro.



0

La parola chiave che stai cercando è un "rasterizzatore". XNA ne ha uno integrato. Una rapida ricerca su Google fa apparire FreeType . Non sono sicuro di cos'altro c'è là fuori.


2
FreeType è più una "libreria di font-rasterizzazione". Non è esattamente un'applicazione che crea trame (con potenza di 2) dai caratteri. FreeType sarebbe una buona scelta se decidessi di scrivere questo strumento da solo.
Bummzack

0

Se vuoi uno strumento interattivo, potresti dare un'occhiata a FontForge , che è un editor di font completo che supporta una varietà di strumenti per convertire i caratteri TTF in formati bitmap. Supporta vari tipi di script, quindi dovresti essere in grado di integrarlo anche in una pipeline.


1
AFAIK FontForge può creare Bitmap-Fonts, ma questi sono sostanzialmente diversi da ciò di cui ha bisogno l'OP. Un carattere bitmap è come un file di caratteri ma contiene bitmap (preferibilmente di varie dimensioni) per ciascun carattere. Ha bisogno di renderizzare un carattere su una trama, quindi il risultato non sarà un carattere bitmap ma un'immagine.
Bummzack


0

un nuovo generatore di font bitmap è stato rilasciato per OS X: bmGlyph (http://www.bmglyph.com). disponibile solo sul Mac App Store. atlanti di font e bitmap (hd / sd) con molte funzionalità.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.