さてさて。
これからやっと、krpanoをいじくっていくわけですが、その前段階として、xmlを記述する際の基本的な文法を整理しておきます。 webサイトをいじるhtmlの書き方を知っている方でしたら、ほとんど馴染み深いものばかりですが、ちょっとだけkrpano独自の約束事がありますので、その点もしっかり覚えておきましょう。

1)テキストのエンコードば、UTF-8 を使います。

macの場合は問題ありませんが、windowsマシンで動く多くのテキストエディタは、デフォルトのエンコードが「日本語(SHIFT-JIS)」になっていることが多く、これが原因でxmlが正しく読み込まれずエラーになることが少なくありません。
例えば、「秀丸」を使っている場合は、動作環境で下記のように設定し、UTF-8を優先するように設定します。
保存時にエンコードを指定し直してもよいです。




「Sublime Text」の場合は、UTF-8になりますので、特に設定の必要はありません。テキストエディタ毎に確認して設定しておきましょう。

2)半角英数だけを使う

コードは必ず半角英数だけを使います。全角スペースは発見しにくいので特に注意。
3)に記すコメントの中とタイトルの指定など、日本語(2バイト/全角文字)を使える場所は限られています。

3)コメント

下に記すよう、カッコと!とハイフン で囲むことで、この中のテキストをメモ代わりに使えます。
xmlを書き換えたり、勉強したりする時に、その部分の役目をコメントとして書いておくと後々非常に助かります。

<!--  ここに書かれている内容はプログラム上無視されます--> 

コメントの中に、コメントを入れるのは文法違反になりますので注意。

<!-- コメントの中に、<!-- コメント--> を入れるとエラーになります-->

メモ代わりにするだけでなく、コードをコメントで囲むことで、そのコードを無視させて動作させることができます。トラブルの原因を探ったり、とりあえず不要だけど後で必要になるかもしれないコードを隠しておくのに使えます。これを「コメントアウト」などといいます。

4)基本的な書き方(1)

パノラマ表示や動作を指定していく時の最も基本的な書き方はこんな感じ。
カッコで始まり、スラッシュ+カッコ で終わります。
属性と属性の間は、半角スペースを入れます。

<aaa name="bbb" ccc="ddd"/>

aaaという項目の名前はbbbで、そのcccという属性はdddです、というような意味です。

aaa・・・・・指示する項目
bbb・・・・・aaaの名前(必ずユニーク(独自)にする)。同じ名前が後から出てきたら、それで上書きされる
ccc・・・・・aaaの属性(アトリビュート)。aaaの詳細設定のようなもの
ddd・・・・・属性の設定内容

4)基本的な書き方(2)

アクションなどは、パノラマ表示や動作を指定していく時の最も基本的な書き方はこんな感じ。

 <aaa name="bbb" >
            ccc="ddd"
            eee="fff"
       </aaa>

3)とちょっと書き方が違うだけで、同じような意味になります。
カッコ+aaa を開始タグといい、カッコ+スラッシュ+aaa+カッコを閉じタグと呼びます。

5)必ず入れ子にする

この書き方はok。

<aaa>
           <bbb />
           ccc="ddd" 
           </bbb >
       </aaa>

aaaの中にbbbを入れる場合の書き方です。正しく入れ子になるようにしないとエラーになります。

でも、これはアウト。

       <aaa>
           <bbb>
           ccc="ddd" 
       </aaa >
           </bbb>

 

これは、aaaとbbbの閉じタグの位置が間違っています。

5)nameの最初に数字は使えません

krpano独自のルールだと思いますが、nameの最初に数字を使うと読み込まれません。

    name="aaa123" -これはok
    name="123aaa" -これはアウト! 

6)nameに「-(ハイフン)」は使わない

krpano v19になってから、name にハイフンを使っていると、if文に正しく読み込まれない問題が発生しています。いずれ修整されるバグかもしれませんが、注意が必要です。私を含め、日本人はハイフンを多用するクセがあるようで、これをやめて「_(アンダースコア)」を使うクセを付けた方がよいようです。

とりあえず、これだけのルールを覚えてスタートしましょう。後は実際にやっていく間に覚えるのでよいでしょう。

 

futter