2011-06-24 14 views
7

Chrome拡張機能を使用しています:画像をドラッグすると、画像がパソコンに保存されます。
私は、HTML5にはFileWriter APIがありますが、実際にその例は見つかりませんでしたが、Chromeはそれをサポートしていますか?JavaScriptを使って画像を保存する方法は?

答えて

3

を使用しています。あなたはおそらく、File APIであり、のファイルを読むことができます。また、Chromeでは、セキュリティ上の理由から拡張機能でもファイルを書き込むことはできません。あなたの拡張機能(インストール時に大きな警告を発する)とNPAPIプラグインをバンドルしない限り、ユーザーが受け入れるかどうかを選択できるダウンロードメッセージが表示されます。可能なアプローチについては、Cross-browser Save As .txtを参照してください(Flashオブジェクト、Downloadifyなど)。

編集:私は間違っていましたが、FileWriter APIの提案があります。しかし、それは非常に遠いです。

2

これが見つかりました。 http://www.html5rocks.com/en/tutorials/file/filesystem/ いくつかの例があります。

これは記事のスクリーンショットです。私は、HTML5でてFileWriter APIが存在しない、クロム12.0

FileWriter API browser support message http://s3.amazonaws.com/twitpic/photos/full/329503613.png?AWSAccessKeyId=AKIAJF3XCCKACR3QDMOA&Expires=1308932374&Signature=DXBdFSjbNqaeJPr%2F0fSAqPWyh2E%3D

+0

は、明らかに私は私の答えに言ったことにユーザーのディスクは逆の部分への読み取り/書き込みアクセスを許可する提案があります。しかし、この提案は初期段階にあり、ブラウザによっては決して実装されないかもしれません(セキュリティの問題はまだ解決されていないようです)。 –

+0

@Wladimirこの記事では、クロムとブラウザ(クロム)がこの記事で使用されているすべての機能をサポートしているようです。私はスクリーンショットをアップロードします。 –

1

私はFileWriter APIがまだ準備ができていて、まだ使用可能ではないと思います。

イメージデータを16進数で取得し、DataURIを使用してブラウザから「エクスポート」できます。これは、 "download(1)"のようなファイル名で保存されます。各ブラウザは、DataURIのサイズの制限が異なっているようですが、サイズは大きくありませんが、合理的なサイズの画像であれば問題ありません。

http://en.wikipedia.org/wiki/Data_URI_scheme

また、あなたが適切なファイル名で保存するDownloadifyを使用することができます(フラッシュを必要とし、Chromeの拡張機能の中に埋め込むことが難しいかもしれません)。私が見

http://davidwalsh.name/downloadify

関連する問題