Fontes TTF no Allegro

Com a Lib AddOn AllegroFont é possível utilizar fontest TTF no Allegro com e sem AntiAliasing!

Primeiramente instale o AddOn, ou baixe o DevPak dele aqui. Então crie um projeto com Allegro. Linke a biblioteca estática da AlFont ANTES da do Allegro, assim: -lalfont.

Insira seu Header:

#include <alfont.h>

Quando estiver inicializando o Allegro, inicialize ela também:

alfont_init();

Pronto, vamos criar uma fonte e carregar a Arial do Windows:

ALFONT_FONT *arial = alfont_load_font("C:/Windows/Fonts/arial.ttf");

Vamos setar o tamanho da fonte:

alfont_set_font_size(arial, 40);

Tamanho 40! Você pode escolher o tamanho que quiser!

Agora para imprimir um texto na tela, utilizamos as funções da LIB

void alfont_textout_ex(BITMAP *bmp, ALFONT_FONT *f, const char *s, int x, int y, int color, int backg);
void alfont_textout_centre_ex(BITMAP *bmp, ALFONT_FONT *f, const char *s, int x, int y, int color, int backg);

void alfont_textprintf_ex(BITMAP *bmp, ALFONT_FONT *f, int x, int y, int color, int backg, const char *format, ...);
void alfont_textprintf_centre_ex(BITMAP *bmp, ALFONT_FONT *f, int x, int y, int color, int backg, const char *format, ...);

Como você pode ver, as funções são iguais as do Allegro, só muda o prefixo (alfont) e o parâmetro de fonte, que aceita uma fonte do Alfonte!

Para imprimir o texto com AntiAliasing, basta colocar um aa antes do ex de cada função, por exemplo:

alfont_textprintf_aa_ex(buffer, arial, 10, 10, 0x0000FF, -1, "Hello World!");

Bem fácil, né?

O Interessante também, são as funções:

int alfont_text_height(ALFONT_FONT *f);
int alfont_text_length(ALFONT_FONT *f, const char *str);

Que você pode pegar o tamanho (em pixels) da fonte ou string usando a fonte!

Mas no fim do seu programa, não se esqueça de liberar as fontes assim:

alfont_destroy_font(arial);

E finalizar o Alfont:

alfont_exit();

Bom uso disto! =D

Google Buzz
Compartilhar: Share this post with the world.
  • Twitter
  • Posterous
  • Facebook
  • del.icio.us
  • Digg
  • Friendfeed
  • Google
  • LinkedIn
  • Reddit
  • StumbleUpon
  • Technorati

Posts semelhantes:

  1. Fade In/Out com Allegro
  2. Fade In/Out com fblend no Allegro
  3. Entrada de Texto no Allegro
  4. MotionBlur com Allegro
  5. Algumas Implementações de Primitivas com Allegro

3 Comments

  • _ castilho
    13/06/2008 - 17:09 | Permalink

    qual é o procedimento para linkar a lib -lalfont no dev-c++? grato

  • 24/06/2008 - 11:30 | Permalink

    Olá!

    Primeiramente, desculpe pela demora da resposta, é que eu to com problemas de internet aqui! hehehe

    Então… No Dev-C++, vá em Propriedades do projeto, Parâmetros de Compilação, aí você adiciona no linker: -lalfont -lalleg

    É isso ae! ^^

    Falou

  • surfista
    30/03/2009 - 10:52 | Permalink

    Caso não funcione vá novamente em Propriedades do
    projeto, Parâmetros de Compilação,e adicione no linker: libalfont.a liballeg.a
    Copie os mesmos arquivos no diretorio de instalação do Dev-cpp e cole na pasta do projeto.

    Valeu pelo tutorial!!

  • Leave a Reply

    Your email address will not be published. Required fields are marked *

    *

    You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>