【发布时间】:2020-04-01 22:10:08
【问题描述】:
我使用画布工作,但遇到问题,我想使用画布对象创建布局。但我想在 css 中创建对象,并在 HTML 中创建。
现在我创建:
var canvas = document.getElementById('myCanvas');
var context = canvas.getContext('2d');
context.beginPath();
context.rect(10, 50, 200, 100);
context.fillStyle = 'red';
context.fill();
context.fillStyle = 'black';
context.font = '20px Courier';
context.shadowColor = 'transparent';
context.shadowBlur = 0;
context.shadowOffsetX = 0;
context.shadowOffsetY = 0;
context.fillText(`List item`, 70, 80);
context.fillText(`List item2`, 70, 130);
var image = new Image();
image.src = "https://pngimage.net/wp-content/uploads/2018/06/machine-icon-png-9.png";
image.onload = function () {
context.drawImage(image, 10, 70, 50, 50);
};
CSS:
.box-test {
width: 150px;
height: 100px;
background-color: #fff;
}
HTML:
<canvas id="myCanvas" width="1280" height="720"
style="border:1px solid #c3c3c3;">
Your browser does not support the canvas element.
</canvas>
此代码是带有图像和文本的构建框,但是我想从 CSS 中获取颜色、图像,不知何故可以在画布中使用 css 样式创建对象?
如你所见,我有 box-test 类,在这里我为 box 提供属性:
context.rect(10, 50, 200, 100);
context.fillStyle = 'red';
context.fill();
我可以在这里只使用坐标,而宽度、高度、颜色来自css吗?
【问题讨论】:
-
如果您的目标中的所有内容都是可定义的形状,而不是视频游戏之类的东西,请使用 SVG
-
@DickensAS 你能提供一些例子吗?
-
@xdeepakv 这仅用于颜色,但我也想要文本和图像
标签: javascript html css