您可以使用 Canvas 截取页面的“屏幕截图”吗?

2024-02-13

我有一个页面,我们使用 CSS 定位一堆元素,并使用 JS 更改它们的“顶部和左侧”位置。

我收到的报告称这些事情已经错位,但用户有动机对此撒谎以“作弊”,所以我不确定他们是否说的是实话。我试图找到一种方法来弄清楚他们是否在撒谎,并找到一些“证据”。

我知道 Canvas 有一种方法可以从图像元素或另一个画布元素复制图像信息(类似于 BitBlt 操作)。

是否有可能以某种方式,使用 Canvas(或使用其他东西,Flash,等等),拍摄页面的一部分的“照片”?
再说一遍,我并不是想从某个人那里获取信息<image>。我试图复制用户看到的内容,它由几个绝对定位的 HTML 元素组成(我最关心这些位置),并以某种方式将其上传到服务器。

我知道这是不可能的,但也许我错过了一些东西。

有任何想法吗?


之前有人问过一个和这个有点相似的问题。滚动到 Youtube 底部并单击“报告错误”链接。 Google 的反馈工具(Javascript 驱动)基本上执行您所描述的操作。从我查看的代码来看,它使用画布并有一个基于 JavaScript 的 JPEG 编码器,可以构建 JPG 图像并发送给 Google。

这肯定需要大量工作,但我相信您可以完成类似的事情。

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

您可以使用 Canvas 截取页面的“屏幕截图”吗? 的相关文章

随机推荐

  • Kafka 反序列化嵌套泛型类型

    给定一个这样的类 public class Message
  • 找到图像 src :包含?

    大家早 我有一个图像列表 如下所示 ul style display none li img src afx4000z navy icon 1 thumb jpg li li img src afx4000z green icon 1 th
  • AngularJs 完整的 Jquery 选择不起作用

    我正在尝试使用 Jquery 插件在 AngularJS 指令中操作 DOM 我不确定 AngularJs 是否使用完整版本的 Jquery 尽管完整版本脚本位于头部 而 AngularJs 脚本位于主体 所以理论上 AngularJS 应
  • 如何在 ClearCase 中创建某些项目或流的快照视图?

    我想获取可以在clearcase项目资源管理器中找到的某些流或项目的内容 2 1 cleartool descr l project myProject myPVob 通过一些 grep 您可以获得组件 可写或不可写 和策略的列表 如果您只
  • 在 C/C++ 中打印前导空格和零

    我需要在数字前打印一些前导空格和零 以便输出如下所示 00015 22 00111 8 126 在这里 我需要打印leading spaces当数字是even and leading zero when odd 我是这样做的 int i d
  • 应用程序脚本我的执行条目延迟/丢失

    最近 我的执行遇到了添加执行条目延迟的问题 Google Sheet 上的应用程序脚本将成功运行 基于输出 但执行日志中没有条目或条目延迟 10 分钟以上 更令人担忧的是 今天我收到一封自动生成的电子邮件 其中包含脚本错误 很抱歉 服务器发
  • 按主页按钮并从应用程序图标调用 onCreate 再次访问应用程序?

    我有一个离线在线应用程序 我发现其中有一个奇怪的问题 可能不是 但我不明白 应用程序的要求是 如果互联网可用 即使从启动应用程序或恢复 我也会调用网络服务并将数据存储在 sqlite 中 否则应用程序将保持离线模式 我有 2 个活动 第二个
  • 如何在 Excel 中通过 OleDB 使用命名范围?

    我正在尝试使用 ASP NET C 从 Excel 中的特定命名范围中提取数据 这是我试图提取的示例 我想要的是使用名称 RANGE NAMED 的 B C D 可以用 OleDB 做到这一点吗 此致 Alex 你可以试试这个代码 usin
  • Galaxy Nexus:采样更多传感器时,传感器采样率会变得更快

    我正在尝试从 Samsung Galaxy Nexus 带 Android 4 0 尽快读取传感器值 为此 我使用不同的传感器和采样率做了一些实验 并发现了一个非常奇怪的行为 当我只使用 Acc Sensor 时 采样率约为 50Hz 但是
  • Haskell 中的短路 (&&)

    最近一直困扰我的一个快速问题 Haskell 是否在返回布尔值的函数中执行所有等价测试 即使返回一个假值 例如 f a b a b 2 a b 2 如果第一个测试返回 false 是否会执行第二个测试 或者 Haskell 是否足够懒 不做
  • 如何更改数据表中日期列的日期格式?

    我正在从数据库填充数据表 它包含两个字段 DATE TIME 两个字段都是datetime column 我想遍历数据表并更改日期格式DATE列即dd MM yyyy int i 0 string d foreach DataRow dr
  • 使用 mpatches.Patch 自定义图例

    我使用以下代码创建自定义 matplotlib 图例 import matplotlib patches as mpatches import matplotlib pyplot as plt colors g w texts Green
  • 对非 PHP 文件使用 Laravel @include 指令?

    我一直在寻找一种使用带有非 PHP 文件扩展名的 Laravels Blade 模板引擎 而不是file name blade php能够使用file name blade js or file name blade css 无济于事 我找
  • 1and1 域名、Heroku 托管 - 如何设置电子邮件?

    我刚刚从 1and1 购买了一个域名 并将 cname 设置为指向我在 heroku 上的应用程序 不过 我想要一个电子邮件 电子邮件受保护 cdn cgi l email protection 我需要通过 1and1 或 heroku 执
  • OCR 处理前的图像预处理

    我当前的项目涉及将 pdf 中的文本转录为文本文件 我首先尝试将图像文件直接放入 OCR 程序 tesseract 中 但效果不佳 原始图像文件基本上是旧报纸 并且有一些背景噪音 我确信 tesseract 存在问题 因此 我尝试在将图像输
  • Python 为什么是 10e26 != 10**26 ? (浮点不准确?)

    我试图在 python 中处理一些相当大的数字并遇到溢出错误 我决定进一步调查 发现了一个我无法解释的不平等现象 当我评估 10 26 时 我得到 gt gt gt 10 26 100000000000000000000000000 这是完
  • iOS:应用程序后台运行时隐藏屏幕上的敏感信息

    当前台应用程序进入后台时 例如按下主页按钮 如何更改最顶层视图控制器上的元素prioriOS 何时拍摄快照并开始动画以显示下一个屏幕 我问这个问题是因为我正在编写一个需要符合 HIPAA 要求的应用程序 并且我担心操作系统为执行此动画而拍摄
  • 通过淘汰赛在我的下拉列表中预选一个项目

    我有以下下拉菜单 div Dummy div
  • 将附件添加到 .NET 电子邮件

    如何附加名称非常不友好的文件 例如其中包含会话 ID 号的文件 但将其附加为其他名称 有问题的文件名中包含会话 ID 以避免 Web 服务器上的名称冲突 但当我将其附加到文件时 最好使用更友好的名称 有没有办法将不友好的名称附加为另一个名称
  • 您可以使用 Canvas 截取页面的“屏幕截图”吗?

    我有一个页面 我们使用 CSS 定位一堆元素 并使用 JS 更改它们的 顶部和左侧 位置 我收到的报告称这些事情已经错位 但用户有动机对此撒谎以 作弊 所以我不确定他们是否说的是实话 我试图找到一种方法来弄清楚他们是否在撒谎 并找到一些 证