找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
楼主: mmqqll

[软硬件讨论] 从解剖一只麻雀开始PALM深入编程

[复制链接]
 楼主| 发表于 2009-4-6 23:47 | 显示全部楼层
13、运行Axialis Iconshop程序,选择一张您制作或者从网上下载下来的精美PNG图像进行编辑:
20.JPG
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-6 23:49 | 显示全部楼层
14、右键选择创建Windows Icon,进入如下窗口界面:
21.JPG
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-6 23:54 | 显示全部楼层
15、选择其它图像格式(Other Image Format),进入图像属性编辑窗口:8 U8 y. _6 O5 L. Z' p
    在这里,选择Custom Size将图标的尺寸定义为44x44像素大小。
23.JPG
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-7 00:04 | 显示全部楼层
16、确认后,44x44的windows XP图标就会显示在窗口上:
) i3 S* t. f7 X: J9 n9 L    使用Ctrl-A全选图标,再使用Ctrl-C拷贝。
24.JPG
回复 支持 反对

使用道具 举报

发表于 2009-4-7 00:05 | 显示全部楼层
支持,强烈支持
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-7 00:07 | 显示全部楼层
17、回到Constructor for palm 资源编译器界面,点选1008的图像编辑窗口,使用Ctrl-V将图像粘贴过来:
25.JPG
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-7 00:12 | 显示全部楼层
18、保存修改的资源文件,关闭资源编译器,回到CodeWarrior编辑环境,点击编译运行图标,模拟器会运行SugarMemo,退出SugarMemo运行回到模拟器主界面,可以看到SugarMemo运行图标已经被先前所制作的精美图标替换。
26.JPG
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-7 00:16 | 显示全部楼层
餐前的开胃菜到此为止奉送完毕,下一讲我们开始麻雀解剖大餐的第一道正菜:SugarMemo显示字体和音标字体制作大法
回复 支持 反对

使用道具 举报

发表于 2009-4-7 00:19 | 显示全部楼层
貌似赶上现场直播了
回复 支持 反对

使用道具 举报

发表于 2009-4-7 00:20 | 显示全部楼层
原来还有第二页,现场直播刚刚结束……
回复 支持 反对

使用道具 举报

发表于 2009-4-7 05:52 | 显示全部楼层
佩服,支持,顶
回复 支持 反对

使用道具 举报

发表于 2009-4-7 09:51 | 显示全部楼层
强烈要求楼主在教程完成后可以提供打包下载
回复 支持 反对

使用道具 举报

发表于 2009-4-7 15:01 | 显示全部楼层
收藏后慢慢学习
回复 支持 反对

使用道具 举报

发表于 2009-4-7 18:43 | 显示全部楼层
再一次的狂顶,希望楼主以后能写制造简单麻雀!
回复 支持 反对

使用道具 举报

发表于 2009-4-7 19:22 | 显示全部楼层
在这样一个快餐年代,在一堆贴中突然看到楼主的贴子,顿感春风拂风。一个集耐心,爱心,钻研心于一身的楼主,一个敢于逆潮流而动的楼主,难道不值得我们轻点键盘,打出一个“顶”字吗?# O1 t5 x6 ^" i$ B, O( g1 S  g
( O9 ~" `5 L' P/ P+ i! O) Y
顶!
回复 支持 反对

使用道具 举报

发表于 2009-4-7 20:15 | 显示全部楼层
虚心学习中!
! N! y1 m3 s4 `5 M  [5 |  m- |4 [2 Z- N: Y0 U( h7 ?% f( ]( U8 L0 c
顶!!!:)1
回复 支持 反对

使用道具 举报

发表于 2009-4-7 20:40 | 显示全部楼层
恩,不错- i5 q9 z6 [7 v4 q
-----------------------------------------留个书签!------------------------------------------
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-7 20:55 | 显示全部楼层
关于palm字体讨论的帖子在论坛上比较多,相关的修改系统字体的HACK软件也比较成熟。但是对大多数胖友来说,很多情况下,对字体的了解是知其然,不知其所以然。秉承palm发烧友的狂热精神,今天我们就来讨论一下高分辨率字体的构成以及如何在程序中的应用。
0 x6 ?$ {, O4 ]4 [目的:
0 ?$ W. y  }  S7 ?" [+ K* ^1 m      1、了解palm系统字体的构成方式;/ e  k. E, M+ ^  Q; E
      2、了解高分辨率及低分辨率字体之间的差异;; }# Q  E9 [7 K$ {6 j4 y2 l
      3、创建属于自己的palm字库;
9 O" H" a: U) Z5 {7 A      4、字库的完整性对于程序的影响;$ ~! d# B) r& f
要求:
; B( c, t% d; N) Y9 f" H7 r0 e      1、编程水平不限;! T4 @. S- N( v" L
      2、耐心精神足够;
  J' t+ j  ]& Y以SugarMemo为例,创建属于它自己的字库,而不是通过类似FontHack的外挂程序来美化它的界面。这一章节会讨论到构建字库底层信息的一些内容,都很简单,只要您有耐心看下去,不理解也没关系,您也会创建出属于您自己的优美字库。4 [+ g! _/ j# f) |: e1 u

1 y- a6 d& k% |' c8 ^[ 本帖最后由 mmqqll 于 2009-4-8 23:59 编辑 ]
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-7 21:11 | 显示全部楼层
1、进入到CodeWarrior的编辑环境,打开SugarMemo,观察它左侧窗口的文件结构,发现和字体有关的文件有三个,一个是字库资源文件SugarFont.r,一个是C文件SugarMemoMain.c,一个是C文件SugarMemoFont.c。今天我们就从这三个文件下手,开始我们的发烧之旅。
4 G! E( ~0 l0 {+ n- ^" R
, k: W# K3 Y0 n9 C2 s' I2 y5 C  [' s[ 本帖最后由 mmqqll 于 2009-4-7 21:21 编辑 ]
27.JPG
回复 支持 反对

使用道具 举报

发表于 2009-4-7 21:26 | 显示全部楼层
我简直太……感动了。楼主,让我……给你做个替身吧,多多的橡皮泥,如果Palm不幸遇难,希望你依然能够存活。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-7 21:38 | 显示全部楼层
2、双击SugarFont.r,打开字库的编辑窗口。嗯,有点发晕,被雷到了,怎么全是字节数组,看不懂。没关系,看不懂是正常的,看懂的是黑客帝国里的Neo级人物。我也看不懂,但是我知道,它绝对不是构成字符的源代码,这里小小的佩服一下SugarMemo的作者,他使用了一些字符编译的技巧,在后面学习过程中大家就明白它的好处在什么地方了。1 J0 j) z) }  g; C
但是,我们要进行超级字库改造,如果连这个文件都搞不懂,如何进行下去。别急,字节数据大家看不明白,但是构成字符的原始数据还是很容易懂的,下图就是构成字符数据的原始文档,大家可以在SugarMemo的源代码目录下面找到。参看下图,如何?很直观吧。字符'$'就是由一堆'-'和'#'构成的字符形状。
! r+ [+ p! ]9 U! s- k. Z, m2 f- x+ T$ \- V/ J
[ 本帖最后由 mmqqll 于 2009-4-7 23:46 编辑 ]
28.JPG
29.JPG
回复 支持 反对

使用道具 举报

发表于 2009-4-7 21:59 | 显示全部楼层
同意 严重同意 不过还是很复杂
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-7 22:04 | 显示全部楼层
3、说到这里,有些胖友可能会说了,原来palm的字符源代码这么简单,不就是一个文本文件吗,我照着做一个不就行了吗。嘿嘿,我在这里偷笑两声,本人开始也犯了这样的错误,结果硬是倒腾了一个星期才倒腾出来。哎,俗语说得好,望山跑死马呀。
' o3 a9 c( B! l# y' T言归正传,如何将Windows系统的字库转换为palm字库的文本文件呢?从palm字库的文本文件来看,它是一个典型的点阵字库,而漂亮的windows字体一般都是矢量字库,这中间的鸿沟如何跨越呢?嘿嘿,有办法,咱不是有网络吗,上网一搜,果然找到了大量的矢量字库转换为点阵字库的软件,这里推荐大家下载一个很NB的软件PixelFont
http://www.pixel.mirrorz.com/

- ?  {: S& `" G1 P2 L1 Y1 e
- w8 L* B9 y. C8 ^. q; o有胖友可能会问,老兄为什么总是给链接,而不是把软件直接上传上来?4 v; ~! q9 d1 G: d6 e
我这里回答一下,咱们要尊重下别人的劳动成果,人家没同意,咱就把人家的东西到处发,不太好。还是辛苦一下大家,下载还是很快的。
30.JPG
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-7 22:20 | 显示全部楼层
4、OK,找到了这把倚天屠龙刀,剩下的事情就好办了。先找到一个windows系统下的字库再说。  c8 ]; m+ s% t, q8 k
我这里找到一个,发给大家,供学习之用。- [1 N4 v1 t& F2 \$ E

9 X8 {" J3 v  ~9 s; n$ V2 a& t1 r: v[ 本帖最后由 mmqqll 于 2009-4-9 00:02 编辑 ]
31.JPG

329-CAI978.ttf

16.42 KB, 下载次数: 243

回复 支持 反对

使用道具 举报

发表于 2009-4-7 22:33 | 显示全部楼层
拿个椅子认真听讲:)
回复 支持 反对

使用道具 举报

发表于 2009-4-7 22:43 | 显示全部楼层
牛牛牛牛
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-7 22:49 | 显示全部楼层
5、打开PixelFont,将上面的矢量字库加载进去,然后编译生成点阵字库。9 e7 w. d# D; s7 ~2 q0 u
注意,palm系统本身最大支持24点阵字库,用于SugarMemo背单词使用的话,好像小了点,在这里咱就大胆点,设定56点阵字库进行编译。毕竟,字体越大,背单词看起来越舒服。% `+ X% m; Q; {! s, q: V/ O
另外,对于PixelFont软件本身,它输出的点阵字库文件有好几种,这里我们只需要二进制格式文件,所以,它的输出设定请参照如下修改。其实,PixelFont本身都可以作为一个专题来讲,但是我们的主要目的不在它,所以有兴趣的胖友可以根据它的说明文档自己钻研。6 ]8 \/ N  F' W$ S

7 B* K( g  X+ V$ W8 f[ 本帖最后由 mmqqll 于 2009-4-7 23:29 编辑 ]
32.JPG
33.JPG
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-7 23:23 | 显示全部楼层
6、OK,进行到这里,大家手上已经得到了一个二进制的点阵字库,如何把它转换成为palm编程所需要的文本字库呢?
, b: a* a6 v5 n# S9 ]) Z7 V/ o% L方案一:打开二进制字库,一个一个字节比特转换。48x56点阵字库,一个字符对应的字节数目是6x56=336字节,一个字节8个比特,0对应的字符是'-',1对应的字符是'#'。不吃饭,不睡觉,一个月后,恭喜你,终于转换完成了。6 L  n& n9 z) v* @
方案二:本人不才,编了个小小的转换软件,把这种麻烦事交给电脑来做,30秒钟搞定。(把二进制字库文件后缀改为.dat)。转换结束后,生成两个文本字库,一个是高分辨率字库,一个是低分辨率字库。这两个字库在将来编译的时候都有用,所以一个也不能少。
34.JPG

Eng-329-CAI97848×56.dat

83.67 KB, 下载次数: 290

Eng-329-CAI97848×56 high.txt

147.23 KB, 下载次数: 301

Eng-329-CAI97848×56 low.txt

40.34 KB, 下载次数: 304

回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-7 23:35 | 显示全部楼层
字体转换程序是用VB编的,我这里连同源代码一起送上,有兴趣的胖友可以再深入开发一下。

Font Convert.7z

11.13 KB, 下载次数: 306

回复 支持 反对

使用道具 举报

发表于 2009-4-8 07:14 | 显示全部楼层
只能说: E: c1 C5 R" G- |
太精彩了
回复 支持 反对

使用道具 举报

发表于 2009-4-8 08:59 | 显示全部楼层
楼主早点出现,说不定palm就死不了了) O- T# e4 t4 ~) p5 I8 c. ^  J
末日黄花,能否颠倒乾坤?
回复 支持 反对

使用道具 举报

发表于 2009-4-8 11:15 | 显示全部楼层
好大一坨的牛郎!!!!厉害厉害!
回复 支持 反对

使用道具 举报

发表于 2009-4-8 11:44 | 显示全部楼层
很好的帖子,顶一个!
回复 支持 反对

使用道具 举报

发表于 2009-4-8 11:58 | 显示全部楼层
楼主真是有心人
8 `2 \' E+ w5 L6 U" W- m这样的帖子早点看到就好了,呵呵+ ]/ z9 Q" F0 p& b* V% x
希望palm pre出来时能尽快看到楼主相关文章
回复 支持 反对

使用道具 举报

发表于 2009-4-8 12:26 | 显示全部楼层
表面的热闹过后,确实想沉下心来学习本质的编程
回复 支持 反对

使用道具 举报

发表于 2009-4-8 13:33 | 显示全部楼层
我要学习啊,呵呵
回复 支持 反对

使用道具 举报

发表于 2009-4-8 13:56 | 显示全部楼层
可惜 我是文盲,看不懂代码
回复 支持 反对

使用道具 举报

发表于 2009-4-8 14:24 | 显示全部楼层
建议楼主日后再深入研究下palm pre 的 web os 的编程,再用这种解剖法给大家扫扫盲,顺便出本书,一举两得
回复 支持 反对

使用道具 举报

发表于 2009-4-8 16:09 | 显示全部楼层
人才啊,人才
回复 支持 反对

使用道具 举报

发表于 2009-4-8 17:43 | 显示全部楼层
几天没来,今天才拜读了楼主的大作。楼主编程水平很高,文字功底也很高。出书吧,我们一定支持!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

QQ|Archiver|手机版|小黑屋|吹友吧 ( 京ICP备05078561号 )

GMT+8, 2025-2-23 07:00 , Processed in 0.375085 second(s), 15 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表