canvas元素实际上有两套尺寸,一个是元素本身的大小,还有一个就是元素绘图表明的大小,

设置canvas的width和height属性,实际上是同时修改了它的元素本身的大小以及元素绘图表面的大小,

默认情况下canvas元素于其绘图表面都是300*150,

<style>canvas{/*width: 600px;*//*height: 300px;*/border: 1px solid #000;}
</style>
<canvas id="canvas" width="600" height="300">canvas not supported
</canvas>
<script>var canvas = document.getElementById('canvas');var ctx = canvas.getContext('2d');ctx.font = '30pt Arial';ctx.fillStyle = 'red';ctx.fillText('hello Canvas',100,100);ctx.strokeText('hello Canvas',100,100);
</script>

使用canvas元素的width和height属性控制的正确显示为:

通过css设定canvas元素的大小,则只会改变元素本身的大小,而不会影响到绘图表面的大小,

使用css设置canvas元素为600*300,然而绘图表面的大小没有发生变话依旧是300*150,

这时,canvas元素的大小不符合其绘图表面的大小时,浏览器就会对绘图表面进行缩放,使其符合元素的大小(放大到原来的2倍),如图:

所以,一定要注意使用width和height属性来修改canvas大小,而不是css进行操控大小,

否则会出现canvas元素大小和绘图表面大小不一致,浏览器会缩放绘图表面的大小,使之符合canvas元素的大小。

注意事项:

canvas元素的width和height只接受非负正整数,但是按照规则,不能给数值加‘px’后缀;

canvas设置大小相关推荐

  1. 设置canvas画布大小

    canvas的绘制是以画布大小为准的. canvas的默认画布大小为300×150. 设置canvas画布大小的方法: // 方法一 <canvas id="test" wi ...

  2. ugui unity3d 仪表盘_Unity3D---UGUI---UI创建以及Canvas设置

    1.创建场景 使用快捷键以及鼠标点击都可 QQ截图20180127105022.png 2.Image创建 最简单的先创建一个Image 在Hierarchy窗口里的空白处右键点击>>UI ...

  3. [echarts]echarts的canvas画布大小与容器大小不一致的解决方案

    <div class="wrap" style="width:300px;height:300px;"><!-- echarts容器 --&g ...

  4. HTML5 javascript修改canvas的大小

    方法1: 设定固定的值,这种方式跟在html中设定canvas的值没有什么区别: window.onload = function(){canvas.height = 100;canvas.width ...

  5. java截取图片-设置方位+设置大小

    java截取图片-设置方位+设置大小 package com.onegrid.darj.test; import java.awt.Rectangle;   import java.awt.image ...

  6. eclipse下的tomcat内存设置大小

    eclipse下的tomcat内存设置大小 在eclipse中设置,居然可以了, 设置步骤如下: 1.点击eclipse上的debug图标旁边的下拉箭头 2.然后选择Run Configuration ...

  7. Canvas设置样式无效导致圆变成椭圆的问题研究剖析

    Canvas设置样式无效导致圆变成椭圆的问题研究剖析,如下面代码段. <!DOCTYPE html> <html lang="en"> <head&g ...

  8. python中mainloop添加背景_Python实例讲解 - tkinter canvas (设置背景图片及文字)

    Python实例讲解 -- tkinter canvas (设置背景图片及文字) 先来一个绘图: from Tkinter import * master = Tk() w = Canvas(mast ...

  9. [html] iOS下页面如何启动加载时显示画面图片?如何设置大小?它有什么好处?

    [html] iOS下页面如何启动加载时显示画面图片?如何设置大小?它有什么好处? <link rel="apple-touch-startup-image" href=&q ...

最新文章

  1. 初学算法-快速排序与线性时间选择(Deterministic Selection)的C++实现
  2. Python学习笔记(二):标准流与重定向
  3. c#保存数据格式为.cvs_C#读取csv格式文件的方法
  4. c语言volatile关键字的作用是什么?
  5. 2021年安徽普通高考考试成绩查询,安徽省教育招生考试院:2021年安徽高考查分入口、查分系统...
  6. EL表达式的11个内置对象
  7. new image()
  8. a59s刷机包卡刷 oppo_OPPO A59S刷机包下载|OPPO A59S刷机包官方下载-太平洋下载中心...
  9. 51单片机计算机加原理图,AT89C51单片机的基本结构和工作原理
  10. 基于CC2430的基础实验4-----定时器中断
  11. RGB-D相机原理与选型
  12. Java开发——IDEA
  13. 初学数据治理必读书单(2022年版本)
  14. 架构模式在新浪微博的应用
  15. 使用Docker快速部署Gitlab
  16. 研究生常用的一些学术搜索引擎
  17. bnd -buildpath指令的用法
  18. Matlab实现“跳动的心”动画效果(wzl)
  19. 发射接收模块与示波器
  20. linux|管道符号

热门文章

  1. 粘胶活化剂市场现状及未来发展趋势
  2. 发那科机器人GI分配_发那科机器人应用-运动指令入门(1)
  3. oracle耳机,新手耳机选购排行榜出炉,这三款耳机不仅做工精细,音质还能打
  4. 工作一周随笔记———一个即将踏入编程的少年
  5. 深度搜索—-深度搜索解决矩阵搜索问题(水洼数计算)
  6. 智能手表发展史:我们用过、见过和从未听说的
  7. JAVA毕业设计公交线路查询系统计算机源码+lw文档+系统+调试部署+数据库
  8. 【论文笔记】Proofs-of-delay and randomness beacons in Ethereum-2017IEEE SB Workshop
  9. bzoj 2075: [POI2004]KAG
  10. 【联想电脑升级网卡】BIOS 无线网卡白名单限制解决办法——不用刷BIOS,不用修改白名单,只需简单升级即可