【发布时间】:2021-07-03 19:39:42
【问题描述】:
我目前正在学习字体图和位图, 我希望能够获取此字体图,并将其以像素为单位输出到屏幕上。
unsigned char glyph_a[][8] =
{
{0x00, 0x00, 0x3c, 0x02, 0x3e, 0x42, 0x3e, 0x00},
}
我正在尝试使用的功能是
void draw_Glyph(char *glyph_a)
{
int x, y;
int set;
for (x=0; x < 8; x++)
{
for (y=0; y < 8; y++)
{
set = glyph_a[x] & 1 << y;
}
}
}
SDL 提供了一个名为 SDL_RenderDrawPoint 的函数,该函数接受渲染器以及位置的 x 和 y 值。
C 有一个名为 putpixel() 的图形库,它也只接受像素的 x 和 y 值,并且还接受颜色作为最后一个参数。
我不确定我应该使用什么函数来专门将其输出到像素。任何建议将不胜感激。
【问题讨论】:
-
函数
putpixel()是古老的<graphics.h>标头的一部分,与SDL 没有任何关系。如果你想在SDL_Renderer上绘制一个像素,你应该使用SDL_RenderDrawPoint()。此外,如果要更改正在绘制的像素的颜色,请先调用SDL_SetRenderDrawColor(),然后再调用SDL_RenderDrawPoint()。 -
@Ruks 那么获取 SDL_RenderDrawPoint() 函数的 X、Y 值的方法是什么,我是否应该将该 set 函数设为 set_x 和 set_y 以获得我正在寻找的结果?感谢您的帮助!