[vedio] support no-ascii fonts?

Sascha Hauer s.hauer at pengutronix.de
Sun Oct 25 23:39:09 PDT 2015


Hi Kevin,

On Fri, Oct 23, 2015 at 03:28:18PM +0800, Kevin Du Huanpeng wrote:
> Hi, How about add a index before get fontdata?
> so, we will able to support non-ascii fonts.
> like:
> 	drivers/video/fbconsole.c
> 	-->	static void drawchar(struct fbc_priv *priv, int x, int y, char c)
> 		{
> 			...
> 	-		inbuf = &priv->fontdata[c * priv->font_height];
> 	+		if(priv->index) {
> 	+			inbuf = look up index in the table.
> 	+		}
> 	+		else {
> 	+			inbuf = &priv->fontdata[c * priv->font_height];
> 	+		}
> the index table like:
> 	struct font_index fontname_index = {
> 		{ 0xXXXX, 0xYYYY },	/* where, 0xXXXX is the unioncode of the char     */
> 		{ 0xXXXX, 0xYYYY },	/* the 0xYYYY is the index of the fontdata array. */
> 		{ 0xXXXX, 0xYYYY },	/* normally, we don't need a full char set.       */
> 		{ 0xXXXX, 0xYYYY },	/* just put the used chars in the table.          */
> 		{ 0xXXXX, 0xYYYY },	/* we also have a tool to generate fontdata array.*/
> 	};

If you want to support non-ascii fonts then why don't you simply add
one? Or is your concern that too much binary size is used when you only
need a small fraction of a font but you always have to provide 256
chars?

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list