一般來說,最終質量是相當不錯的,除非圖像中有一些非常微妙的細節,例如頭髮。然後將圖像結果縮小到其自身的超分割版本。什麼是畫布用於圖像大小調整的默認算法?html5 canvas用於調整圖像大小的算法是什麼?
有沒有辦法達到更好的效果?
一般來說,最終質量是相當不錯的,除非圖像中有一些非常微妙的細節,例如頭髮。然後將圖像結果縮小到其自身的超分割版本。什麼是畫布用於圖像大小調整的默認算法?html5 canvas用於調整圖像大小的算法是什麼?
有沒有辦法達到更好的效果?
根據測試結果和網絡上散佈的信息,目前canvas使用Nearest Member。雖然規格不強制任何特定的算法。在Mozilla中有一個關於切換到Bilinear的演講,但它似乎還沒有在瀏覽器中實現。
您通常只使用drawImage
來調整畫布上的圖像大小。下面是從Mozilla的一個例子:
// Width and height is the image's size on the target canvas.
drawImage(image, x, y, width, height)
有關詳細的實例,參見here;特別是「切片」部分。
我不認爲規範需要使用特定的算法。有許多方法可以禁用反走樣並使用最近的鄰居。 http://stackoverflow.com/questions/7615009/disable-interpolation-when-scaling-a-canvas – 2013-02-12 17:28:36