如何将图像添加到画布

2023-12-23

我正在尝试使用 HTML 中的新 canvas 元素。

我只是想将图像添加到画布上,但由于某种原因它不起作用。

我有以下代码:

HTML

<canvas id="viewport"></canvas>

CSS

canvas#viewport { border: 1px solid white; width: 900px; }

JS

var canvas = document.getElementById('viewport'),
context = canvas.getContext('2d');

make_base();

function make_base()
{
  base_image = new Image();
  base_image.src = 'img/base.png';
  context.drawImage(base_image, 100, 100);
}

图像存在,并且我没有收到 JavaScript 错误。图像只是不显示。

这一定是我错过的非常简单的事情......


您需要等到图像加载后才能绘制。试试这个:

var canvas = document.getElementById('viewport'),
context = canvas.getContext('2d');

make_base();

function make_base()
{
  base_image = new Image();
  base_image.src = 'img/base.png';
  base_image.onload = function(){
    context.drawImage(base_image, 0, 0);
  }
}

即在图像的onload回调中绘制图像。

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

如何将图像添加到画布 的相关文章

  • 使用 Charts.js 禁用动画

    我在使用 Charts js 关闭动画时遇到一些问题 这是我的代码 var pieData value 30 color F38630 value 50 color E0E4CC value 100 color 69D2E7 var myP
  • 如何使用 console.log 省略文件/行号

    如今 您可以在 Chrome 的控制台中编写非常好的东西 查看this https developer chrome com devtools docs tips and tricks关联 我也做了一个截图 正如您在屏幕截图中看到的那样 文
  • 提交表单时显示警告框

    所以我有这两页 pageOne php and pageTwo php 表格在pageOne php
  • 将 javascript 放在 header 之外有多糟糕?

    这个问题几乎已经说明了一切 我开始添加一些功能到我的周末项目 http www my clock net 对于我和几个朋友来说 这是一个小应用程序 因为我们是交换生 所以它对我们来说有点有用 但事情是这样的 我在 php 中执行此操作并使用
  • 内联执行生成的汇编程序

    我正在阅读以下演示文稿 http wingolog org pub qc 2012 js slides pdf http wingolog org pub qc 2012 js slides pdf其中讨论了 4 10 19 内联 ASM
  • 如何垂直打印数组中的字符串元素? [关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我有一个数组 我想垂直打印每个元素 例如 myArr abc def ghi 输出应该是 a d g b e h c f
  • Javascript“命名空间”和 jQuery AJAX

    我正在使用此处列出的建议 http www odetocode com articles 473 aspx http www odetocode com articles 473 aspx 使用模拟的JavaScript AJAX网络聊天系
  • 标记内的值发生变化时调用函数

    JavaScript 有没有什么方法可以在段落标记的值更改时调用函数 概述 HTML p 00 00 p
  • 使用 jQuery 更改 SVG 元素的“xlink:href”属性

    我正在尝试使用单击事件更改 xlink href 属性 到目前为止它部分有效 这就是我正在做的 HTML a href class ui btn ui corner all ui shadow editIcon style text ali
  • 如何从Web JavaScript应用程序获取桌面C#程序中的变量

    我遇到一个问题 有两个应用程序 一种是 C 中的桌面应用程序 另一种是 javascript 中的 Web 应用程序 运行桌面应用程序中的一些变量或信息需要传输到Web应用程序 有谁知道如何解决这个问题 有人愿意提供更多细节来解决这个问题吗
  • 如何使用 JavaScript 播放任意 MIDI 音符?

    澄清一下 我不想生成 MIDI 文件 也不想播放 MIDI 文件 我希望即时播放 MIDI 音符 我尝试使用https github com mudcube MIDI js https github com mudcube MIDI js作
  • 如何使用javascript从特定标签获取HTML文档中的所有textNode?

    如何在不使用xpath或treewalker的情况下从单个数组中的一组特定标签中获取所有textNodes blockquote em h4 h6 p IE不允许您使用xpath和treewalker 请帮助我 如果脚本仅适用于 IE 那就
  • 根据数据更改图例颜色高图表

    我可以根据数据动态设置列的颜色 但无法弄清楚如何更改图例中的颜色 请注意 jsfiddle 最新的条形图是绿色的 但图例是蓝色的 有没有办法改变列颜色也会改变图例颜色 这是我用于列颜色的代码 jsfiddle http jsfiddle n
  • 谷歌浏览器如何启动桌面应用程序?

    我真的不知道术语 所以我将从一个例子开始 如果我点击磁力链接 Google Chrome 会询问我是否要启动 torrent 客户端 我单击 确定 chrome 启动该应用程序 该应用程序根据链接执行一些操作 现在有办法查看应用程序如何从
  • 调用不带括号的 javascript 函数

    以下 renderChat 函数用于将消息和图像渲染到聊天板上 该函数内部还有另一个函数 var onComplete function 它完成创建列表元素并将其附加到聊天列表的所有工作 onComplete函数之后就只有这三行代码 img
  • 如何与使用 child_process.spawn 创建的新创建的服务器交互

    我正在尝试为我的私人托管的 反恐精英全球攻势 服务器制作一个前端 当我点击运行服务器时 在前端 一切正常 服务器启动并记录到控制台 但是如何查看服务器IP地址 服务器中的玩家等信息呢 这是我到目前为止运行服务器的内容 router post
  • 加载 angularjs 路由后运行 javascript 代码

    我需要在 angularjs 加载路线后显示警报 显示警报的代码位于 angularjs 异步加载的视图中 视图加载后 我希望它能够运行 但它没有 我知道我可以广播并告诉它稍后运行等 但我需要一个更通用的解决方案 假设您正在谈论基于以下内容
  • python 函数返回 javascript date.getTime()

    我正在尝试创建一个简单的 python 函数 它将返回与 javascript 相同的值new Date getTime 方法 如所写here http www w3schools com js js dates asp javascrip
  • 隔离必需的字段验证器?

    我在页面上有两个搜索按钮 一个链接到下拉列表 另一个链接到带有文本框的下拉列表以获取更多搜索条件 我在所有上述控件上都需要现场验证器 当我从第一个下拉列表中选择某些内容并单击相应的搜索按钮时 文本框的字段验证器会触发 从而禁用第一个搜索按钮
  • 使用 Three.js 中的设备方向控件进行对象旋转

    我正在迈出使用 JavaScript 进行编码并使用 Three js 的第一步 我正在尝试 Threejs org 的这个例子 http trijs org examples misc controls deviceorientation

随机推荐

  • 在flutter中将小部件封装在它自己的类中?

    我正在尝试创建一个tile for my listview 虽然图块在放置在列表视图文件中时可以工作 但我想知道如何封装tile小部件到它自己的类文件中 具体来说 如果tile对象不接受参数 我可以简单地扩展一个无状态小部件并调用build
  • 通过 CSS 属性“transform:scale(0.5)”进行缩放的 Angular CDK 拖放无法按预期工作

    通过 CSS 属性 transform scale 0 5 进行缩放的 Angular CDK 拖放无法按预期工作 如果外层 DIV 按 CSS 属性缩放 变换 比例 0 5 拖动与鼠标指针未正确对齐 一旦标度不等于 1 就会发生这种情况
  • 法拉第超时

    我已经在线搜索了文档和其他地方 似乎无法想出为法拉第设置超时选项的正确方法 有人有答案吗 我试过了 conn FaradayStack build url conn headers user agent AppConfig user age
  • 使用Phantom.js评估,如何获取页面的HTML?

    page evaluate function return document function result console log result next 结果实际上是一个巨大的物体 我不知道该对象的属性和属性 我只想要页面的 HTMLa
  • R 中 3 个分类变量和 1 个连续变量的 SE 点图

    我正在尝试生成一个点图 其中包含具有三个分类变量 mea tre 和 sex 的设计中单个测量值 len 的值 I ve produced a plot that has all I m looking for split across s
  • Google 地图 v3:大尺寸标记

    我需要在地图上显示标记 它运行良好 唯一的问题是它们看起来太小了 如何确保所使用的标记尺寸较大并且几乎在任何缩放状态下都可以看到 为了使图标更大 我绝对建议使图标图像更大 例如 要使用缩小的高分辨率图标修复高 dpi 移动设备上的像素图标
  • 打开 Storyboard 时 Xcode 8 挂起/无响应

    我最近升级到了 Xcode 8 并将我的项目更新到了 Swift 3 一段时间内一切都运行良好 故事板加载一直很慢 即使仍然运行 Xcode 7 并且与 Xcode 8 几乎一样 慢 我一直以为这是因为我使用的是较旧的 2011 年末 Ma
  • git-log 和 git-whatchanged 之间的区别?

    Given 这个答案 https stackoverflow com a 280140 10608另一个问题 以及 鉴于两者的手册页git log http linux die net man 1 git log and git whatc
  • 字符串文字作为方法的参数

    Java 中的任何字符串文字都是类型的常量对象String并存储在字符串文字池中 Will String作为参数传递给方法的文字也存储在String文字池 例如当我们写的时候 System out println Hello OR anyo
  • Bootstrap3 Affix 中的 data-offset-bottom

    我想从我的附加元素中设置 停止 例如投票http 9gag com http 9gag com 它滚动直到其父容器 我为此使用了affix 我发现了 data offset bottom 属性 没有太多记录 div class homepa
  • IE JQuery 就绪功能不起作用

    显然很多人都遇到过这个问题 但我还没有找到有效的解决方案 我有一些代码需要在页面加载后运行 因此我将其粘贴在以下块中 document ready function alert Running initialization initiali
  • 使用端口 80 时 Apache 服务失败(“繁忙”)[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何配置 Apache 服务器在端口 80 上运行 我的 Apache 服务在使用端口 80 时失败 它说BUSY 当我将配置中的端口更改
  • 通过 JSch shell 执行多个命令

    我试图使用 JSch 库通过 SSH 协议执行多个命令 但我似乎陷入困境 找不到任何解决方案 这setCommand 方法每个会话只能执行单个命令 但我想像Android平台上的connectbot应用程序一样顺序执行命令 到目前为止我的代
  • 批量上传大图片到cloudinary

    有没有办法将图像批量上传到我的 cloudinary 帐户 我希望一次导入 100 张图像 每张图像 3MB 谢谢 您可以使用Cloudinary的上传API来一张一张上传图片 这是 Python 中的示例上传代码 https github
  • Xcode 8 beta 6:main.swift 无法编译

    我们有一个自定义的 UIApplication 对象 所以我们的 main swift 是 import Foundation import UIKit UIApplicationMain Process argc Process unsa
  • 通过 Azure DevOps 中的 EFCore 迁移更新 postgreSQL DB

    在Azure DevOps中 我用来更新的方式SQL服务器数据库使用 Entity Framework Core 使用两个任务 在我的构建管道中 这个任务 https github com pekspro EF Migrations Scr
  • HTML5中拖动时如何更改光标图标?

    当用户拖动 DIV 以下示例中的红色 div 时 我需要设置光标图标 我尝试过几次尝试 包括使用 CSScursor move and event dataTransfer dropEffect没有成功 因为图标总是显示 交叉圆圈 有什么想
  • ES6中使用嵌套类模拟命名空间

    我有一个文件 Services js我正在尝试将所有个人服务加载到其中 这些服务作为单例公开 Services js var Services export default Services 然后我希望示例服务嵌套在服务下 这样我就可以调用
  • 修改部分XML元素名称并替换为增量编号

    是否可以使用 XSLT 将部分元素名称更改为带有增量编号的另一个元素名称 就像我只想更改以 UPC 开头的元素名称
  • 如何将图像添加到画布

    我正在尝试使用 HTML 中的新 canvas 元素 我只是想将图像添加到画布上 但由于某种原因它不起作用 我有以下代码 HTML