Ответ Nick, по-видимому, нуждается в небольших изменениях в работе:)
// window.addEventListener ('paste', ... или document.onpaste = function (event) { // используйте event.originalEvent.clipboard для новых версий chrome var items = (event.clipboardData || event.originalEvent.clipboardData) .items; console.log (JSON.stringify (items)); // предоставит вам типы mime // найти вложенное изображение из вложенных элементов var blob = null; for (var i = 0; i & lt; items.length; i ++) {if (items [i] .type.indexOf ("image") === 0) {blob = items [i] .getAsFile ();}} // загружать изображение, если есть вставленное изображение if (blob! == null) {var reader = new FileReader (); reader.onload = function (event) { console.log (event.target.result); // data url!}; reader.readAsDataURL (blob);}}
Пример кода: http: // jsfiddle .net / bt7BU / 225 /
Таким образом, изменения ответа на ники были:
var items = event.clipboardData.items;
[ ! d13]to
var items = (event.clipboardDa ta || event.originalEvent.clipboardData) .Items;
Также мне пришлось взять второй элемент из вставленных элементов (первый, кажется, текст / html, если вы копируете изображение с другой веб-страницы в буфер). Поэтому я изменил
var blob = items [0] .getAsFile ();
в петлю, в которой найден элемент, содержащий изображение (см. выше)
Я не знал, как ответить прямо на ответ Ника, надеюсь, что здесь хорошо: $:)
Как следует из комментариев, это может быть проблемой архитектуры.
Если вы используете 32-битную DLL с 64-битным Python или наоборот, тогда вы, вероятно, получите ошибки.
Поскольку у меня была ваша ошибка раньше, я рекомендую попробовать загрузить вашу DLL с 32-битным Python.
У меня была такая же проблема. Я исправил, скомпилировав свой код на C с помощью командной строки VS2015 x64. Теперь все 64 бит.