var targetSize = Math.max($(window).width(), $(window).height());
var canvas = $("#canvas")[0];
canvas.setAttribute('width', $(window).width());
canvas.setAttribute('height', $(window).height());
var context = canvas.getContext("2d");
var img = new Image(); // Create new img element
img.onload = function() {
angle = Math.PI/4;
context.setTransform(1, 0, 0, 1, 0, 0); //attempt to reset transform
context.drawImage(img, 0, 0);
};
img.src = '../../Images/FloorPlans/GroundFloor.jpg'; // Set source path
이 코드는 내 nexus7에서 firefox17의 첫 번째 이미지를 만듭니다. 원본 이미지는 각이 지어지지 않고, 모든 선은 남북 및 동서이어야합니다. Firefox 및 바탕 화면의 chrome, 내 nexus7의 chrome에 올바르게 표시됩니다.Nexus7에서 Firefox의 캔버스 변형 문제
은 내가
context.setTransform(1, 0, Math.tan(angle), 1, 0, 0);
내가 아래의 두 번째 출력을 얻을 ... "유엔 꼬치"이미지 사용하려고하면! 내 타겟 플랫폼 내가 좀 그것을 밖으로 일을 한 Nexus7 :(이 고정? 또는이 파이어 폭스 버그 수있는 방법
?
귀하의 게시물을 볼 때 귀하의 이미지의 픽셀 너비가 이상한 것으로 의심됩니다. 많은 이미지 포맷은 스캔 라인을 2 픽셀의 배수로 반올림해야합니다 (컴퓨터가 16 비트 였고 이미지 데이터가 8 비트 였을 때를 뒤로 한 것 같습니다). 일부 소프트웨어는 잘못된 패딩을 사용하여 홀수 너비의 이미지로 표시 될 때 잘못 작동합니다. 이미지 편집기에서 원본 이미지를 가져 와서 한 픽셀을 더 넓게 또는 좁게 만들려고합니다. –
예! 나는 이전의 D3D/OGL 일로부터이를 인식해야만했다. – gingerbreadboy
실제로, 좋은 이미지 편집기에서 이미지를 가져 와서 다시 저장하면 좋은 편집기가 필요한 스캔 라인을 추가하기 때문에 문제를 해결할 수도있다 심. –