默認情況下,fabric.js元素帶有8個點來縮放任何對象。但是我正在工作的應用程序要求不應允許在單個軸(水平或垂直)上進行拉伸。 我只想要角點,而不是側面。如何使用fabric.js禁用畫布元素的縮放點?
難道可能與fabric.js?
默認情況下,fabric.js元素帶有8個點來縮放任何對象。但是我正在工作的應用程序要求不應允許在單個軸(水平或垂直)上進行拉伸。 我只想要角點,而不是側面。如何使用fabric.js禁用畫布元素的縮放點?
難道可能與fabric.js?
您可以使用object.lockUniScaling = true
。
此外,您還可以自定義你的角落:http://fabricjs.com/customization
默認情況下,您無法創建它。但是你可以創建一些函數,如:如果width = x,那麼height = y,在某些事件中x和y之間存在某種關係(比如「on:scaling」),則可以始終使寬度和高度保持一定比例。
是,
您可以使用object.setControlsVisibility()
:http://fabricjs.com/docs/fabric.Object.html#setControlsVisibility
this.setControlsVisibility({
mt: false, // middle top disable
mb: false, // midle bottom
ml: false, // middle left
mr: false, // I think you get it
});
的jsfiddle例如:http://jsfiddle.net/Colmea/GjjJ8/1/(注意,是 '先生' 控制一個小錯誤在1.4.0版本中,在1.4.1中修復)。
或者您可以使用object.setControlVisible()
:
object. setControlVisible('mt', false); // disable middle top control
注:這樣只會隱藏控制和避免拖動它們。但要避免任何比例:使用lockScalingX
和lockScalingY
屬性。
imgInstance.setControlsVisibility({
mt: false,
mb: false,
ml: false,
mr: false,
bl: false,
br: false,
tl: false,
tr: false,
mtr: false,
});
更改「imgInstance」爲您的對象。
無關答案 – Yagiz 2015-06-16 01:15:11