根据DDID的插件改写的HP mini_windows 无法显示中文,请教DDID
encoding="iso-8859-1" 改成GB2312 还是不行,其中第一行 中文是“精神” 但是,显示的时候却是空的。[ 本帖最后由 minipixy 于 2009-12-28 05:01 PM 编辑 ] 已经忘了以前是咋写的了,翻了一下以前的代码,发现放在LUA脚本里,中文显示就没问题,但在PLUGIN里中文就显示不出来,需要用以下的形式才可以:
-- draw the Text
draw_line(1, "绮剧?: ", jing, max_jing, "mediumblue", "maroon","mediumblue")
draw_line(2, "绮惧姏: ", jingli, max_jingli, "mediumorchid", "maroon", "purple")
draw_line(3, "姘旇?: ", qi, max_qi, "darkgreen", "maroon", "darkgreen")
draw_line(4, "鍐呭姏: ", neili, max_neili, "gold", "maroon", "darkorange")
draw_line(5, "椋熺墿: ", shiwu, max_shiwu, "steelblue", "maroon", "steelblue")
draw_line(6, "楗?按: ", yinshui, max_yinshui, "steelblue", "maroon", "steelblue")
draw_num(7, "娼滆兘: ", pot, "yellow")
draw_num(8, "缁忛獙: ", exp, "green")
-- end draw the Text 刚刚想起来,可能有UTF-8的问题。 这个请问怎么解决?
把汉字转换成UTF-8?
[ 本帖最后由 minipixy 于 2009-12-28 09:48 PM 编辑 ] 已经忘得一干二净了…… hz9
先写在脚本里,再生成PLUGIN试试? 总的来说有两个要注意的地方:
1.miniWindow的字体设定,有ansi, default, UTF-8三种。
2. xml编码选择。
需要逐个调配,可能会比较麻烦…… 本来想写一个任务动态的框的,无法正常显示汉字,比较麻烦了
谢谢DDID 把draw_line()中的
local text1 = sPrompt
WindowText (win, "f1", text1, left1, top, 0, 0, text_colour, true)
true改成false,你就明白是怎么回事了……
[ 本帖最后由 ddid 于 2009-12-28 10:35 PM 编辑 ] 测试了一下,文字应为UTF-8字符,用ICONV转吧。 對於這個問題.
我說下我的小小心得.
因為在mush 的perl code 中根本不能使用漢字
所以我也被LZ 相同的問題困扰過.
但我發現了一個解決的方法.
將漢字弄成變量就不會有這個問題了.
比如在你的這個問題中.
精和氣這兩個字其實是可以從觸發中得到的.
在code 裏並不需要寫進去.
用wildcard 這個應該能解決問題了.
PS. 還有一招.. 如果不想用觸發裏的string , 想自定義的話.就手動存到variables 裏.
到用的時候再getvariable.也可以解決這個問題
相關tri :
我在玩的不是北俠...
so .. 將就看下吧..ttk_10
<trigger
enabled="y"
group="Multi Line"
lines_to_match="2"
keep_evaluating="y"
omit_from_output="y"
match="(形體) (\d+)/(\d+)\s+(精) (\d+)/(\d+)\s+(氣) (\d+)/(\d+)\s+(神) (\d+)/(\d+)\n(食物) (\d+)/(\d+)\s+(飲水) (\d+)/(\d+)\s+(疲勞) (\d+)/(\d+)\s+(犯罪).*\Z"
multi_line="y"
regexp="y"
script="do_prompt"
sequence="1"
>
</trigger>
[ 本帖最后由 vase 于 2009-12-28 11:21 PM 编辑 ]