final AbstractFontRasterizer createFontRasterizer(BitmapFont class143, ImageSprite[] sprites,
			      boolean supportsAlpha) {
	int[] indexWidths = new int[sprites.length];
	int[] indexHeights = new int[sprites.length];
	boolean isAlphaIndexed = false;
	for (int i = 0; i < sprites.length; i++) {
	    indexWidths[i] = ((ImageSprite) sprites[i]).indexWidth;
	    indexHeights[i] = ((ImageSprite) sprites[i]).indexHeight;
	    if (((ImageSprite) sprites[i]).alphaIndex != null)
		isAlphaIndexed = true;
	}
	if (supportsAlpha) {
	    if (isAlphaIndexed)
		return new IASoftwareFontRasterizer(this, class143, sprites, indexWidths, indexHeights);
	    return new DASoftwareFontRasterizer(this, class143, sprites, indexWidths, indexHeights);
	}
	if (isAlphaIndexed)
	    throw new IllegalArgumentException("");
	return new BasicSoftwareFontRasterizer(this, class143, sprites, indexWidths, indexHeights);
    }