In memory of Ben “bushing” Byer, who passed away on Monday, February 8th, 2016.

Difference between revisions of "FreeTypeGX"

From WiiBrew
Jump to navigation Jump to search
(Initial Page Creation)
 
m (Addition of logo.)
Line 1: Line 1:
 
{{Infobox homebrewapp
 
{{Infobox homebrewapp
 +
| image = [[Image:FreeTypeGX.png|200px]]
 
| title = FreeTypeGX
 
| title = FreeTypeGX
 
| description = Library
 
| description = Library

Revision as of 18:51, 4 December 2008

FreeTypeGX
FreeTypeGX.png
General
Author(s)Armin Tamzarian
TypeDevelopment
Version0.1.3
Links
[[Here|Download]]

FreeTypeGX is a wrapper class for libFreeType which renders a compiled FreeType parsable font into a GX texture for Wii homebrew development. FreeTypeGX is written in C++ and makes use of a pre-buffered methodology to allow fast and efficient printing of text to the EFB.

This library was developed in-full by Armin Tamzarian with the support of developers in #wiibrew on EFnet, Chaosteil of libwiisprite, and DrTwox of GRRLIB.

Full Doxygen API documentation is included within the download archive for assistance with program integration.

Installation

  1. Before you begin ensure that you have the libFreeType Wii library installed in your development environment.
  2. Extract the FreeTypeGX archive into your project's development path.
  3. Include the FreeTypeGX header file in your code using syntax such as the following:
include "FreeTypeGX.h"

Usage

  • Place a copy of the desired TrueType or OpenType font you wish to use in the FreeTypeGX/ttf directory.
  • Modify the fontface.s file and change the value of the incbin variable to point to your font.
  • Modify the fontface.s file and change the value of the fontsize variable to the byte-size of the font file.
  • Within the file you included the FreeTypeGX.h file create an instance object of the FreeTypeGX class passing in the desired font point size:
FreeTypeGX *freeTypeGX = new FreeTypeGX(32);
Alternately you can specify a texture format you would like to which you would like to render the font characters.
FreeTypeGX *freeTypeGX = new FreeTypeGX(32, GX_TF_RGB565);
Currently supported textures are:
  • GX_TF_I4
  • GX_TF_I8
  • GX_TF_IA4
  • GX_TF_IA8
  • GX_TF_RGB565
  • GX_TF_RGB5A3
  • GX_TF_RGBA8
  • Using the allocated FreeTypeGX instance object call the drawText function to print a string at the specified screen X and Y coordinates to the current EFB:
freeTypeGX->drawText(10, 25, _TEXT("FreeTypeGX Rocks!"));
Alternately you can specify a GXColor object you would like to apply to the printed characters:
freeTypeGX->drawText(10, 25, _TEXT("FreeTypeGX Rocks!"), (GXColor){0xff, 0xee, 0xaa, 0xff});

License

FreeTypeGX is distributed under the GNU Lesser General Public License.