ファイアベースのストレージは非常にクールで使いやすいですが、Firebaseストレージにアップロードする前にイメージのサイズを変更する方法があるかどうかは疑問です。例えばImageMagickを使ってFirebase SDKを使用してアップロードプロセスを実行しますが、Firebase SDKサーバーのストレージ機能はありません。イメージをファイアベースにアップロードする前にリサイズ
答えて
Firebase Storage + Google Cloud Functionsを使用してイメージをアップロードしたり、ImageMagickなどを使ってイメージのサイズを変更したり、Firebase Storageに書き戻したりすることもできます。
私はこれらを一緒に使用している例がありますhere(私は画像リサイザーではなくCloud Vision APIをトリガーします)。
簡単な説明:Firebase StorageにはNode.jsクライアントがありませんが、代わりにGCloud-Nodeライブラリを使用することをお勧めします。
私は同じ考えをしていましたが、私は確信が持てませんでしたが、ノードの代わりにgcloud-golangを使用するのはすばらしいでしょう。 –
いつでもオブジェクト変更通知(https://cloud.google.com/storage/docs/object-change-notification)+ Go Google App Engineアプリ(https://cloud.google.com/appengine/)を設定することができます。 docs/go /)これを行う:) –
まあ、雲の機能がfirebaseの一部であることは、nodejsを使って解決策を実装する方が簡単だと分かっています。 –
私たちはを使用しています。画像のサイズを変更するクライアントのデバイス処理能力を使用するJavaScriptのサイズ変更は、大いに役立ちます。私たちはスペースとコストを節約し、クライアントを大部分のモバイルケースで節約します。
我々はを使用しているオリジナルのスクリプトがfrom hereを来て、それを使用する手順は、このように簡単です:
<input type="file" id="select">
<img id="preview">
<script>
document.getElementById('select').onchange = function(evt) {
ImageTools.resize(this.files[0], {
width: 320, // maximum width
height: 240 // maximum height
}, function(blob, didItResize) {
// didItResize will be true if it managed to resize it, otherwise false (and will return the original file as 'blob')
document.getElementById('preview').src = window.URL.createObjectURL(blob);
// you can also now upload this blob using an XHR.
});
};
</script>
私は男(dcollienが)メリットのLOTに値すると信じているので、私彼の答えを投票することをお勧めします。
最後のコメントにいくつかの問題があります。まず、これがclient-> serverの場合、サイズ変更が実行されることが保証されていないことを理解してください。クライアントは、上記のルールに従わないと決めると、別のサイズの画像をアップロードしてアップロードすることができます。クライアントを信頼しないでください。クライアントがサーバーからのもののサイズを変更したい場合。これはスタイルと同じで、帯域幅を減らすことはできません。
https://stackoverflow.com/questions/37557343/resize-an-image-before-uploading-it-to-firebase/49162553#comment85330829_37558536 –
- 1. イメージをファイアベースにアップロード
- 2. イメージをファイアベースにアップロードするときにスウィフトアプリがクラッシュする
- 3. ファイアベースに送信する前にイメージのサイズを変更
- 4. イメージをブートストラップモーダルウィンドウにリサイズする
- 5. イメージをサムネイルバージョンにリサイズ
- 6. イメージをファイアベースのストレージにアップロードする前にイメージのサイズを縮小するにはどうすればいいですか?
- 7. イメージのサイズをリサイズする
- 8. カメラの画像をファイアベースにアップロード
- 9. ローカルフォルダからファイアベースにファイルをアップロード
- 10. XPMイメージのリサイズ
- 11. イメージをアップロードする前に、イメージIDでイメージパスを生成する方法
- 12. イメージをファイルにアップロードする
- 13. イメージをデータベースにアップロードする
- 14. Androidファイアベース複数画像アップロード
- 15. アップロードの前後にイメージをプレビューする方法は?
- 16. イメージがファイアベースのストレージに重複してアップロードされないようにする方法はありますか?
- 17. 複数の画像をファイアベースのストレージにアップロードする
- 18. swift:フォトライブラリから画像を撮ってファイアベースにアップロードする
- 19. Drupalイメージは第2のイメージフィールドにリサイズ
- 20. イメージをサーバーにアップロードする前にイメージをプレビューするにはどうすればいいですか?
- 21. イメージを固定サイズにリサイズし、元のイメージサイズを維持する
- 22. CSSイメージの動的リサイズ
- 23. イメージをSQLiteデータベースにアップロードするには?
- 24. アップロード/リサイズ時に黒い背景を表示するPNG画像
- 25. JavaScriptを使用してアップロードする前にイメージを縮小する
- 26. Flutter&Firebase:アップロード前の圧縮イメージ
- 27. アップロード時にイメージをリフレッシュする
- 28. イメージをサーバーにアップロードする方法
- 29. イメージをHTML5キャンバスにアップロードする方法
- 30. イメージをサードパーティにアップロードする(imgur-esque)PHP
「Firebaseにアップロードする前に」アップロードするには[画像を操作するためのいくつかのノードライブラリがあります](http://stackoverflow.com/questions/24026320/node-js-image-resizing-without-imagemagick)、はい? – Kato
はい、どの言語でもこれを実行する方法はたくさんあります。 –