我有一个set_pixel
函数(一个设置示例显示中像素颜色的函数),我只有这种输出方法可以打印到显示器。
我试图在屏幕上打印一些字符用于调试和其他一般用途,但我发现实现这一目标的唯一方法是逐个像素地打印每个字母,这是一个非常缓慢而乏味的事情,考虑到我将使用大写和数字。
例如,这是用于打印A' A'使用由set_line
函数组成的简单set_pixel
函数。
void draw_A(int x, int y, int charWidth, int charHeight, int RGB)
{
//first draw a line along the left side:
set_line(x, y, x, y+charHeight,RGB);
//draw a line across the top:
set_line(x,y,x+charWidth,y,RGB);
//draw a line along the right side:
set_line(x+charWidth,y,x+charWidth,y+charHeight,RGB);
//finally close in the box half way up
set_line(x,y+(charHeight/2),x+charWidth,y+(charHeight/2),RGB);
}
为此,我在C
环境中使用freestanding
作为我的语言,没有标准库,如<stdio.h>
或任何类型的库,但我可以重新使用实现我想的东西或移植一些库。
如何在不逐像素或逐行的情况下实现这一目标?提前致谢!