标签: clipboarddata

使用javascript在Html页面中粘贴系统中的图像

嗨,我正在创建一个网络聊天应用程序,我希望用户可以从桌面复制粘贴图像或直接粘贴屏幕截图,但我无法实现它.我使用以下代码:

$("#dummy").on("paste",function(event){

var items = (event.clipboardData ||   event.originalEvent.clipboardData).items;
console.log(JSON.stringify(items)); // will give you the mime types
for (index in items) {
    var item = items[index];
    if (item.kind === 'file') {
        var blob = item.getAsFile();
        var reader = new FileReader();
        reader.onload = function(event){
            console.log(event.target.result)}; // data url!
        reader.readAsDataURL(blob);
    }
}

})
Run Code Online (Sandbox Code Playgroud)

在Chrome和Firefox中使用上面的代码我在图像的情况下得到Clipboarddata undefined.我在谷歌尝试了很多链接,但无法达到目标.我也试过下面的stackoverflow 链接:使用JavaScript从剪贴板粘贴图像也是以下链接:

http://strd6.com/2011/09/html5-javascript-pasting-image-data-in-chrome/

http://codepen.io/netsi1964/pen/IoJbg

任何人都可以帮我完整的例子如何实现它?

html javascript jquery html5 clipboarddata

29
推荐指数
2
解决办法
9545
查看次数

复制事件中的event.clipboardData.setData

我看过很多帖子但是找不到以下两个问题的明确答案,因为看起来标准和浏览器支持一直在不断变化.

  1. 根据标准,使用event.clipboardData.setData在'copy'事件处理程序中更改剪贴板是合法的操作吗?

  2. 最新版本的Chrome/FF/Safari/IE/Chrome iOS/Android/iPhone是否支持此功能?

谢谢!

html javascript w3c dom-events clipboarddata

19
推荐指数
2
解决办法
3万
查看次数

使用GetText从剪贴板获取文本 - 避免在空剪贴板上出错

我正在使用这样的代码从剪贴板中获取文本.

Dim DataObj As New MSForms.DataObject
DataObj.GetFromClipboard
myString = DataObj.GetText
Run Code Online (Sandbox Code Playgroud)

我使用错误处理来解决剪贴板为空的情况,只要我将错误陷阱设置为未处理错误的中断,一切都很好.

但是,由于无关的原因,我想将错误陷阱设置为中断所有错误,这会在DataObj.GetText找到空剪贴板时引发错误.是否有任何类型的测试我可以进一步上游应用以避免尝试处理空剪贴板?

excel clipboard vba copy-paste clipboarddata

15
推荐指数
2
解决办法
5万
查看次数

如何在角度JS中获取剪贴板数据

我实际上是想使用角度JS来获取剪贴板的内容来模拟复制粘贴的东西.

clipboard clipboarddata angularjs

14
推荐指数
2
解决办法
3万
查看次数

从浏览器获取图像(使用粘贴)

通过浏览器(例如chrome)复制图片有两种方式,复制图片和复制图片地址。

当我复制图像地址并使用“粘贴图像”按钮粘贴它时,我可以获取从 Base64 浏览器复制的图像。但是当我复制图像时,我无法获取图像。有没有办法使用图像 coipar 来获取图像,如示例所示?

演示

代码

  clickPaste() {
    let self = this;
    (navigator as any).clipboard.readText().then(clipboard => self.clip = clipboard);
console.log(self.clip) // copy image adress ---> base64
  }
Run Code Online (Sandbox Code Playgroud)

复制图像地址示例 - 工作 图像

图像

示例复制图像 - 不起作用

图3

图像4

我知道复制图像和复制图像的地址是不同的事情,但是当我使用复制图像时,我无法找到如何获取图像(blob 或 base64)。

javascript clipboard clipboarddata typescript angular

11
推荐指数
1
解决办法
2万
查看次数

从文件浏览器和HTML5剪贴板API粘贴

我正在尝试使用标准例程向我的Web应用程序添加图像粘贴功能:

$('textarea').on('paste', function (ev) {
    var clipboardData = ev.originalEvent.clipboardData;

    $.each(clipboardData.items, function (i, item) {
        if (item.type.indexOf("image") !== -1) {
            var reader = new FileReader();

            reader.readAsDataURL(item.getAsFile());
            reader.addEventListener('loadend', ...);
            ...
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

完整的样本可以在这里找到:http://jsfiddle.net/t8t2zj6k/

当我从图像查看器软件复制并粘贴图像时,它可以正常工作,但是当我尝试使用文件浏览器(例如Mac上的Finder或Linux上的Nautilus)做同样的事情时,我只得到一个文本字符串使用文件路径甚至是带有文件类型图标的图像而不是原始文件.

有没有办法正确处理文件浏览器中的粘贴?

javascript html5 clipboarddata

9
推荐指数
1
解决办法
3473
查看次数

从 Windows 资源管理器将文件粘贴到网页中

我正在尝试将 Windows 资源管理器中的文件粘贴到网页中。访问时event.clipboardData items,filestypes都为空。

如果我截取屏幕截图(Ctrl + PrintScrn)或复制纯文本然后粘贴到网页中,items并且types填充得很好。

我在窗口上附加了粘贴事件。我正在使用最新的 Chrome。

javascript clipboarddata

8
推荐指数
0
解决办法
1277
查看次数

将当前URL复制到剪贴板

不知道为什么今天对我这么困难,但由于某种原因我似乎无法将当前的URL复制到剪贴板.总的来说,我正在寻找一种方法来做到这一点,无需创建一些隐藏的文本元素.

这是我到目前为止所尝试的:

var shareBtn = document.querySelector(".share-button");

shareBtn.addEventListener('click', function(event) {
  var cpLink = window.location.href;
  cpLink.select();

  try {
    var successful = document.execCommand('copy');
    var msg = successful ? 'successful' : 'unsuccessful';
    console.log('Copy command was ' + msg);
  } catch (err) {
    console.log('Oops, unable to copy');
  }
  event.preventDefault;
});
Run Code Online (Sandbox Code Playgroud)

当我尝试使用它时,.select()我得到了这个错误: t.select is not a function 所以我不是100%确定最好的方法是什么.再次,不使用jQuery(或任何其他JS库)而不使用某种隐藏的文本字段.

html javascript clipboard clipboarddata

8
推荐指数
3
解决办法
6750
查看次数

如何使用Python在操作系统剪贴板中添加/获取图像数据?

我有一些编辑图像文件的 Python 代码,并且想知道如何将
图像数据添加到操作系统剪贴板并从那里获取它。

当在 Python 中搜索跨平台解决方案来替换或获取剪贴板文本
时, 有许多简单的答案可以实现(例如,使用内置的 Tkinter 模块和一些代码)。
然而,这些方法只能使用纯文本,而不能使用图像等其他剪贴板数据。

我的 Python 版本在 Windows 上是 3.x,但答案需要是跨平台的
(在不同操作系统上工作),并且还应该支持其他 Python 版本,如 2.x。
我认为它应该只使用内置的Python模块,并且代码不应该太复杂(或者对其作用进行解释)。它可以是 Python 模块,因为这些文件可以包含在与可移植程序代码相同的文件夹中以避免安装。

还有一些其他相关问题可能适用于图像,但它们仅支持单个操作系统。最好的是在Python3中将图像复制到剪贴板使用PIL和win32clipboard在python中将图像写入Windows剪贴板?
那里描述的方法(仅适用于 Windows)似乎使用以下步骤:

  • 获取图像的原始二进制数据 - 该方法使用 Python 图像
    库 ( PIL/Pillow ) 模块加载图像文件,因为它具有稍后在简单
    且流行的标准 API 中使用的其他处理功能。这可以使用不同的模块来完成(例如Pygame)。
  • 使用内置io
    模块创建一个文件对象变量(用于内存中输入/输出流)。对于 Python 2.x,from cStringIO import StringIO使用,但对于 Python 3,使用
    更好的二进制流对象类型 - 旧的现在仅允许文本。io.BytesIO
  • 将图像数据以 BMP(Windows 位图/设备独立位图)文件格式保存
    到上一步中的文件对象变量中。使用 PIL/Pillow 的方法首先将此
    数据转换为.convert("RGB")包含它的变量。
  • 获取文件对象变量内存缓冲区的全部内容作为二进制数据(bytes对象),
    从位置 14 …

python clipboard python-3.x clipboarddata

6
推荐指数
1
解决办法
9518
查看次数

JS:点击获取剪贴板数据(而不是粘贴)

如何在单击按钮时获取剪贴板数据.. 而不是粘贴到 textarea 中。

像这样的事情:

<button onclick="seeClipBoard">Click to see your clipboard data</button>

<div id="seeData"></div>

var seeClipBoard = function() {
    var data = ****************** ;
    $("#seeData").html(data);
};
Run Code Online (Sandbox Code Playgroud)

我不想使用粘贴事件,但单击

谢谢!

javascript clipboard onclick clipboarddata

6
推荐指数
0
解决办法
903
查看次数