JavaScript:在没有画布的情况下获取ImageData

2023-12-15

是否有可能获得ImageData来自图像的对象,该图像不在画布上,而是在 DOM 树中的其他位置(正常情况下)<img> ?

如果是,怎么办?


您必须创建一个内存画布,然后在此画布上绘制图像:

var canvas = document.createElement('canvas');
var context = canvas.getContext('2d');
var img = document.getElementById('myimg');
canvas.width = img.width;
canvas.height = img.height;
context.drawImage(img, 0, 0 );
var myData = context.getImageData(0, 0, img.width, img.height);

但如果图像来自另一个域,这将不起作用。如果您无法控制服务器,这是一个无法绕过的安全限制(请注意,如果您使用 file:// 打开 html 文件,您将有很多额外的限制,请使用 http://)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JavaScript:在没有画布的情况下获取ImageData 的相关文章

  • 将字符串编码为 HTML 字符串 Swift 3

    如何快速编码字符串以删除所有特殊字符并将其替换为其匹配的 html 编号 假设我有以下字符串 var mystring This is my String That s it 然后用它的html编号替换特殊字符 38 39 gt 62 但我
  • 如何在 Jest 测试中模拟 StatusBarManager.getHeight?

    我正在使用 expo 34 并且反应本机用户界面库 https www npmjs com package react native ui lib来自 wix 并且在为我的组件设置笑话测试时遇到问题 问题看起来出现在link https g
  • 赋予 d3 序数轴标签与尺度名称不同

    我有一个序数scale具有不同值的某些标签 我想显示该比例的轴 其中轴标签与比例标签不同 我有这个代码 var width 1000 var height 600 var margins left 100 40 right 25 botto
  • Angular 7 Guard 重定向仅适用于双击

    问题是我已经实现了一个 Guard 旨在处理特定的目录 如果当前用户名的角色等于 2 它应该返回 true 如果没有 那么它不应该重定向 这是我的 app routing module ts 文件 问题出在 userlist 路径中 我们是
  • AttachEvent 或 addEventListener - 存储在哪里?

    在 jQuery 中 如果我这样做 a click function Do something 点击事件存储在 a data events 我可以像这样获取它 jQuery each a data events function i eve
  • React.js this.props.data.map() 不是一个函数

    我正在搞乱反应并尝试解析和渲染 json 对象 现在 我只是使用硬编码对象设置它以进行测试 而不是从 ajax 调用中获取它
  • 拖放图像上传在服务器上不起作用

    我正在尝试实现拖放图像上传 我在网上找到了一个相当简单的脚本并适合我的使用 在我的本地安装中 文件上传得很好 但在服务器上却不行 从我的调试尝试来看 SERVER HTTP X FILENAME 甚至没有被 php 设置 我尝试了以下方法
  • Javascript 根据字段值任意排序数组

    所以我有一个对象数组 如下所示 var myArray priority low priority critical priority high 我需要以这种方式排序 1 关键 2 高和3 低 如何才能做到这一点 我建议使用一个对象来存储排
  • 如何使页面上的所有内容变大?

    如果我在浏览器中打开我的网站并按Ctrl 有几次 一切都变得更大 网站对我来说看起来更好 我可以通过在 HTML 代码中添加一些内容来实现相同的效果吗 以便用户默认看到更大的所有内容 而无需按Ctrl 我想让所有东西都变大 文本和图像 如果
  • contenteditable 在 safari 中不起作用,但在 chrome 中起作用

    我有一个奇怪的问题 这在 chrome 中按预期工作 但在 safari 中它只会发光 但不会对按键输入做出反应 这是触发文本版本的方法 var namebloc event currentTarget find column filena
  • 如何正确关闭 Node.js Express 服务器?

    我需要在收到回调后关闭服务器 auth github callback网址 与平常一样HTTP API http nodejs org docs latest api http html关闭 服务器目前支持server close call
  • 检测 JavaScript 中的焦点丢失

    我希望能够检测 JavaScript 中任意元素何时失去焦点 因此我可以构建一个类似于 jEdit 的内联编辑工具 我不能依赖 jQuery 来实现这个库 所以我需要一个本机方法来完成它 我查看了 onblur 这似乎是正确的事情 但 MD
  • 如何混淆或使 JavaScript 文件不可读?

    我的应用程序中有 JavaScript 脚本 其中包含 JavaScript 和 jQuery 函数 所有用户与我的应用程序的交互都是动态的 并且通过 jQuery 传递到应用程序 我意识到 当我在客户端运行我的应用程序时 客户端可以通过查
  • jQuery 面板滑块通过单击按钮打开但不会关闭

    我的页面上有一个按钮 可以使用 jquery 和 Modernizr 框架打开右侧面板 按钮位于屏幕最右侧 单击时 它会向左滑动并打开打开的面板 问题是 再次单击时它不会滑回到原来的位置 HTML div class cd panel fr
  • NodeJS 中的缩进多行日志记录

    我要打印JSON stringify d 反对控制台 将上下文作为 Mocha 测试套件输出的一部分 当测试缩进时 我希望对象日志行向右缩进足够远 例如 3 4 个制表符空格 以便它们可以识别地位于右侧describe group 我怎样才
  • Javascript/DOM:如何删除 DOM 对象的所有事件侦听器?

    只是问题 有没有办法完全删除对象的所有事件 例如一个div 编辑 我添加每div addEventListener click eventReturner false 一个事件 function eventReturner return f
  • jVectorMap - 向下钻取地图 - 自定义背景

    我正在使用 jVectorMap 中的向下钻取地图 并且尝试将自定义背景颜色设置为地图的第二层 为了自定义主级别 我使用 main 参数 但我不知道如何将其扩展到地图的较低级别 提前致谢 马切伊 None
  • Javascript 替换为正则表达式无法正常工作

    我正在尝试使用正则表达式验证名称 正则表达式阻止用户连续输入 2 个空格或点 这是我的代码 function test input var regex A Za z 0 1 s 0 1 input value input value rep
  • 当 jQuery .remove() 用于删除脚本标签时,它是否会清除加载的 JavaScript?

    正如标题所示 如果我使用以下命令从 DOM 中删除脚本标签 scriptid remove javascript 本身是保留在内存中还是被清除了 或者 我完全误解了浏览器处理 javascript 的方式吗 这是很有可能的 对于那些对我提问
  • ES6解构对象赋值函数参数默认值

    您好 我正在查看在传递函数参数时使用对象解构的示例对象解构演示 https developer mozilla org en US docs Web JavaScript Reference Operators Destructuring

随机推荐

  • 如何在使用 QnA 机器人时对其进行训练?

    我使用 bot framework SDK3 和 QnAmaker 服务制作了一个 QnA 机器人 据我所知 我们可以训练我们的知识库 但我不知道如何在团队等其他渠道中使用我的 QnA 机器人时对其进行训练 我想我可以让用户判断机器人的回答
  • subprocess.call() 和 os.system() 之间的速度差异

    执行速度是否有任何差异subprocess call and os system 命令 假设命令本身完全相同 我知道有很多帖子谈论子流程的好处及其原因os system 应该被抛弃 但没有人提到它们的速度 据我了解 子流程远不及包装器os
  • JSON 序列化以元组为键的字典

    Python 有没有办法序列化使用元组作为键的字典 e g a 1 2 a 简单地使用json dumps a 引发此错误 Traceback most recent call last File
  • 将 firestore“integer_value”转换为整数

    使用 Golang Firestore 1 8 库 我尝试使用 Google 去年秋天推出的 Firestore 的新 count 函数 这些文档似乎还没有示例 不是我发现的 但我拼凑了一些有点可行的代码 这些代码几乎让我完成了所有工作 只
  • WPF 拖放

    如何为 WPF 应用程序实现拖放 我可以打开 2 个相同的应用程序并将一个对象从一个应用程序拖动到另一个应用程序 这是我要拖动的内容
  • 按行重塑数据框[重复]

    这个问题在这里已经有答案了 我有一个类似于以下示例的数据框 gt df lt data frame imp c Johny Johny Lisa Max item c 5025 1101 2057 1619 gt df imp item 1
  • 仅最初需要 git 子模块更新?

    我正在掌握 git 子模块 一厢情愿的想法 并且我提出了更具体的问题 这是一个好兆头 我试图找到超级项目引用的子模块的哪个版本 在 gitmodules and git config 但那里没有提到任何内容 这种情况是 我正在更改根位置的子
  • 与 HoloEverywhere 的相对 Gradle 项目依赖性

    我有这个目录结构 Project contrib holo everywhere library addons slider preferences app library app one app two settings gradle 我
  • 保留选定的打印机设置

    我有一个应用程序 它运行一系列预订 并以行程的形式依次打印每个预订并发送给客户 每次运行可能有 30 个左右的预订 因此需要自动化 我们已经交付了它 所有这些都可以与我们的报告软件 DELPHI 的 Report Builder 配合使用
  • 使用 / 分割 C++ 字符串

    我有一个 C 字符串 如下所示 dirname filename ini 我需要在之后得到一切 我怎样才能做到这一点 Using find and substr方法来自std string std string fullpath dirna
  • 模块构建失败(来自 ./node_modules/postcss-loader/src/index.js)

    当我运行命令时 我正在使用角度和节点npm start我收到这个错误 src styles scss 中的错误 node modules css loader dist cjs js ref 13 1 node modules postcs
  • 运算符重载,运算符+与运算符+=

    我正在阅读一些 C 源代码 并且了解了一些语法 path path operator string postPath 我想知道这是否是实际的语法以及为什么 c 不使用已经存在的运算符 而是将值应用于有问题的对象 就像您想确保对象被正确删除一
  • 按对象键过滤对象数组

    我有一个 Javascript 对象数组 var List employee Joe type holiday employee Jerry type seminar employee Joe type shore leave 我想获得两个
  • Rails 的地理定位 API [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我试图从我的 Rails 应用程序中显示某个位置的地图 我尝试检查 YM4R GM 和 GeoKit 组合 但不确定是否有更好的 Rails 3 的
  • 转换为 64 位 int

    因此 我正在使用 PHP 来转换 Steam Id 这可能是你们很多人都熟悉的 我有以下 Steam ID STEAM 0 1 1514332 现在 我需要将其转换为 64 位版本 这也是社区 ID 浏览 Steams 官方发布后 http
  • 如何在 WPF 中过滤 ListView?

    我有一个绑定到项目集合的 ListView 我不想显示属性 IsDeleted 1 的项目 我怎样才能做到这一点 我将使用 CollectionView 并将 Filter 属性设置为表达式 var view CollectionViewS
  • 如何准确测量具有已知 DPI 的鼠标的鼠标移动(以英寸或厘米为单位)

    我有一个 Logitech G500 游戏鼠标 其全 DPI 为 5700 我正在尝试用 C 编写一个程序 以物理单位准确测量鼠标的水平移动 即 厘米或英寸 我通过 WM INPUT 消息使用 Windows API 和 Windows 原
  • 将一个 html 文件包含到另一个文件中 [关闭]

    很难说出这里问的是什么 这个问题模棱两可 含糊不清 不完整 过于宽泛或言辞激烈 无法以目前的形式合理回答 如需帮助澄清此问题以便重新打开 访问帮助中心 我想将一个 html 文件包含到另一个文件中 但似乎行不通 这两个文件是 C wamp
  • 在另一个函数中访问时函数结果未定义

    我试图取回另一个函数内部函数的结果 但总是未定义 window load function var isMobile false function check OS if iPhone iPod iPad i test navigator
  • JavaScript:在没有画布的情况下获取ImageData

    是否有可能获得ImageData来自图像的对象 该图像不在画布上 而是在 DOM 树中的其他位置 正常情况下 img 如果是 怎么办 您必须创建一个内存画布 然后在此画布上绘制图像 var canvas document createEle