Entries

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
この記事に対してトラックバックを送信する(FC2ブログユーザー)
http://tadpolizemedia.blog118.fc2.com/tb.php/47-6131c8dd

-件のトラックバック

-件のコメント

[C3] 相対パスでも画像を表示できますよ

普通に相対パスでできましたけど・・・。

Flash
http://googlemaps.googlermania.com/tmp/flash_img_test/main.html

ソースコード
http://googlemaps.googlermania.com/tmp/flash_img_test/srcview/index.html

あくまで読んだ限りの予想ですが、「file://.....main.html」とそのまま実行したときに
画像が読み込まれないと言っていらっしゃいますか?
それだとFlashのセキュリティ違反になるため、読み込むことができません。
その場合は、xamppとか使ってlocalhostで実行すれば読み込むことが可能ですよ。
  • 2009-11-18
  • Masashi.K
  • URL
  • 編集

[C4] Re: 相対パスでも画像を表示できますよ

コメントありがとうございます。
ご指摘のとおり、Flashのセキュリティ違反に引っかかっていたようです。
恥ずかしながらセキュリティ違反の件は知りませんでした。

Flex Builder 3 では、ビルドした後に実行させると、(動作確認用の?)HTMLを自動的に
作成して、そのファイルをローカルで動作させます。すなわちご指摘の通り
「file://.....main.html」イメージの動作確認となります。
今までの動作確認は、FlexBuilder3の持つデフォルトの環境で行っていたのですが、
今回色々と調べてみたら、テスト環境についてもかなり細かく環境設定できることを知りました。

今後は、Apache等のサーバを動かしつつ、作られたswfファイルをHTTP経由で動作させるような
テスト環境をちゃんと作って動作確認を行います。ちゃんとした環境ならば、相対パスの指定で
できることを理解しました。
Google Maps API Key は localhostで取っております。確認はこの3連休にやってみます。
一歩前進できました。感謝します。
  • 2009-11-18
  • トオル
  • URL
  • 編集

コメントの投稿

投稿フォーム
投稿した内容は管理者にだけ閲覧出来ます

情報ウィンドウ(吹き出し)に画像を表示させる (Google Maps API for Flash)

Flex Builder 3 + Google Maps API for Flash の開発において、
情報ウィンドウにテキストを表示させるのは簡単ですが、なかなか画像が表示できませんでした。
以下のサイトを参考にしたのですが、とても参考になる部分もあった反面、
肝心のファイルの指定の部分が src='画像のアドレス' と微妙な表現になっていたり、
具体的な記述が落ちていたりします。

http://wikiwiki.jp/haruko57/?cmd=read&page=%C6%FC%B5%AD%2F%B4%C9%CD%FD%BF%CD%2F2008-08-25

苦労した挙句、以下のようなコーディングでやっと問題が解決しましたので書いておきます。
結論から申し上げますと、上記サイトの"画像のアドレス"という表現は、"画像ファイル名まで
含めたURL"という意味だったようです。(時間をかけた割には大したことなかった...)

おそらく、同じような悩みをお持ちの方は多いはずです。
それにしても、ネット上に、そのものズバリを教えてくれるサイトってないもんですね。
Flex Builder 3 と Google Maps API for Flash による環境だから絶対量が少ないってことなのかな。。。


mxmlファイル中の<mx:Script>タグの中に書くActionScript から、必要な部分のみを転記します。

//マーカーの追加
var marker : Marker = new Marker(centerPos); // var centerPos : LatLng  座標を決めて

marker.addEventListener(MapMouseEvent.CLICK, function(event:MapMouseEvent):void {
   marker.openInfoWindow(new InfoWindowOptions({
       contentHTML:"<img width='100' height='100'
           src='http://192.168.XXX.XXX/test/sample.png' vspace='5' hspace='5'>",
                   titleHTML:"HTMLタイトル", width:125, height:120})); });

mapmain.addOverlay(marker);

(気をつける点)
1. imgタグ内の属性の書き方が細かいです。シングルとダブル、どちらのクォーテーションで囲むのかを
  注意してください。
2. 属性 "src"の値は URL で書きます。最初ここにファイル名のみを書いていたのですが、
  いくら試しても画像が表示されませんでした。

 (情報ウィンドウ(吹き出し)すら出てきませんでした。)

 動作テストの際に適当な画像がない場合には、どこかのサイト上の画像ファイルで、
 直接ブラウザに表示できるものがあれば、それを使わせていただいて表示のテストを
 行うことができますし、それが手っ取り早いと思います。(サイズの小さいファイルにしてね!)
 例えば、
 http://livedocs.adobe.com/flex/3_jp/html/help.html 上で、画面左上の画像上でマウスの
 「右ボタン」→「画像だけを表示」 を選択すると、
 ブラウザのアドレス欄が http://livedocs.adobe.com/flex/3_jp/html/images/adobe.png と
 なります。これをそのまま "src" の値に設定して、その画像が表示されるかどうかを調べる、
 とかね...。
 あるいは、テストしているPC上でapache等が稼働している場合には、
 src='http://localhost/...../test.png' みたいな指定ができると思います。
 (これについては未確認)

動作確認画面

img タグの中で、width='100' height='100' を消して、
src='http://livedocs.adobe.com/flex/3_jp/html/images/adobe.png'
を指定した時の動作確認画面 (adobeさんに感謝!)


最後に、これだけは書いておかなくてはいけません。
この記事は、あくまでも「Flex Builder 3上での動作確認を行う際に起きた問題点とその解決策」
について書いたものであり、実際に開発したものを適切な環境において動作させる際には
画像ファイルを、ただ単にファイル名で指定しても動作するのかもしれません。
これについては
誰かに検証していただきたいです。
私は他の課題も抱えていますので、ひとまず他の課題に移ります。

スポンサーサイト
この記事に対してトラックバックを送信する(FC2ブログユーザー)
http://tadpolizemedia.blog118.fc2.com/tb.php/47-6131c8dd

0件のトラックバック

2件のコメント

[C3] 相対パスでも画像を表示できますよ

普通に相対パスでできましたけど・・・。

Flash
http://googlemaps.googlermania.com/tmp/flash_img_test/main.html

ソースコード
http://googlemaps.googlermania.com/tmp/flash_img_test/srcview/index.html

あくまで読んだ限りの予想ですが、「file://.....main.html」とそのまま実行したときに
画像が読み込まれないと言っていらっしゃいますか?
それだとFlashのセキュリティ違反になるため、読み込むことができません。
その場合は、xamppとか使ってlocalhostで実行すれば読み込むことが可能ですよ。
  • 2009-11-18
  • Masashi.K
  • URL
  • 編集

[C4] Re: 相対パスでも画像を表示できますよ

コメントありがとうございます。
ご指摘のとおり、Flashのセキュリティ違反に引っかかっていたようです。
恥ずかしながらセキュリティ違反の件は知りませんでした。

Flex Builder 3 では、ビルドした後に実行させると、(動作確認用の?)HTMLを自動的に
作成して、そのファイルをローカルで動作させます。すなわちご指摘の通り
「file://.....main.html」イメージの動作確認となります。
今までの動作確認は、FlexBuilder3の持つデフォルトの環境で行っていたのですが、
今回色々と調べてみたら、テスト環境についてもかなり細かく環境設定できることを知りました。

今後は、Apache等のサーバを動かしつつ、作られたswfファイルをHTTP経由で動作させるような
テスト環境をちゃんと作って動作確認を行います。ちゃんとした環境ならば、相対パスの指定で
できることを理解しました。
Google Maps API Key は localhostで取っております。確認はこの3連休にやってみます。
一歩前進できました。感謝します。
  • 2009-11-18
  • トオル
  • URL
  • 編集

コメントの投稿

投稿フォーム
投稿した内容は管理者にだけ閲覧出来ます

Appendix

プロフィール

 二代目松四郎

Author: 二代目松四郎


「カメラと動画(+スチル写真)」
「音響と音楽」
「プログラミング」
を主なテーマに活動しています。
映画館と美術館と音楽ホールと
古い街並みが私の学校。

宮城県仙台市在住。

カテゴリー

ブログ内検索

ブロとも申請フォーム

この人とブロともになる

Counter

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。