2011年7月18日 星期一

掌萬皮膚製作及各文件對應參數列表

掌心万年历今日插件皮肤制作说明
掌心万年历皮肤为HandCalendar\TodaySkins目录下的*.ini文件(ASCII格式的文本文件)
文件行首如果是#,表示该行是注释行。
皮肤分为以下几个部分:
Name, Refresh, DrawCalendar, DrawPic, DrawString, DrawStringEx, DrawClock, SetFestivalFont和ClickAction
1) Name表示皮肤名字,参数是名称,比如:
Name=显示LCD时钟(居右)
表示该皮肤的名字是"显示LCD时钟(居右)"
2) Refresh表示更新频率,参数是:(0-每天, 1-每分钟, 2-每秒),比如:
Refresh=2
表示该皮肤的更新频率是"每秒"(注意每秒更新可能会降低您的电池使用时间)
3) DrawCalendar表示显示月历,参数是:(上top像素,左left像素,周六是否节假日,周一为每周开始)
DrawCalendar=4,304,1,0
表示该皮肤在(4,304)坐标显示月历,周六是节假日显示为红色,周一不是每周开始(周日是)
4) DrawPic表示显示图片,参数是:(上top, 左left, 透明色#000000-#FFFFFF, 图片),比如:
DrawPic=2,2,#000000,clock16.bmp
表示该皮肤在(2,2)坐标显示图片clock16.bmp,且把颜色#000000作为透明色
(*注1:对PNG图片,透明色参数无效)
(*注2:掌心万年历暂时只支持32位色的PNG图片)
(*注3:文件名可以使用系统变量)
5) DrawString表示显示字符串,参数是 (字体大小,上top像素,左left像素,字符串),比如:
DrawString=9,5,28,{SY1}-{SM}-{SD}({WD}) {JQ}
表示该皮肤在(5,28)坐标显示字体大小为9的字符串"{SY1}-{SM}-{SD}({WD}) {JQ}",该字符串会被系统自动替换为相应的数据。
(*注1:字符串可以使用系统变量)
6) DrawStringEx表示显示格式化字符串,参数是 (大小,上top,左left,宽度,排版(0-居左, 1-居中, 2-居右),颜色(#000000-#FFFFFF),粗细(0-1000,400是普通,700是粗体),字符串),比如:
DrawStringEx=9,96,20,200,1,#00FF00,700,居中粗体-电池剩余{BatteryPercent}%
表示该皮肤在(96,20)坐标,宽度200,居中显示字体大小为9的绿色(#00FF00)字符串"居中粗体-电池剩余{BatteryPercent}%",该字符串会被系统自动替换为相应的数据。
(*注1:字符串可以使用系统变量)
7) DrawClock表示显示指针时钟,参数是 (上top,左left,指针时钟图片目录),比如:
DrawClock=10,0,VistaClock
表示该皮肤在(10,0)坐标,显示指针时钟,图片目录为TodaySkins\VistaClock
系统将会加载并顺序绘制以下6个文件(如果有文件不存在就忽略,注意 face.png 是必须的文件)
a) face.png (表盘)
b) hour.png (时针)
c) minute.png (分针)
d) second.png (秒针)
e) dot.png (最外层的圆心)
f) hilight.png (高光)
8) SetFestivalFont表示设置节日信息显示的字体和颜色,参数是 (大小, 颜色[#000000-#FFFFFF, 0表示使用系统颜色])
SetFestivalFont=9,#0000FF
表示该皮肤使用9号字体,颜色为#0000FF(蓝色)显示节日信息
SetFestivalFont=11,0
表示该皮肤使用11号字体,使用系统颜色显示节日信息
(*注1:默认为9号字体,系统颜色显示节日信息)
9) ClickAction表示在某个区域接收到用户点击后触发的事件,参数是 (上Top, 左Left, 宽度Width, 高度Height, 事件类型[0-启动程序,1-打开新皮肤]), 事件字符串(启动的程序路径 或者打开的皮肤文件名)
ClickAction=98,4,72,80,0,{MainDir}\HandCalendar.exe
表示该皮肤在区域(98,4,72,80)接收到用户点击以后,打开掌心万年历主程序
ClickAction=16,80,72,80,0,\Windows\tmail.exe -transport "SMS"
表示该皮肤在区域(16,80,72,80)接收到用户点击以后,打开短消息
ClickAction=16,160,72,80,1,skin2.ini
表示该皮肤在区域(16,160,72,80)接收到用户点击以后,更换为皮肤skin2.ini
(*注1:ClickAction支持键盘操作)
(*注2:在ClickAction区域不能长按弹出设置菜单)
V2.8#8支持的系统变量有:
【公历】
# {SY} - 公历年,返回值: 2007
# {SM} - 公历月,返回值: 1,2,...,12
# {SD} - 公历日,返回值: 1,2,...,31
# {SY1} - 公历年(2位数),返回值: 99, 07
# {SD_0} - 公历日的十位,返回值: 0,1,2,3
# {SD_1} - 公历日的个位,返回值: 0,1,2,...,9
# {SY_0} - 四位年的第一位数字,返回值:0,1,2
# {SY_1} - 四位年的第二位数字,返回值:0,1,2,...9
# {SY_2} - 四位年的第三位数字,返回值:0,1,2,...9
# {SY_3} - 四位年的第四位数字,返回值:0,1,2,...9
# {SM2} - 公历月,返回值: 01,02,...,12
# {SD2} - 公历日,返回值: 01,02,...,31
# {WY} - 今天是今年第几周,返回值:1,2,3,....52
# {WD} - 星期几,返回值: 一,二,...,日
# {WD2} - 星期几,返回值: 0,1,2,3,...,6 (0是周日)
【农历】
# {SX} - 生肖,返回值: 鸡,狗,...,羊
# {LY} - 农历年,返回值: 2006,2007
# {LM} - 农历月,返回值: 一,二,...,十,腊,东
# {LD} - 农历日,返回值: 一,二,...,三十
# {GY} - 干支年,返回值: 甲子年
# {GM} - 干支月,返回值: 甲子月
# {GD} - 干支日,返回值: 甲子日
# {LM2} - 农历月,返回值: 01,02,03,...,12
# {LD2} - 农历日,返回值: 01,02,03,...30
# {LD2_0} - 农历日十位,返回值: 0,1,2,3
# {LD2_1} - 农历日个位,返回值: 0,1,2,...,9
# {LM3} - 农历月,返回值: 一,二,...,十,十一,十二
# {JQ} - 农历节气(不带时间),返回值: 立春
# {JT} - 农历节气(带时间),返回值: 立春03:30
# {RY} - 农历闰月,返回值: 闰 / (空白)
# {RY2} - 农历是否闰月,返回值: 1/0
【时钟】
# {SH} - 公历时(24小时制),返回值: 0,1,...,23
# {SH12} - 公历时(12小时制),返回值: 1,2,...,12
# {SF} - 公历分,返回值: 0,1,...,59
# {SS} - 公历秒,返回值: 0,1,...,59
# {SH12_0} - 公历12小时制十位,返回值: 0,1
# {SH12_1} - 公历12小时制个位,返回值: 0,1,..,9
# {SH0} - 公历24时十位,返回值: 0,1,2
# {SH1} - 公历24时个位,返回值: 0,1,..,9
# {SF0} - 公历分十位,返回值: 0,1,..,5
# {SF1} - 公历分个位,返回值: 0,1,..,9
# {SS0} - 公历秒十位,返回值: 0,1,..,5
# {SS1} - 公历秒个位,返回值: 0,1,..,9
# {APM} - AM/PM,返回值: am,pm
# {APM_CHS} - AM/PM中文,返回值: 上午/下午
# {IsAM} - 当前是否AM,返回值: 0,1
# {IsPM} - 当前是否PM,返回值: 0,1
# {HasAlarm} - 是否有闹钟,返回值: 0,1
# {NextAppointment} - 下一个日程安排(WM5之后支持)
【系统资源】
# {MemRestMB} -内存剩余MB(带一位小数),返回值: 0.0,1.9,...
# {MemRestPercent} - 内存剩余比,返回值: 0,1,...,99,100
# {MemUsedMB} - 内存使用MB(带一位小数),返回值: 0.0,0.1,...
# {MemUsedPercent} - 内存使用百分比,返回值: 0,1,...,99,100
# {BatteryPercent} - 电源剩余百分比,返回值: 0,1,...,99,100
# {BatteryLevel} - 电源剩余量(10个等级),返回值: 1,2,3,4,5,6,7,8,9,10
# {BatteryFlag} - 电池状态,返回值: 0-正在充电, 1-电量满, 2-电量低, 3-电量非常低, 4-没有电池, 5-未知状态
# {BatteryFlagName} - 电池状态,返回值: 正在充电/电量满/电量低/电量非常低/没有电池/未知状态
【电话相关】
# {UnreadSMS} - 未读短信数量(WM5之后支持),返回值: 0,1,2...
# {MissedCall} - 漏接电话数量(WM5之后支持),返回值: 0,1,2...
# {Signal} - 电话信号强度(WM5之后支持),返回值: 0,1,2...,100
# {Operator} - 电话运营商(WM5之后支持),返回值: 中国移动,中国联通,...
# {CallToday} - 今天拨打电话分钟数,返回值: 0,1,2.....
# {CallMonth} - 本月拨打电话分钟数,返回值: 0,1,2.....
# {CallIn} - 拨入电话次数,返回值: 0,1,2.....
# {CallOut} - 拨出电话次数,返回值: 0,1,2.....
# {CallMissed} - 未接电话次数,返回值: 0,1,2.....
【其他】
# {01} - 0/1奇偶器(第一次调用返回0,下次调用返回1),返回值: 0,1
# {Colone01} - 冒号,返回值: : / (空白)
# {S1} - 1秒奇偶器(奇数秒返回1,偶数秒返回0),返回值: 0,1
# {S10} - 10秒奇偶器(秒的十位是奇数秒返回1,秒的十位是偶数秒返回0),返回值: 0,1
# {MainDir} - 返回掌心万年历程序所在主目录
关于QVGA皮肤转VGA皮肤的制作技巧
字体大小不需要变化,字体的显示位置乘以2就好了。
举例来说:
QVGA是DrawString=9,2,2,Hello world!
VGA对应的就是DrawString=9,4,4,Hello world!希望对想改皮肤及文件路径的友友们有所帮助!

2011年7月12日 星期二

鑲嵌修辭法

鑲嵌修辭法
在詞語中,故意插入虛字、數目字、特定字、同義字、異義字,來拉長文句,稱為鑲嵌修辭法。可分為鑲字嵌字兩種。


鑲字──用無關緊要的「數目字」或「虛字」穿插在字詞間,以拉長文句。
例:事情既然已到了這種地步,我們乾脆來個「一」不做,「二」不休吧。
例:如果我學得一絲一毫的好脾氣,如果我學得了一點點待人接物的和氣。【胡適 母親的教誨】
例:這件事本來就是你做的!你別把責任推得一乾二淨


嵌字──故意用特定的字嵌入語句中,而文字的安排往往形成美妙的辭趣。
例:江南可採蓮,蓮葉何田田。魚戲蓮葉間:魚戲蓮葉「東」,魚戲蓮葉「西」,魚戲蓮葉「南」,魚戲蓮葉「北」。【樂府詩】
例:「東」市買駿馬,「西」市買鞍韉,「南」市買轡頭,「北」市買長鞭。【木蘭詩】


以上文章摘錄自奇摩知識