저는 이런 식으로 배열을 가지고 있습니다. 아이디어는 다른 방향으로 이미지를 출력하고 크기 조정을 통해 캔버스에 수직 및 수평으로 뒤집는 것입니다. 하나의 이미지를 다른 방향으로 여러 번 그리는 방법은 무엇입니까?
[{
"pos":{
"x":411,
"y":401.5
},
"scale":{
"x":1,
"y":1
}
},{
"pos":{
"x":411,
"y":271.59625
},
"scale":{
"x":-1,
"y":1
}
}]
문제
내가 대신 이미지의 캔버스를 확장하고있어 즉, 캔버스 내가 그것에 배치하고있어 이미지보다 여러 번 더 크다.images.forEach((image) => {
// center borde köars innan loopen egentligen
let pos = center(image.pos)
cc.save()
cc.scale(image.scale.x, image.scale.y)
cc.drawImage(window.video, pos.x, pos.y)
cc.restore()
})
전체 캔버스 대신 window.video라는 이미지를 어떻게 스케일합니까? 다음과 같은 일을해야하므로
의 drawImage는, 이미지 크기를 조정하기위한 2 개 여분의 인수를 취할 수 아래에 언급 한 바와 같이,이 음의 값 작동하지 않습니다 ... :
나는 그것을 시도의 중심을 그릴 같은 왼쪽 상단 위치에 그려 원한다면 그것들은 양수에 대해서만 작용하며 규모에 따라 작용하지 않습니다. 이 질문을 찾았지만 rellay를 사용하지 마십시오. 어떻게 이러한 답변을 사용할 수 있습니까? http://stackoverflow.com/questions/29237305/how-to-flip-an-image-with-the-html5-canvas-without- 크기 조정 – Himmators
원래 코드를 사용하지만 drawImage의 너비와 높이를 window.video 높이와 너비로 지정하면 해당 높이가 작동하고 너비가 작동합니까? – BenShelton
네, 그렇지만 나는 dWidth와 dHeight에 음수 값을 원하기 때문에 사용할 수 없습니다. dWidth 및 dHeight는 양수 값에서만 작동합니다. – Himmators