将 Base64 字符串加载到画布时遇到问题

2024-01-08

我正在尝试将 Base64 字符串从数据库加载到画布。

我通过执行相反的方法获得了这个字符串:在画布上绘制后将其保存到我的数据库中。所以,现在我想将其加载回另一个画布上。我已经尝试过在网络和 StackOverflow 上其他地方找到的这段代码,但它似乎不起作用。

<script type="text/javascript">
  $(document).ready(function(){
    var canvas = document.getElementById("loading_canvas");
    var ctx = canvas.getContext("2d");

    var image = new Image();

    $.post('doodles/load', function(data) {
      image.src = data;
    });
    ctx.drawImage(image, 0, 0);
  });
</script>

我通过 ajax 调用从数据库加载数据。

If I alert() the datavar,它显示编码的 Base64 字符串。所以它并没有真正出错......我只是最终得到了一张空画布。

有人知道我在这里做错了什么吗?多谢!


尝试在图像加载事件之后绘制图像:

var image = new Image();
image.onload = function () {
    ctx.drawImage(image, 0, 0);
}

$.post('doodles/load', function(data) {
    image.src = data;
});

The src需要有一个完整的数据 URL 而不仅仅是一堆 base64 数据,所以也要仔细检查。 示例(来自维基百科 http://en.wikipedia.org/wiki/Data_URI_scheme#HTML):

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" alt="Red dot" />
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 Base64 字符串加载到画布时遇到问题 的相关文章

随机推荐

  • 最佳 JDBC 数据源 bean 类

    我看到有些人使用org apache commons dbcp BasicDataSource而其他配置有com mchange v2 c3p0 ComboPooledDataSource Spring有它自己的 org springfra
  • 使用字典中的值替换列中的值

    import pandas as pd df pd DataFrame Data Hey this is 123456 Jonny B Good This is Jonny B Good at 511 233 1137 Wow that i
  • Google Play 服务已过时。需要 7571000 但找到 6774470

    我正在尝试将 google play API 添加到我的 Android 游戏中 并且按照他们网站上的说明进行操作 我在模拟器运行时遇到这个错误 试图解决它 在我的手机上 应用程序崩溃了 在清单中
  • 为什么我的异步函数返回空数组?

    我试图通过将用户的匹配项推入一个数组并返回该数组来获取用户的匹配项 以便我的路由器可以将数据发送到前端 但我的异步函数有一个问题 我只有一个空数组 我尝试设置一些断点 我注意到我的路由器在我的服务将数据推送到数组之前发送数据 这是我的路由器
  • Django 1.4 在开发服务器上提供 MEDIA_URL 和 STATIC_URL 文件

    刚刚升级到 Django 1 4 并且在开发服务器上新的 改进 的静态和媒体文件服务方面遇到了严重问题 我喜欢 Django 但到底为什么他们用 STATIC URL STATIC ROOT STATICFILES DIR 使这些文件的服务
  • 使用命令行从谷歌下载图像[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想用命令行下载谷歌给我的第n张图像 即像使用命令一样wget 搜索图像 something 我只是去页面https www google
  • const 中 u32::BITS 的替代方案是什么?

    我有一些代码可以做到这一点 const MY CRAZY CONSTANT u32 1 lt lt u32 BITS 1 我尝试使用 Rust nightly 2016 03 29 编译它 但失败并显示以下消息 error no assoc
  • 批处理文件和 DEL errorlevel 0 问题

    该批处理必须从特定位置删除文件和目录 并将成功或 stdout stderr 消息输出到新的 txt 文件 我已经创建了脚本的大部分内容 并且它的执行完全符合预期 除非删除成功 否则它会前进到下一行 而不是在日志上回显 成功 消息 echo
  • java 8流用于根据特定字段对对象列表进行排序

    我有一个根据时间戳对对象进行排序的场景 课程如下 class Employee private String name private List
  • 具有不同参数的重载方法的方法引用无效

    当尝试编译表达式时Comparator comparing String toLowerCase Java 编译器返回错误 请参阅以下问题以获取更多信息 为什么 Comparator comparing 不适用于 String toLowe
  • 无法解析基于模板的标识符“get”。网豆8.1

    我的问题是 我收到了帖子主题中出现的警告 真是令人沮丧 这自动完成不适用于该代码 除此之外还会出现警告 标准设定为C 14 例如 Boxes 2 get gt setPosition Boxes 2 get gt getPosition v
  • 正则表达式仅使用egrep捕获整个单词

    我正在使用egrep 来查看perforce NAS 中的脚本 我试图找到我们使用 RCP 和 RSH 的地方 我遇到的问题是 1 我在 REGEX 上很糟糕 2 我正在捡起我不感兴趣的垃圾 例如 如果一个文件包含单词 strcpy 它会捡
  • 错误1001。初始化安装时发生异常

    我在尝试卸载时看到以下错误 程序文件中没有WRT文件夹 如何卸载该软件 注意 我已从程序文件中删除了软件文件夹 错误信息 System IO FileNotFoundException could not load file or asse
  • 如何检查 Java 8 Streams 中是否存在重复项?

    在 java 8 中 检查列表是否包含重复项的最佳方法是什么 我的想法是这样的 list size list stream distinct count 这是最好的方法吗 您的代码需要迭代所有元素 如果你想确保没有重复的简单方法 例如 pu
  • 如何为 HTML div 标签设置边框

    我正在尝试在 HTML 中定义 div 标签周围的边框 在某些浏览器中 边框不会出现 这是我的 HTML 代码 div style border thin div
  • 计算嵌套对象中的键数

    我正在尝试统计嵌套 JS 对象中的键 我能够到达第一层 但我有点困惑如何让它深入嵌套对象并返回计数 var properties prop1 prop2 prop3 prop4 subProp1 subProp2 subProp3 subS
  • 设置 eclipse java SE-1.7

    我想开始学习java 但是Eclipse给我带来了一些麻烦 首先 我是一个Java初学者 对它知之甚少甚至一无所知 我想使用 JavaSe 1 7 除了使用最新版本之外 我没有明确的理由使用它 下载 Eclipse 适用于 Java 开发人
  • 为什么非成员 static constexpr 变量不是隐式内联的?

    在 C 17 中 我们得到了内联变量 并且我假设全局 constexpr 变量是隐式内联的 但显然这只适用于静态member变量 这背后的逻辑 技术限制是什么 source 声明为 constexpr 的静态成员变量 但不是名称空间范围变量
  • 当底层模型更改时,QT QmlMap PolyLine 未正确更新

    我正在尝试将多个地理坐标与地图中的折线连接起来 坐标存储在模型 QAbstractListModel 类中 我可以在其中修改 删除和添加 C 中的坐标 简单地显示每个坐标的标记就可以了 但是当我将它们与折线连接并从模型中删除一些现有坐标时
  • 将 Base64 字符串加载到画布时遇到问题

    我正在尝试将 Base64 字符串从数据库加载到画布 我通过执行相反的方法获得了这个字符串 在画布上绘制后将其保存到我的数据库中 所以 现在我想将其加载回另一个画布上 我已经尝试过在网络和 StackOverflow 上其他地方找到的这段代