イメージをゼロから作成するJavaコードがあります。「オンザフライ」でイメージ名を指定するJavaイメージの生成
私はまた、いくつかのパラメータ(fyi、QRコード生成)に従って画像を提供するサーブレットを持っています。
誰かが右クリックして保存する場合にこのイメージの名前を指定したいと思います。現在、ブラウザは相対URLを名前(すなわち生成)として受け取り、拡張子はありません。
ご存知ですか?
ありがとう、 Alexis。
イメージをゼロから作成するJavaコードがあります。「オンザフライ」でイメージ名を指定するJavaイメージの生成
私はまた、いくつかのパラメータ(fyi、QRコード生成)に従って画像を提供するサーブレットを持っています。
誰かが右クリックして保存する場合にこのイメージの名前を指定したいと思います。現在、ブラウザは相対URLを名前(すなわち生成)として受け取り、拡張子はありません。
ご存知ですか?
ありがとう、 Alexis。
あなたの画像をエンコードするには、いいURLを使用してください。
私は
images/qr/product27_q5.png
にこの方法でそれをマッピング、今あなたが
代わりgenerateServlet?product=27&query=5
ような何かをやっていると仮定し、ブラウザだけで素敵なURLを参照し、ファイル名としてそれを提案します。また、実装をより隠すこともできます。
サーブレットをimages/qr/*
にマップして、正規表現を使用して、要求されたパスから実際のパラメータを抽出します。
あなたも提供拡張子に応じて、異なる画像タイプを生成することがありました:)
resp.setContentType("image/jpg");
resp.setHeader("Content-Disposition", "attachment; filename=\"" + your_filename + "\"");
+1。名前に注意してください:)ファイル名をヘッダーにエンコードする方法については、ascii-7のみを使用するか、リファレンスを参照してください。 – helios
これはイメージをダウンロードするために機能します。私の場合は HTMLタグで表示されます。私はまた、 "Content-Disposition"、 "inline; –
も、このように行うことができます。 'img/viewcover.jpg?selected = 22233' viewcover.jpgサーブレットにマップします。 – zawhtut
それを行うにはうまくいく方法ですが、私はいくつかのレスポンスヘッダーを考えていました。それよりも優れています:imageioメタデータ:)。とにかく、ありがとう、私はそれを実装することを考えます。 –
@zawhtut:はい。しかし、すべての画像がダウンロードされると、viewcover.jpgという名前が付けられます。あなたは異なる名前が必要で、多分ユーザーにとっては説明的なものでもあります。 –