分享
分销 收藏 举报 申诉 / 8
播放页_导航下方通栏广告

类型分享:gfxmenu定制高级教程(新增可定制菜单).doc

  • 上传人:pc****0
  • 文档编号:9009396
  • 上传时间:2025-03-11
  • 格式:DOC
  • 页数:8
  • 大小:38.50KB
  • 下载积分:10 金币
  • 播放页_非在线预览资源立即下载上方广告
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    分享 gfxmenu 定制 高级 教程 新增 菜单
    资源描述:
    分享:gfxmenu定制高级教程(新增可定制菜单) 本教程介绍从源代码的角度来定制gfx的菜单,比较适合喜欢DIY的用户。我修改了一下gfxboot的代码,使得定制工作完全可以在Windows环境下运行,也方便没有Linux的用户了。 1,下载和编译 首先,下载msys工具包: 编译工作需要在sh环境下进行。工具包里没有cpio,但在帖子"grub4dos 的 gfxmenu 支持"的#9可以找到,把文件复制到bin目录或者系统路径能找到的地方。 然后,下载SuSE风格的配置文件: 3.2系列: 3.3系列: 3.3系列可定制菜单: 输入 make 就能编译成功,生成文件在 boot/message。 2、基本定制 back.jpg 背景图片。置换后,再运行一下make就能把新的图片加进message,比用cpio命令要快。 help-boot.en.html, help-boot.zh_CN.html, help-install.en.html, help-install.zh_CN.html 中英文帮助信息,可以按自己的需要进行修改。html语句不要用得太复杂,不然gfxmenu可能处理不了。 po/bootloader.pot, po/zh_CN.po 中英文的信息翻译,bin目录里是一些有用的工具,在README里有介绍。比如说,要加一个新翻译Boot Windows,可以在po目录里输入: bin/add_text bwin "Boot Windows" 然后,打开zh_CN.po,找到 #. txt_bwin msgid "Boot Windows" msgstr "" "" 改为 "启动Windows" 就行了。记得要使用UTF-8编码。 16x16.fnt 在3.2系列里,生成字体的程序getx11font需要X-Window的支持,在Windows下无法使用。因此,不要运行make font来生成字体。里面的16x16.fnt是我预先定制的,包含500个常用汉字。 在3.3系列里,生成字体的程序mkblfont可以在Windows下使用,我把相应的exe文件加上了。目录里的chs.txt是包含的汉字,共有3500个,应该是足够了。如果有缺字的话,可以修改chs.txt,然后运行make font生成新的字体文件。不过,新版字体和旧版是不兼容的,不能把这里生成的字体拿到3.2系列里用。 字体缺省使用宋体,你也可以按需要改动。打开Makefile,找到: aafont:         mkblfont -v -l 18 \         -a 0x20-0x7e,0xa0-0xbf,0xc1-0xcb,0xcd-0xce,0xd0-0xd1,0xd3-0xd8,0xda-0xff \         -t chs.txt \         -f simsun:prop=2:space_width=4:size=17:nobitmap=1:autohint=1 \         16x16.fnt >16x16.log 可以把simsun改为其他值。控制面板的字体里显示了系统里所有的字体,只要把文件名里的后续去掉就行了。比如说,黑体是simhei。 3、使用可定制菜单(3.3系列) 为了方便大家修改message的参数,我制作了一个可定制的message文件。你可以通过编辑message里的gfxboot.cfg文件,来达到定制的目地,而不需要进行重新编译了。 message里的gfxboot.cfg列出所有的选项,不过在变量前都加上了#,变为注释了。使用时,先把#和其后的空格去掉,然后再根据自己需要修改数值。 目前支持的参数有: boot_show (缺省值0) 值为0时,隐藏Options编辑框,值为1时显示。因为options框实际上是没有作用的,建议把它隐藏起来。 xmenu_hide_current (缺省值0) 值为1时,隐藏语言下面的“简体中文”的字样。 menu_start_x, menu_start_y 菜单左上角的x,y坐标。 menu_max_entries(缺省值8) 最多显示的菜单行数 menu_bar_min_width(缺省值300) 选择菜单条的最小宽度。如果不想菜单条过长,可以把这里的值设得很小,例如1,那样的话,菜单条的长度就会自动设为菜单项的最大长度了。 menu_text_normal(缺省值0xfffff,即白色) 一般菜单项的字体颜色,使用rgb的数值 menu_text_select(缺省值0) 当前选择项的字体颜色 boot_text_options (缺省值0xfffff) options框字体颜色 boot_text_normal (缺省值0xfffff) 启动文本字体颜色 infobox_bg (缺省值0xd8deed) 帮助信息框的背景颜色 infobox_text_normal(缺省值0) 帮助信息框的字体颜色 menu_bar_color (缺省值0xffffff) 菜单条的颜色 loading_color (缺省值0x295202) 载入框颜色 title_bg (缺省值0x4f9805) 弹出框标题背景颜色 hide_reboot (缺省值0) 值为1时,不显示重启的按钮。 hide_poweroff (缺省值0) 值为1时,不显示关机的按钮。 disable_num_key(缺省值0) 缺省时,按1-9键就会启动相应的菜单项,把disable_num_key设为1可以屏蔽这一功能。 hide_help(缺省值0) 设为1时,隐藏F1帮助的菜单项 hide_lang(缺省值0) 设为1时,隐藏F2语言选择的菜单项 custom_width,custom_height,custom_depth 自定义屏幕大小,比如说, custom_width=1024 custom_height=768 custom_depth=16 缺省的屏幕大小为800x600x16。 panel_normal 面板的颜色 panel_title 面板标题的颜色 panel_high 面板快捷键的颜色 panel_bg 面板弹出框背景颜色 panel_border 面板弹出框边框颜色 4、风格定制 这就需要修改inc文件。该文件是类似于forth语法的,要看懂不容易。不过,不少文件的开始就是重要常量的定义,只需要修改它们的值就能定制gfxmenu的行为。比如说,在xmenu.inc里面有很多可以定制的参数: /xmenu.normal.bg        lightgray def /xmenu.normal.fg        black def /xmenu.selected.fg        white def /xmenu.selected.bg        0x6c6c6c newcolor 这里就是定义普通文本和选择文本的颜色。颜色可以用常量black,white,blue,red,green, yellow, lightgray, dotcolor, lightdotcolor, somegreen和lightblue(它们在common.inc里定义), 也可以直接使用RGB值。 small_layout {   /xmenu.maxlines        22 def } {   /xmenu.maxlines        28 def } ifelse 这里其实就是设置菜单里显示的最大行数的。这句的意思是在small_layout时,最多显示22个菜单项,否则,最多显示28个菜单项。你可以根据需要修改它的值。 要注意的是,在3.3系列里,修改最大行数的方法改变了。你可以定制菜单框出现的位置和大小,而最大行数则根据框的大小自动算出。 5、修改代码 gfxmenu的配置文件是使用类似于forth语言的结构。它和一般高级语言有很大的区别,它是面对机器的,其核心的概念是堆栈。比如说,对于表达式: 1 + 2 * 3 在forth里表示为: 1 2 3 * + 其操作步骤为: 第一步:数字 1 进栈 第二步:数字 2 进栈 第三步:数字 3 进栈 第四步:操作符 ×,2, 3 出栈,相乘,结果6进栈 第五步:操作符 +,1, 6 出栈,相乘,结果7进栈 最后,堆栈里剩下7,就是1 + 2 * 3的结果。 由于forth和机器的运算非常接近,其解析器很小,运算速度很快,这对于gfxboot来说还是比较合适的。 在gfxboot目录下有gfxboot.html,就是gfxboot的用户指南。里面包含所有基本函数的定义。举例说: * add – addition ( int1 int2 — int3 ) ( string1 int4 — string2 ) ( ptr1 int5 — ptr2 ) int3: int1 + int2 string2: substring of string1 at offset int4 Note: Strings are treated as byte sequences, not Unicode chars. Sizes of string1 and ptr1 are not checked. See also: abs, and, div, max, min, mod, mul, neg, not, or, shl, shr, sub, xor Example 9.   1 2 add         % 3      "abc" 1 add     % "bc" add - addition 函数的名字和简单描述 ( int1 int2 — int3 ) ( string1 int4 — string2 ) ( ptr1 int5 — ptr2 ) 这是参数描述。 - 左边是操作前的堆栈状态,右边是操作后的堆栈状态。这里有三个,就是说add有三种不同的用法。 int3: int1 + int2 string2: substring of string1 at offset int4 对于上面参数值的具体描述。 Note: Strings are treated as byte sequences, not Unicode chars. Sizes of string1 and ptr1 are not checked. 说明。 See also: abs, and, div, max, min, mod, mul, neg, not, or, shl, shr, sub, xor 其他相关的函数。 Example 9.   1 2 add         % 3      "abc" 1 add     % "bc" 例子,% 后是运算的结果。
    展开阅读全文
    提示  咨信网温馨提示:
    1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
    3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
    4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
    5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
    6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

    开通VIP折扣优惠下载文档

    自信AI创作助手
    关于本文
    本文标题:分享:gfxmenu定制高级教程(新增可定制菜单).doc
    链接地址:https://www.zixin.com.cn/doc/9009396.html
    页脚通栏广告

    Copyright ©2010-2026   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:0574-28810668    微信客服:咨信网客服    投诉电话:18658249818   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-20240490   


    关注我们 :微信公众号  抖音  微博  LOFTER               

    自信网络  |  ZixinNetwork