liuyug 发表于 2008-10-27 13:04:47

我的启动盘 - 中文菜单版

我的启动盘 - 中文菜单版

先Show一下界面:
1. CDShell 引导
http://blogimg.chinaunix.net/blog/upfile2/081026135524.png
2. Syslinux 引导同样的光盘
http://blogimg.chinaunix.net/blog/upfile2/081026135608.png
3. Syslinux 引导Slax
http://blogimg.chinaunix.net/blog/upfile2/081026135703.png
原理:
大家还记得在DOS字符模式下显示汉字的方法吧!我采用同样的方法,只不过将其用在引导盘上!

--------------------------------------------------------------------------------
有些朋友可能不熟悉DOS,我详细讲讲原理:
在dos终端模式下是不可以显示中文汉字的,只能显示英文。
汉字与英文的区别是:
1. 汉字代码用2个字节表示,英文用1个字节表示
2. 16点阵汉字要用32个字节存储字模,16点阵英文用16个字节存储字模。
在DOS终端模式下用的是16点阵英文,所以我们有了一种可能性:
可不可以改写终端模式下的16点阵英文字库,使其显示的不是原有的英文字,而是汉字
如:
我们输入AB,正常显示的是AB,但如果改变AB的字模,用汉字的字模代替,这样输入AB字符,并不显示AB,而是显示一个汉字。
将一个汉字从中间劈为两半,左面部分顶替A的字模,右面部分顶替B的字模。

在实际中,当然不能改写AB的字模,前128个字符的字模都不能修改,我们显示英文字符还要用的。只能动用后128字符的字模,这样就带来局限性:
1. 最多只能显示64个不同的汉字(128/2),对于启动菜单,64个不同的汉字足够,如果你超过,那我没办法
2. 不能用DOS后128字符,因为这部分我们用汉字占领了,DOS下的制表符不能用,好多引导软件都用到了制表符。
3. 在VGA模式下,汉字中间会有一个空白,如我的CDShell截图,但在vesavga模式下没有,见syslinux截图

为方便制作,下面的程序就是完成这个转换过程的。
用法:
hzpsf -e 英文字体 -z 中文字体 -c 启动字体 -i 中文版的配置文件 -o 经过处理的配置文件
引导时使用“经过处理的配置文件”, 并在配置文件中引用生成的“启动字体”文件。

不知道讲明白没有,这需要一些技术根底。

我的例子,大家参考boot_sample.zip

解压缩boot_sample.zip到A:
syslinux.exe a:
然后用A:启动就可以看到菜单了
--------------------------------------------------------------------------------
我独自编写一个转换程序,再次打包,包含了字体文件:

1.0.2.100版      
http://blogimg.chinaunix.net/blog/upfile2/081222124709.zip

更新:
bug 修理



功能:
1. 提取英文字模和中文字模,做成自己的字体文件。
2. 转换汉字编码以适合对应的字体文件。

具体光盘内容不多说了,从网上都可找

[ 本帖最后由 liuyug 于 2008-12-22 12:54 编辑 ]

liuyug 发表于 2008-10-27 13:43:23

原帖由 dzy 于 2008-10-27 13:37 发表 http://bbs.wuyou.net/images/common/back.gif
boot_sample.zip 在哪儿啊???

加到1楼了

dzy 发表于 2008-10-27 13:37:15

boot_sample.zip 在哪儿啊???

barton 发表于 2008-10-27 13:30:25

sample在哪里?


支持。。。

网上飞鹰 发表于 2008-10-27 13:46:17

楼主的syslinux中文菜单不错!俺也研究看看。

[ 本帖最后由 网上飞鹰 于 2008-10-27 13:54 编辑 ]

spadek 发表于 2008-10-27 14:28:36

不知本是大师的VtMagiK 6.10 GBK版能做这个么。

cnmyxk 发表于 2008-10-27 14:49:27

曲线行军.
殊途同归

bartonking 发表于 2008-10-27 14:53:19

第2张 Syslinux 的效果看起舒服些,就是不知道怎么弄的,

wang6610 发表于 2008-10-27 14:58:03

我这里下不了。。。。。。。

endless1397 发表于 2008-10-27 16:18:58

学习了,谢谢

dzy 发表于 2008-10-27 17:16:52

研究了二小时!

哪儿 hzpsf.exe 用什么参数也不行,总是出现帮助信息!转换不鸟!!

晕~~

dony2006 发表于 2008-10-27 18:50:09

很好,感着很不错
下载来试用!
多谢分享!

wang6610 发表于 2008-10-27 19:53:55

请楼主提供可用的英文字库,和汉字字库。

liuyug 发表于 2008-10-27 21:55:31

英文字库,和汉字字库,已经打包上传,请看1楼

shijs 发表于 2008-10-27 22:06:43

已经下载,按楼主的方法试试。

barton 发表于 2008-10-27 23:03:53

稍微测试了下,居然是这种效果,用sample里的psf和cfg就没问题 :(

[ 本帖最后由 barton 于 2008-10-27 23:05 编辑 ]

怒火狂雷 发表于 2008-10-27 23:29:05

收藏学习中,谢谢分享

网上飞鹰 发表于 2008-10-27 23:50:01


用法:

hzpsf -e 英文字体 -z 中文字体 -c 启动字体 -i 中文版的配置文件 -o 经过处理的配置文件
引导时使用“经过处理的配置文件”, 并在配置文件中引用生成的“启动字体”文件。


这个命令中的“英文字体”和“中文字体”是不是直接用WINDOWS或linux当中的字体,如arial.ttf(英文字体)和simsun.ttc(宋体),“启动字体”又是怎样得来?我用这个命令“hzpsf -e arial.ttf -z simsun.ttc -c myfont.psf -i isolinux_zh.cfg -o isolinux.cfg”只生成isolinux.cfg,myfont.psf没生成,能否介绍启动字体如何生成?谢谢!

liuyug 发表于 2008-10-28 09:10:13

原帖由 网上飞鹰 于 2008-10-27 23:50 发表 http://bbs.wuyou.net/images/common/back.gif


这个命令中的“英文字体”和“中文字体”是不是直接用WINDOWS或linux当中的字体,如arial.ttf(英文字体)和simsun.ttc(宋体),“启动字体”又是怎样得来?我用这个命令“hzpsf -e arial.ttf -z simsun.t ...

我的1楼附件中已经附上字库文件。
不支持TTF,只支持16点阵字库。

网上飞鹰 发表于 2008-10-28 14:05:22

原帖由 liuyug 于 2008-10-28 09:10 发表 http://bbs.wuyou.net/images/common/back.gif


我的1楼附件中已经附上字库文件。
不支持TTF,只支持16点阵字库。

成功了!谢谢指点!
用的命令是:
hzpsf -e GREEK.F16 -z chs16 -c myfont.psf -i isolinux_zh.cfg -o isolinux.cfg
字体附上。

[ 本帖最后由 网上飞鹰 于 2008-10-30 15:54 编辑 ]

barton 发表于 2008-10-28 14:55:58

效果不错,支持

用pxelinux看看是否成功。


成功加载psf字体、读取重新生成的cfg文件

[ 本帖最后由 barton 于 2008-10-28 15:27 编辑 ]

云飞日月 发表于 2008-10-28 18:12:12

大力支持,这下syslinux中文的问题顺利解决

云飞日月 发表于 2008-10-28 19:40:10

楼主,为啥我不管用什么字体,编辑选项,都是如图所示的样子?其他汉字都是好的

liuyug 发表于 2008-10-29 10:19:29

原帖由 云飞日月 于 2008-10-28 19:40 发表 http://bbs.wuyou.net/images/common/back.gif
楼主,为啥我不管用什么字体,编辑选项,都是如图所示的样子?其他汉字都是好的

可能转换程序有BUG,把你的配置文件给我一份

liuyug@yahoo.cn

网上飞鹰 发表于 2008-10-29 15:32:58

原帖由 liuyug 于 2008-10-29 10:19 发表 http://bbs.wuyou.net/images/common/back.gif


可能转换程序有BUG,把你的配置文件给我一份

liuyug@yahoo.cn
我的也是这样
http://bbs.wuyou.net/data/attachment/forum/20081029_10ecc87e047f67dee842VYMde3tNALcA.jpg

云飞日月 发表于 2008-10-29 20:50:50

邮箱已发,防止未收到,附件也发一份

barton 发表于 2008-10-29 22:01:58

原帖由 <i>zhxy9804</i> 于 2008-10-29 21:51 发表 <a href="http://bbs.wuyou.net/redirect.php?goto=findpost&pid=1520064&ptid=131706" target="_blank"><img src="http://bbs.wuyou.net/images/common/back.gif" border="0" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open(this.src);}" onmousewheel="return imgzoom(this);" alt="" /></a><br />
高人出现,非常支持这样的好帖了,这个帖子应该是精华才对! <br />


是啊,找个版主来加个精。。。。。

网上飞鹰 发表于 2008-10-29 23:10:50

原帖由 barton 于 2008-10-29 22:01 发表 http://bbs.wuyou.net/images/common/back.gif



是啊,找个版主来加个精。。。。。

是啊!应该加精!顶贴!让版主看到....

liuyug 发表于 2008-10-30 10:13:55

已经更新软件,请从新下载!



[ 本帖最后由 liuyug 于 2008-10-30 10:15 编辑 ]

云飞日月 发表于 2008-10-30 10:35:11

直接用IE下,下不起来
用迅雷下好了
a31209c1508ae47440643d9c2c2289fe   hzpsf.exe
这个MD5是否正确?
页: [1] 2 3 4 5 6
查看完整版本: 我的启动盘 - 中文菜单版