0
我使用的是一個kineticjs正多邊形(在這種情況下是一個六邊形),我使用setFillPatternImage填充圖像。這是行得通的。我正在創建一個動態實現,所以我需要根據多邊形的當前大小來縮放源圖像。這涉及到計算setFillPatternOffset和setFillPatternScale,因爲正多邊形的尺寸是相對於中心的。沒有關於填充圖像的參考點可以找到的清晰文檔,也不知道縮放因子是否應該使用半徑作爲寬高比的代表。以下代碼導致多邊形上的圖像錯位。任何人都知道fillPatternImage的對齊規則是什麼?kineticjs正多邊形setFillPatternImage對齊問題
imageObj.onload = function() {
var whex = hexagon.getRadius() * 2;
var xratio = whex/imageObj.width;
var yratio = whex/imageObj.height;
hexagon.setFillPatternImage(imageObj);
hexagon.setFillPatternOffset(-whex/2,-whex/2);
hexagon.setFillPatternScale([ xratio, yratio ]);
};
謝謝!