KG Software Library

BBS-Wiki/6

Page :: BBS-Wiki / 6

このエントリーをはてなブックマークに追加


 サイズ指定画像が表示されない - NORI (2009/01/08-09:44:00)

本家で2,3日前に下記の内容でカキコしていますが、imageプラグイン作者のKGさんに直接相談したほうがよいと判断し、こちらにコピペさせていただきました。よろしくお願いします。


お世話になります。BIGLOBEにてFSWiki3.6.2を運用しています。

imageプラグインをインストールし、Wikiページ(SandBox)に画像ファイルを添付して、画像の貼り付けテストをしてみました。結果、画像の貼り付けに成功したので、引き続き、サイズ指定オプションをテストしてみました。

すると、プレビュー画面では、ちゃんと、サイズ指定の画像が表示されたのにもかかわらず、Wikiページを保存すると、「画像ファイルが存在しません。」のメッセージが表示されて、サイズ指定の画像が表示されません。

問題を解決するために手をつくしましたが、残念ながら解決にいたっておりません。この問題の解決方法をご存知ないでしょうか。

  • 基本的に、プレビュー時とページ表示時の動作は同じです。表示対象となるページ以外の特殊なページ(Menu,Header,Footerなど)で画像を表示させる為にはページ名を指定する必要があります。他には・・・特に注意点は無いんですけどねぇ。プレビュー時とページ表示時で path_info() の値が変わるとうまく表示できないかもしれませんね。この辺りは実際に BIGLOBE でテストしてみないとなんとも言えないんですけど・・・ - KG (2009/01/08-10:52:48)
  • ちなみに私のWebサイトでimageプラグインをテストするとこんな感じhttp://www5e.biglobe.ne.jp/~es-eng/fswiki/wiki.cgi?page=Image+test プレビュー時とページ表示時の動作が同じだとすると、どこでコケているんでしょうねぇ? - NORI (2009/01/08-15:15:31)
  • 上記URLでは「参照権限がありません。」となります。もしかして、参照権限が原因でしょうか・・・ - KG (2009/01/08-17:06:43)

以下のコードでデバックすれば、画像ファイルの場所が表示されますので、デバッグ可能です。ファイルのパスがわかってしまいますのでデバッグ後は元に戻した方がいいです。

Image.pm : 69行目
----------
return &Util::inline_error("画像ファイルが存在しません。","HTML");
                  ↓
return &Util::inline_error("画像ファイル($filename)が存在しません。","HTML");
  • 上記のリンク先のページですが、参照権限を「公開」にしたつもりが、変更されてなかったようです。スイマセン。教えて頂いたコードに書き換えてからページ表示してみると「画像ファイル(./image/alt%3A%A5%BF%A5%A4%A5%AC%A1%BC%A5%B9.tigers.bmp)が存在しません。」と表示されました。 - NORI (2009/01/08-20:22:04)
  • パラメータの2番目のページ名の部分が読み取れていないようですね。指定されていない場合は空文字が取得できるはずなんですが・・・。パラメータにページ名を明示してみてください。あと、同様の現象が ref でも発生するかも知れません。 ref プラグインのパラメータのファイル名と別名だけを指定した際にも同様にエラー(ファイルが存在しません。)になりませんかねぇ。 - KG (2009/01/08-21:19:44)
  • 画像ファイル名にページ名の入力と、imageフォルダへのパスを入力して試してみました。構文、これであっていますかね?
{{image image test.tigers.bmp,,alt:タイガース,size:50%}}
{{image ./image/image test.tigers.bmp,,alt:タイガース,size:50%}}

結果、どちらもともプレビュー表示の時点でエラーになりました。さらに、ページ名の明示も試してみました。

{{image tigers.bmp,,image test,alt:タイガース,size:50%}}

こちらでは、プレビュー表示のときは画像が表示されましたが、ページ表示では「画像ファイル(./image/image+test.tigers.bmp)が存在しません。」が表示されました。あとref_imageプラグインですが、単体では別名(alt属性)の指定はできなかったと思うのですが…。 - NORI (2009/01/09-13:58:13)

  • imageプラグインで指定するページ名は2番目のパラメータに指定します。また、ref_image ではなく ref の方です。ref で使用するには別途添付しないといけませんが・・・ - KG (2009/01/09-14:18:28)
{{image tigers.bmp,image test,alt:タイガース,size:50%}}
{{ref tigers.bmp,,タイガース画像}}
{{ref tigers.bmp,image test,タイガース画像}}
  • テストページをよく見たらページ名が "Image test" ですね。(大文字小文字の違い) - KG (2009/01/09-14:47:06)
{{image tigers.bmp,Image test,alt:タイガース,size:50%}}
{{ref tigers.bmp,,タイガース画像}}
{{ref tigers.bmp,Image test,タイガース画像}}
  • KGさん、テストページの明示の構文を"image test"から"Image test"に修正してみたところ、プレビュー表示、ページ表示ともに、画像が表示されました。imageプラグイン、めちゃくちゃ便利でイメージにピッタリなので使いたい!だけど…と半ばあきらめかけてましたが、KGさんのご教示のおかげで使える目処が立ちました。本当にありがとうございました。この情報、本家にフィードバックしておきます。^^ - NORI (2009/01/09-15:03:01)
  • そうですねぇ。ただ今回の件は本来正常に取得できるはずの第2パラメータが空文字の場合に詰められてしまうのがのが問題なんですよね。で、これって環境の問題の可能性が大きいです。他のプラグインでもパラメータの省略によって同様の現象が発生すると思われます。私の環境でも以前は発生していましたが、いつの頃からか正常に動作するようになりました。perlのバージョンに関係するのかもしれません。本家へのフィードバックはNORIさんにお任せします。 - KG (2009/01/09-15:34:29)
  • KGさんがおっしゃる通り、おそらく環境(BIGLOBE)特有の問題なんでしょうねぇ。あと余談ですが、テストページでは構文にページ名を明示することで正常に表示されたのに、SandBoxのページでは、構文にページ名を明示しても、ページ表示で「ファイルが存在しません。」となりました。私と同じところでコケる人を出さないようにするため、この情報もあわせて本家にフィードバックしておきますね。 - NORI (2009/01/09-15:46:14)

お名前: コメント:

最終更新時間:2009/03/03-16:59:43