!!在线等:怎么样把字符A显示为点阵?

Raul_Shao 2007-02-05 04:40:32
要求如题,就是要把一个字符显示成为有点阵效果。
好像没有直接的转的函数哦。
很急,
请大家指教
...全文
228 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
luoxiangdong 2007-02-07
  • 打赏
  • 举报
回复
还有一个办法,先将字显示在一小块内存dc上,然后另外创建一个同样尺寸的bitmap,把刚才的方块按照你需要的点阵数进行分割.,然后取出每一个小块中间的颜色,去填充bitmap对应块,即可达到最简单的点阵效果..
luoxiangdong 2007-02-07
  • 打赏
  • 举报
回复
我以为只是英文字母.....
汉字的话,如果只要基本点阵效果,可以采用读取点阵字库的方式,还记得ucdos吗? 里面有一个汉字点阵文件,格式很简单.
YangAnShun 2007-02-06
  • 打赏
  • 举报
回复
Raul_Shao(Raul) 的方法很好理解。
还有个方法就是打开字库读取。
VC知识库有代码
Raul_Shao 2007-02-06
  • 打赏
  • 举报
回复
……………………………………………………………………
兄弟,知道汉字有多少吗?
luoxiangdong 2007-02-06
  • 打赏
  • 举报
回复
先让美工最做好每个字的位图,然后....嘿嘿
Raul_Shao 2007-02-05
  • 打赏
  • 举报
回复
CClientDC cdc(this);
CDC dcMemory;
CFont ft, *pOldFt;
cdc.SetBkColor(RGB(255,255,255));
cdc.SetTextColor(RGB(0,0,255));
ft.CreatePointFont(120, "新宋体", NULL);
pOldFt = cdc.SelectObject(&ft);
cdc.TextOut(0,0, "A");

COLORREF clrrf, chColor;
chColor = RGB(0,0,255);
BOOL b=FALSE;
for(int i = 0; i<14; i++)
{
for(int j =0; j<14; j++)
{
clrrf = cdc.GetPixel(i,j);
if (clrrf == chColor)
{
b = TRUE;
cdc.TextOut((i+1)*14, (j+1)*14, "O");
}
}
}
Raul_Shao 2007-02-05
  • 打赏
  • 举报
回复
大家指教啊,等的急啊
Raul_Shao 2007-02-05
  • 打赏
  • 举报
回复
问题就是怎么转?
syy64 2007-02-05
  • 打赏
  • 举报
回复
得先把字符串中的每一个字符都转换成位图。
vcPlayer 2007-02-05
  • 打赏
  • 举报
回复
要有相应的字库。

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧