目次 前へ 次へ

6.3 StrokeCSIM() を使用する

CSIM イメージの一番簡単な作成方法は、 StrokeCSIM() メッソドを使用します。前に説明したとおり、このメソッドはイメージ マップの仕様と同様にイメージタグを含む (小さい)HTML ページを実際に返します。標準のイメージタグ src プロパティではこのメソッドで終わるスクリプトを使うことができません

CSIM(または、イメージ マップを維持する)を作成する2 つの方法があります。

  1. 標準のアンカー リファレンスでターゲットとして CSIM イメージ スクリプトを使用します、たとえば
    <a href="mycsimscript.html">
    
    イメージだけを含むイメージ ページには欠点があります。
  2. もう1 つの方法は、標準の "include" php ステートメントを使っている HTML ページでイメージ スクリプトを含むだけで、任意の HTML ページに含まれるイメージ スクリプトを許可します。たとえば、
    <h2> This is an CSIM image </h2>
    
    <?php
    include "mycsimscript.php"
    ?>
    

注意:同じページに複数の CSIM イメージがある場合、同じページにファイルが複数回含まれる、または何度か“既に定義されたエラー”が表示されるの、“jpgraph.php” を含むスクリプトで “include_once” を使う必要があります。

Stroke() を StrokeCSIM() に置き換えるプロセスは困難です。StrokeCSIM() に呼ぶのに等しい Stroke() への既存の呼び出しをすべて交換してください。

違いは、 StrokeCSIM() メソッドで最小のファイル名を与える必要があるということのみです。最初の引数は、拡張子を含む実際のイメージ スクリプトの名前であるべきです。たとえば、イメージ スクリプトは書き込み必要な “mycsimscript.php” と呼ばれます。

$graph->StrokeCSIM('mycsimscript.php')


ただし、ここでは小さな “trick” の適用が可能です。PHP は、常に現在のファイル名に設定される、 “__FILE__” と呼ばれる特別な変数を維持します。これは、以下のコンストラクションで使用できるということです:

$graph->StrokeCSIM(basename(__FILE__))

スクリプトは、別な方法で必要なファイルのコードを変更せずに名前を変更できるので、これはより良い方法です。

注意:なぜ、スクリプト名は最初のパラメーターとして使われるのですか?理由は、送られる HTML ページの生成で、イメージ タグのスクリプトに関連する必要があるからです。それなら、なぜ PHP_SELF リファレンスを使用することができないのですか?PHP_SELF での問題は、HTML ページにイメージ・スクリプトがあり、PHP_SELF を使用する場合、HTML ページの名前を取得し PHP_SELF で実際のスクリプトが使用されないということです。また、コンテキストで __FILE__ が “jpgraph.php” に設定されないの、ライブラリで __FILE__ トリックを使用することができません。したがって、上に示したように、クライアントはこれを指定しなければなりません。

StrokeCSIM() の他の引数はオプションです。同じ HTML ページで複数の CSIM イメージを使用する場合、 すべてのイメージがそれぞれのイメージに対してそれぞれのイメージ マップに適切に調和するためユニークでなければならないので、2 つ目のパラメーターとしてイメージ マップの名前を指定する必要があるということに注意してください。StrokeCSIM() の詳細に関してはクラス リファレンスを参照してください。


目次 前へ 次へ