RepositorySys/wwwroot/cropperjs-main/src/js/handlers.js
(开头部分) 4KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
import {
ACTION_CROP,
ACTION_ZOOM,
CLASS_CROP,
CLASS_MODAL,
DATA_ACTION,
DRAG_MODE_CROP,
DRAG_MODE_MOVE,
DRAG_MODE_NONE,
EVENT_CROP_END,
EVENT_CROP_MOVE,
EVENT_CROP_START,
REGEXP_ACTIONS,
} from './constants';
import {
addClass,
assign,
dispatchEvent,
forEach,
getData,
getPointer,
hasClass,
isNumber,
toggleClass,
} from './utilities';
export default {
resize() {
if (this.disabled) {
return;
}
const { options, container, containerData } = this;
const ratioX = container.offsetWidth / containerData.width;
const ratioY = container.offsetHeight / containerData.height;
const ratio = Math.abs(ratioX - 1) > Math.abs(ratioY - 1) ? ratioX : ratioY;
// Resize when width changed or height changed
if (ratio !== 1) {
let canvasData;
let cropBoxData;
if (options.restore) {
canvasData = this.getCanvasData();
cropBoxData = this.getCropBoxData();
}
this.render();
if (options.restore) {
this.setCanvasData(forEach(canvasData, (n, i) => {
canvasData[i] = n * ratio;
}));
this.setCropBoxData(forEach(cropBoxData, (n, i) => {
cropBoxData[i] = n * ratio;
}));
}
}
},
后面还有 170 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。