|
|
@@ -380,7 +380,6 @@ export class CanvasPhotoEditor {
|
|
|
|
|
|
// --- 缩放逻辑(缩放必须重绘,无法通过坐标偏移实现)---
|
|
|
handleWheel(e) {
|
|
|
- console.log('handleWheel', e.target)
|
|
|
e.preventDefault()
|
|
|
|
|
|
const rect = this.canvas.getBoundingClientRect()
|
|
|
@@ -1214,7 +1213,8 @@ export class CanvasPhotoEditor {
|
|
|
this.saveHistory()
|
|
|
return this.pages
|
|
|
}
|
|
|
- autoFill(newPages, PageIndex, direction){
|
|
|
+ autoFill(newPagess, PageIndex, direction){
|
|
|
+ const newPages = [...newPagess]
|
|
|
let newPageList = {
|
|
|
list: [],
|
|
|
item: []
|
|
|
@@ -1234,10 +1234,14 @@ export class CanvasPhotoEditor {
|
|
|
}
|
|
|
})
|
|
|
console.log(newPageList, 'newPageList', PageIndex, )
|
|
|
-
|
|
|
- newPages[PageIndex].list[direction == 'double'?1:this.selectedPageItem.index] = newPageList.list[0]
|
|
|
- newPages[PageIndex].item[direction == 'double'?1:this.selectedPageItem.index] = newPageList.item[0]
|
|
|
let numberId = 1
|
|
|
+ if(direction == 'double'){//修改排版 一张变两张
|
|
|
+ newPages[PageIndex].list[1] = newPageList.list[0]
|
|
|
+ newPages[PageIndex].item[1] = newPageList.item[0]
|
|
|
+ }else{
|
|
|
+ newPages[PageIndex].list[direction == 'double'?1:this.selectedPageItem.index] = newPageList.list[0]
|
|
|
+ newPages[PageIndex].item[direction == 'double'?1:this.selectedPageItem.index] = newPageList.item[0]
|
|
|
+ }
|
|
|
for (var i =PageIndex + 1; i < newPages.length; i++) {
|
|
|
let newPageslist = [newPageList.list[numberId]]
|
|
|
let newPagesitem = [newPageList.item[numberId]]
|
|
|
@@ -1258,6 +1262,24 @@ export class CanvasPhotoEditor {
|
|
|
}
|
|
|
return newPages
|
|
|
}
|
|
|
+ // 用法:删除第 index 个 item 里的第 subIndex 项
|
|
|
+ removeAndFill(newPages, pageIndex, numIndex) {
|
|
|
+ // 1. 删除
|
|
|
+ newPages[pageIndex].list.splice(numIndex, 1);
|
|
|
+ newPages[pageIndex].item.splice(numIndex, 1);
|
|
|
+
|
|
|
+ // 2. 后面整体往前递补
|
|
|
+ for (let i = pageIndex; i < newPages.length - 1; i++) {
|
|
|
+ let take = newPages[i + 1].list.shift();
|
|
|
+ let item = newPages[i + 1].item.shift();
|
|
|
+ take !== undefined && newPages[i].list.push(take);
|
|
|
+ item !== undefined && newPages[i].item.push(item);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 3. 最后一个补空位
|
|
|
+ newPages[newPages.length - 1].list.push(null);
|
|
|
+ newPages[newPages.length - 1].item.push(null);
|
|
|
+ }
|
|
|
async deleteSelectedPage(backFun) {
|
|
|
console.log(this.selectedPageItem, this.selectedPageIndex, 'selectedPageItem', this.pages)
|
|
|
if(this.selectedPageItem.pageIndex === -1){//未选中页面直接返回
|
|
|
@@ -1270,11 +1292,8 @@ export class CanvasPhotoEditor {
|
|
|
newPages.splice(this.selectedPageIndex, 1)
|
|
|
} else {//删除单个图片
|
|
|
const check = await this.checkIndexing();
|
|
|
- newPages[this.selectedPageIndex].list[this.selectedPageItem.index] = null
|
|
|
- newPages[this.selectedPageIndex].item[this.selectedPageItem.index] = null
|
|
|
- newPages = this.autoFill(newPages, this.selectedPageIndex, newPages[this.selectedPageIndex].layoutMode)
|
|
|
+ newPages = this.removeAndFill(newPages, this.selectedPageIndex, this.selectedPageItem.index)
|
|
|
}
|
|
|
- // this.saveHistory()
|
|
|
this.selectedPageIndex = -1
|
|
|
this.selectedPageItem.pageIndex = -1
|
|
|
// this.selectedPageIndex = Math.min(this.selectedPageIndex, this.pages.length - 1)
|