4.14 イメージマップ

画像(画像のファイル)に複数のリンクを定義できます。その指定個所をクリックすると,その画像の座標位置やイメージマップファイル名がWebサーバにWebブラウザから送信されます。Webサーバは,そのイメージマップファイルと座標位置から対応したURLを検索して,Webブラウザに応答します。これをイメージマップといいます。

イメージマップを使用するには,imap-fileハンドラにマップファイル拡張子を対応付ける定義が必要です。

AddHandler imap-file .map

<この節の構成>
(1) イメージマップファイルの文法
(2) イメージマップの定義例
(3) 注意事項

(1) イメージマップファイルの文法

イメージマップデータの指定形式には次の3とおりの指定があります。

形状名称 指定値 座標
形状名称 指定値 "説明文" 座標
形状名称 指定値 座標 "説明文"

"説明文"はマップファイルメニュー表示時の説明文,座標は画像の座標を示しています。

形状名称を表4-15に,指定値を表4-16に示します。

表4-15 形状名称と座標の指定形式

形状名称意味座標の指定座標の説明
baseマップファイル内の相対URLのベースを指定。なし
defaultpoly,circle,rectに該当しないで,point指定もない場合のリンクを指定する。
poly多角形を指定する。点を3~100個指定する。x1,y1 x2,y2 … xn,yn多角形の各座標位置(3~100点の座標)
circle円を指定する。中心点と,円周上の1点を指定する。x1,y1 x2,y2中心座標と円周上の1点の座標
rect四角形を指定する。対角の2点を指定する。x1,y1 x2,y2対角の2点の座標
point点を指定する。カーソルに最も近いpointが有効になる。x1,y1
(凡例)
-:該当しない。
座標の指定で(0,0)を含んでいる場合でも,イメージマップ画像の座標(0,0)をマウスポインタでポイントすると,マップファイルメニューが表示されます。

表4-16 指定値

指定値意味
URLリンク先を指定する。相対ディレクトリの場合,base,ImapBaseディレクティブが有効になる。
mapマップファイルメニューを表示する。
menu
refererステータスコード302 Foundを応答する。
nocontentステータスコード204 No Contentを応答する。base以外に有効。
errorステータスコード500 Server Errorを応答する。base以外に有効。

(2) イメージマップの定義例

イメージマップを利用するための操作を次に示します。

  1. httpsd.confファイルに,次に示すディレクティブを設定します。.map拡張子名がURLで指定されたときにイメージマップを実行します。

    AddHandler imap-file .map

    (ファイル拡張子.mapにimap-fileハンドラを定義)
  2. 上記で定義されたファイル拡張子のファイルにリンク先を定義します。
  3. HTML文書内に次のHTML構文を記述します。

    <A HREF="/ディレクトリ名/マップファイル名"><IMG SRC="画像データ名" ISMAP></A>

イメージマップファイルの定義例や,実際の表示例などを次に示します。

図4-13 イメージマップファイルの定義例

[図データ]

この例で,polyで指定された部分をクリックすると,次に示すようなマップファイルメニューが表示されます。

[図データ]

(3) 注意事項

マップファイルメニューで使用している文字セットが,デフォルトの文字セット(ISO-8859-1)と異なる場合は,マップファイルメニューの表示において文字化けが発生します。この場合,HWSImapMenuCharsetディレクティブで,マップファイルメニューで使用している文字セットを指定してください。