![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-10-31 18:50 |
共 47,815 主题排行 / 349,930 发帖 / 今日 0 篇 / 48,290 会员排行 |
| DOS开发编程 & 发展交流 (开发室) » 如何显示大字体 |
| 可打印版本 1,241 / 6 |
| 第1楼 fsblm | 发表于 2006-02-17 16:00 |
| 初级用户 发帖 10 积分 28 | |
|
如何显示大字体 各位大虾:
小弟刚学DJGPP+ALLEGRO遇到在图形模式下想显示一些大的日期与时间的问题。请帮忙解答一吓 #include "conio.h" #include "stdio.h" #include "dos.h" #include "stdio.h" #include "stdlib.h" #include "time.h" #include "allegro.h" BITMAP *b1,*b2,*BCK; PALLETE M32; main() { char tmp[128]; struct tm *ptr; time_t lt; allegro_init(); set_color_depth(16);/ t CRT color to 16 set_gfx_mode(GFX_AUTODETECT,640,480,0,0); b1=load_bitmap("tb1.bmp",M32); masked_blit(b1,screen,0,0,0,0,640,480); lt=time(NULL); ptr=gmtime(<); ptr=localtime(<); strftime(tmp,128,"%A\n",ptr); text_mode(-1); textout_centre(screen,font,tmp,345,280,-1);//在这里如何可以把字体调大一点 strftime(tmp,128,"%b-%d-%Y\n",ptr); textout(screen,font,tmp,300,290,-1);//在这里如何可以把字体调大一点 getch(); return 0; } |
|
| 第2楼 fsblm | 发表于 2006-02-18 11:23 |
| 初级用户 发帖 10 积分 28 | |
|
不是吧!!
也有没有理理我。。。。 请各位给点帮助好吗? |
|
| 第3楼 dos_jacky | 发表于 2006-02-19 01:32 |
| 初级用户 发帖 10 积分 124 | |
|
#include <allegro.h>
int main(void) { FONT *f1, *f2, *f3, *f4, *f5; FONT *tempfont; char tmp[128]; struct tm *ptr; BITMAP *b1,*b2,*BCK; time_t lt; allegro_init(); install_keyboard(); set_gfx_mode(GFX_AUTODETECT, 640, 480, 0, 0); set_palette(desktop_palette); clear_to_color(screen, makecol(255, 255, 255)); f1 = load_font("unifont.dat", NULL, NULL); f2 = extract_font_range(f1, ' ', 'A'-1); f3 = extract_font_range(f1, 'A', 'Z'); f4 = extract_font_range(f1, 'Z'+1, 'z'); tempfont = merge_fonts(f4, f5 = merge_fonts(f2, f3)); destroy_font(f1); destroy_font(f2); destroy_font(f3); destroy_font(f4); destroy_font(f5); acquire_screen(); b1=load_bitmap("tb1.bmp",NULL); lt=time(NULL); ptr=gmtime(<); ptr=localtime(<); strftime(tmp,128,"%A",ptr); textout_centre_ex(screen, font,tmp, SCREEN_W/2, SCREEN_H/2-50,makecol(0,0,0), -1); strftime(tmp,128,"%b-%d-%Y",ptr); textout_centre_ex(screen, tempfont,tmp, SCREEN_W/2, SCREEN_H/2 ,makecol(0,0,0), -1); release_screen(); readkey(); return 0; } 本來有附上編譯好的可執行檔,可是一直上傳不了。 你如果要的話,我在發mail到你的mail裡。 |
|
| 第4楼 fsblm | 发表于 2006-02-20 09:20 |
| 初级用户 发帖 10 积分 28 | |
|
谢谢 谢谢dos_jacky的指点,但是在我的电脑上面编译通不过,不知道是不是我所用的DJGPP+ALLEGRO版本与你的版本不同,你能把你所用的版本信息告诉我吗?或者能把这个例子发一个EMAILL给我吗?我的邮箱是[email protected] 在此先谢谢你。
|
|
| 第5楼 dos_jacky | 发表于 2006-02-20 13:50 |
| 初级用户 发帖 10 积分 124 | |
|
我使用的
allegro版本為:Version 4.2.0 (beta3) djgpp版本為:2.02版 gcc版本為:3.21版 程式正在發到你的mail中,請查收。 檔案內容(test.rar): test.c test.exe unfont.dat *******你的mail有問題!!!!請查明!!!************ This is an automatically generated Delivery Status Notification. Delivery to the following recipients failed. [email protected] [ Last edited by dos_jacky on 2006-2-20 at 14:02 ] |
|
| 第6楼 fsblm | 发表于 2006-02-21 08:13 |
| 初级用户 发帖 10 积分 28 | |
|
谢谢,对不起 对不起,我上面的邮箱地址写错了,写多了一个下划线。应该是[email protected]你可以重发一次给我吗?在此先谢谢,还有我现在使用的ALLEGRO为3。1版,里面好像没有LOAD_FONT()这个函数,你能把你用开的ALLEGRO库发一份过来给我吗?在此再次感谢你的帮助。
|
|
| 第7楼 dos_jacky | 发表于 2006-02-21 18:39 |
| 初级用户 发帖 10 积分 124 | |
|
已經發出,請查明。
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |