簡體   English   中英

HTML5:畫布和圖片大小

[英]HTML5: canvas and image size

我想使用JS在畫布上繪制圖像。 這是我的html代碼:

<canvas style="width:1000px;height:600px;border:1px solid black;" id="canvas"> </canvas>

這是我的js代碼:

    var canvas = document.getElementById('canvas');
    var ctx = canvas.getContext('2d');
    var img = new Image();
    img.onload = function(){
      ctx.drawImage(img, 0, 0,1000,600)
    }
    img.src = someUrlToJpgImage;

這是位於服務器上的原始jpg圖片(1000x600): 在此處輸入圖片說明

這是我在瀏覽器中看到的結果(1000x600): 在此處輸入圖片說明

如您所見,這是縮放圖像的左上角,而不是按預期縮放整個圖像。 我試圖添加到js代碼:

ctx.imageSmoothingEnabled = false;
ctx.webkitImageSmoothingEnabled = false;
ctx.mozImageSmoothingEnabled = false;

但這沒有幫助。

如何解決這個問題呢?

您應該在canvas元素上設置所需的像素數量:

<canvas style="width:1000px;height:600px;border:1px solid black;" height="600" width="1000" id="canvas"> </canvas>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM