Я работаю над расширением Chrome: когда вы перетаскиваете изображение, оно будет сохранено на вашем компьютере.
Я узнал, что в HTML5 есть FileWriter API, но действительно не могу найти ни одного примера, а Chrome поддержать это?
Как сохранить изображение с помощью JavaScript?
Ответы:
Нет, в HTML5 нет FileWriter API. Вероятно, вы имеете в виду API файлов, который позволяет вам читать файлы. А в Chrome даже расширения не могут записывать файлы из соображений безопасности. Поэтому, если вы не хотите связывать плагин NPAPI с вашим расширением (что вызовет огромное предупреждение при установке), все, что вы можете сделать, это вызвать сообщение о загрузке, которое пользователь может принять или нет. См. Кросс-браузерное сохранение как .txt для возможного подхода (Flash объекты, такие как Downloadify, являются другими).
Изменить: я ошибался, есть предложение API FileWriter. Однако до этого очень далеко.
Я нашел это. http://www.html5rocks.com/en/tutorials/file/filesystem/ Вы можете найти несколько примеров.
Изменить Это скриншот из статьи. Я использую хром 12.0
Я не думаю, что API FileWriter будет готов и готов к использованию в течение некоторого времени.
Вы можете получить данные изображения в шестнадцатеричном формате, а затем использовать DataURI для «экспорта» их из браузера. Хотя это приводит к сохранению файла с таким именем, как «загрузка (1)». Кажется, что каждый браузер имеет разные ограничения размера для DataURI, и они невелики, хотя для изображения разумного размера они подходят.
http://en.wikipedia.org/wiki/Data_URI_scheme
В качестве альтернативы вы можете использовать Downloadify, чтобы сохранить его с правильным именем файла (требуется флэш-память и может быть сложно встроить в расширение Chrome).
http://davidwalsh.name/downloadify