如何在Javascript中获取图像的中心
How do I get the center of an Image in Javascript?
我正在制作一个家伙,其中我有要移动的对象,每个对象都有一个图像,但我不知道如何从中心而不是左上角移动它们。
这就是玩家:
function Player() {
this.height = 167.5;
this.width = 100;
this.pos_x = 350;
this.pos_y = 425;
this.player_image = new Image();
this.player_image.src = 'img/player_car_img.png';
};
及其方法"移动":
Player.prototype.move = function(){
if (37 in keysDown) {
this.pos_x -= 10;
} else if (39 in keysDown) {
this.pos_x += 10;
}
};
我不知道你在哪里画这幅图像,但我会使用你已经拥有的,只需在不同的位置画出图像。
您可以在您的位置周围绘制图像(以Player.pos_x
和Player.pos_y
为中心点,而不是左上角),方法是从初始位置减去一半的图像尺寸,如下所示:
Y = Y location - (image height / 2)
X = X location - (image width / 2)
在实际代码中,这看起来像:
var x = Player.pos_x - Player.player_image.width/2;
var y = Player.pos_y - Player.player_image.height/2;
ctx.drawImage(Player.player_image, x, y);
这样,Player.pos_x
和Player.pos_y
保持在同一位置,但图像将"围绕"该中心绘制。
相关文章:
- 获取ajax加载的图像的大小
- 点击(右键点击)使用传单地图库获取图像覆盖的像素坐标
- 如何使用javascript和xpath获取图像src
- 如何使用javascript从文件夹中获取图像并发布直接链接
- 如何使用Pixijs获取在加载的精灵表资产中定义的图像
- 如何从 javascript 中可能具有一个或多个图像的字符串中仅获取图像名称
- 获取图像节点js的主色
- 获取图像的平均外部像素颜色
- 使用asp.net FileUpload时从javascript获取图像宽度和高度
- 如何获取显示在谷歌搜索右侧的图像链接
- CodeIgniter:用于获取包括图像在内的值的控制器
- jQuery:获取图像加载错误的详细信息
- 如何使用php和javascript获取网页中显示图像的路径
- 使用回调获取图像像素数据
- 使用JavaScript从外部图像获取颜色
- 将完整路径图像获取到输入文件中
- 如何利用织物画布上的背景图像获取绘图路径中的图像
- 无法将图像加载到画布中并为该图像获取base64编码
- Android从内部图像获取ImageData()-SECURITY_ERR:DOM异常18
- 将html转换为图像(获取dom的快照)