UJMLサンプル139:英語→日本語 辞書のプロトタイプ(2006/07/10)
何かを作るとしても、せっかくなら多くの人に使ってもらえる方がうれしいかなと感じるときもある。あるいは、日本人だけでなく世界中の人に使ってもらえるものがいいかなと感じるときもある。
今回紹介するのは、プロトタイプ版だが、日本語を学ぶ世界中の人に使ってもらうことを目指した簡易版英日辞書である。課題は、多くの海外の携帯では日本語を表示できないということだ。
そこで、ひらがなを画像ファイルで準備することにした。例えばこんな感じの画像である。
この画像を適宜切り取って表示するわけだ。まだ「あいうえお」しか準備していないので、まずは、Blueを翻訳する仕組みのみを実装した。動作サンプルはこちら。動作にはJavaが必要。
http://pts.app.uievolution.com/pubserv/vfs/3388/com.uiengineda.samples.139.html
ソースコード:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ujml PUBLIC "-//UIEVOLUTION//DTD UJML 1.5//EN"
"http://www.uievolution.com/dtd/ujml-1.5.dtd" [
<!ENTITY CHAR_HEIGHT '13'>
<!ENTITY CHAR_WIDTH '12'>
]>
<!-- Copyright (c) 2006, uienginda.blogs.com -->
<!-- http://uienginda.blogs.com UJMLサンプル139:英語→日本語 辞書のプロトタイプ -->
<!-- http://pts.app.uievolution.com/pubserv/vfs/3388/com.uiengineda.samples.139.html -->
<ujml>
<application>
<state-machines>
<include file="../components/background.ujms" state-machine="Background" />
</state-machines>
<state-variables>
<state-var name="sStatus" type="int"/>
</state-variables>
<script>
Background.init(&_COLOR_WHITE;,true);
sStatus = 0;
</script>
<display>
</display>
<states>
<state var="sStatus">
<transition value="0">
<display>
<fn>
<text>F2 to get ANSWER.</text>
<event name="onSelect">
<accelerators><key>F2</key></accelerators>
<script>
_clear_state(sStatus);
sStatus = 1;
</script>
</event>
</fn>
<multi-label>
<text>What is "BLUE" in Japanese?</text>
<width><eval>_getIntProperty(&_PROPERTY_INT_SCREEN_WIDTH;)</eval></width>
<height><eval>_getIntProperty(&_PROPERTY_INT_SCREEN_HEIGHT;)</eval></height>
</multi-label>
</display>
</transition>
<transition value="1">
<display>
<image>
<url><image-url>images/kana_a</image-url></url>
<src-x><eval>&CHAR_WIDTH; * 0</eval></src-x>
<src-y>0</src-y>
<x>0</x>
<y>0</y>
<width>&CHAR_WIDTH;</width>
<height>&CHAR_HEIGHT;</height>
</image>
<image>
<url><image-url>images/kana_a</image-url></url>
<src-x><eval>&CHAR_WIDTH; * 4</eval></src-x>
<src-y>0</src-y>
<x>&CHAR_WIDTH;</x>
<y>0</y>
<width>&CHAR_WIDTH;</width>
<height>&CHAR_HEIGHT;</height>
</image>
<fn>
<text>BACK</text>
<event name="onSelect">
<accelerators><key>F1</key></accelerators>
<script>
_clear_state(sStatus);
sStatus = 0;
</script>
</event>
</fn>
</display>
</transition>
</state>
</states>
</application>
</ujml>
---
【おまけ】 変わった乗り物 未来的な乗り物とか映画に出てきそうな乗り物とか
Sports Vehicle Encyclopedia: strange vehicles
http://www.diseno-art.com/encyclopedia/strange_vehicles/strange_vehicles.html
コメント