2
A
答えて
2
GWTのトランクでClientBundleをチェックアウトする必要があります。 http://code.google.com/p/google-web-toolkit/wiki/ClientBundle
この機能はGWT 2.0まで出荷されていませんが、現在は多用されています。
2
はい。これを行うことは完全に可能です。 IE6がバイナリデータストリームをこのように処理しないことを実現するまでは、アプリケーション用にしました。あなたはいくつかの方法でそれを行うことができます。私の例では、バイト配列をどこかの文字列に変換し、適切にエンコードされ、データURIの型が適切であると仮定しています。私はまた、あなたが選択したデータスキームの基本的なフォーマットを知っている(またはそれを見つけることができる)と仮定しています。
私はこれらの例をfrom the Wikipedia article on data URI scheme撮影しました。
最初はちょうどあなたが通常どおり画像の参照を作るために、生のHTMLを使用して、それをページに挿入することです。
HTML html = new HTML("<img src=\"data:image/png;base64,
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGP
C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IA
AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J
REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq
ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0
vr4MkhoXe0rZigAAAABJRU5ErkJggg==\" alt=\"Red dot\">");
画像を使用することもできます。 (どのほぼ同じ出力HTML/JSを生成する必要があります。)
Image image = new Image("data:image/png;base64,
iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGP
C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IA
AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J
REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq
ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0
vr4MkhoXe0rZigAAAABJRU5ErkJggg==");
これは、あなたのロードされた画像の上に画像抽象化のフルパワーを使用することができます。
私はまだあなたがこのソリューションを拡張し、データURIをサポートしていないブラウザに対処するためにGWTの延期バインディングメカニズムを使用することを考えています。 (IE6、IE7)
関連する問題
- 1. データのURIの文字セット
- 2. C# - データURIへの要求
- 3. Androidデータの挿入とURI
- 4. クロム/ ffにcreateObjectURLを使用したオブジェクトURIへのデータURI
- 5. GWTとJavaのGoogleデータAPI
- 6. Spotify - URIからの取得nullデータ
- 7. ベストプラクティス - データ提出GWT MVP
- 8. URLとURI(常にURL(任意のデータ)をURIに変換する理由)
- 9. 「おやおや、スナップ」データURIは
- 10. データURIをイメージデータに変換する
- 11. ブロブにデータURIが壊れる画像
- 12. GWTの巨大なデータ処理
- 13. GWTのアクティビティ/プレゼンター間でデータを共有
- 14. GWTのFormPanelからデータを受信
- 15. GWTとWebSocket /サーバーからGWTクライアントにデータをプッシュ
- 16. UriマッピングとURIルーティング
- 17. カスタムコントローラでのSpringデータのREST URIの受け入れ
- 18. musicbrainz URIをSpotify URIにマッピング
- 19. gwtでFormpanelからデータを受信
- 20. URI
- 21. appendChildデータIE内の他のオブジェクトを置き換えるURI
- 22. どのブラウザがデータURIをサポートしていますか?
- 23. のPython/PIL:データURIから画像を作成し、保存し
- 24. Firefoxで@ font-faceでデータのURIを使用する方法
- 25. Chrome拡張機能:データURIのコンテンツを操作する権限
- 26. URI :: InvalidURIError悪いURI(URIではありません?):タンカー
- 27. リテラルUriのリクエスト
- 28. 中括弧を含むURIの解析URI :: InvalidURIError:不正なURI(URIではない?)
- 29. PageNotFound - URI
- 30. データURIをイメージとして保存しますか?
+1はclientBundleを推奨します。ただし、データURLは、base64でエンコードされた文字列が同等の画像よりも大きいため、帯域幅の点で効率が悪い可能性があります。私はどのデータのURLがCSSスプライト(ImageBundleはあなたのために自動的に行うのですか)以上のものを持っているか分かりません。 – Chii
実際には、オブジェクトモデルが持つデータの種類によって異なります。職場では、イメージバイナリデータを持つXMLデータ標準と対話します。このデータをクライアント上で利用するのは理にかなっています。さもなければ、私たちはそれを壊してメッセージから取り除き、どこかのサーバにそれを格納し、次に戻って情報を取得するサーブレットコールを持っていなければなりません。言い換えれば、時にはこれが画像サーブレットを持つことになる。 –
ありがとう、これは完璧です! :) –