|
@@ -59,7 +59,7 @@ import Cover from './components/Cover.vue';
|
|
import CustomCover from './components/CustomCover.vue';
|
|
import CustomCover from './components/CustomCover.vue';
|
|
import TransReport from './components/catalog/transReport.vue';
|
|
import TransReport from './components/catalog/transReport.vue';
|
|
//import {pageList} from './utils/mock';
|
|
//import {pageList} from './utils/mock';
|
|
-import {countComponentName,pptInit,pptConfigInit,toTextProps,toJson,svg2Base64,getImgRealSize,calcScale,getShapeOptions,createRandomCode,getTableData} from './utils/untils';
|
|
|
|
|
|
+import {countComponentName,pptConfigInit,toTextProps,toJson,svg2Base64,getImgRealSize,calcScale,getShapeOptions,createRandomCode,getTableData} from './utils/untils';
|
|
import {marginTop,modelConfig,pptSlideMaster} from './utils/config';
|
|
import {marginTop,modelConfig,pptSlideMaster} from './utils/config';
|
|
import pptmixin from '../mixins/pptMixins';
|
|
import pptmixin from '../mixins/pptMixins';
|
|
import mixins from '../mixins/mixins';
|
|
import mixins from '../mixins/mixins';
|
|
@@ -228,7 +228,6 @@ export default {
|
|
async pageToPptx(){
|
|
async pageToPptx(){
|
|
//开始计时
|
|
//开始计时
|
|
const start = Date.now()
|
|
const start = Date.now()
|
|
- //let pptx = pptInit(new pptxgen(),this.LayoutType);
|
|
|
|
const SlideMaster = _.cloneDeep(pptSlideMaster)
|
|
const SlideMaster = _.cloneDeep(pptSlideMaster)
|
|
SlideMaster.objects[1] = {image: {x:0,y:0,w:10,h:7,path:this.pptBgImage}}
|
|
SlideMaster.objects[1] = {image: {x:0,y:0,w:10,h:7,path:this.pptBgImage}}
|
|
let pptx = pptConfigInit(new pptxgen(),this.LayoutType,'ch',SlideMaster,this.pptBgImage)
|
|
let pptx = pptConfigInit(new pptxgen(),this.LayoutType,'ch',SlideMaster,this.pptBgImage)
|
|
@@ -236,10 +235,7 @@ export default {
|
|
pptx.addSlide()
|
|
pptx.addSlide()
|
|
const length = this.pageList.length;
|
|
const length = this.pageList.length;
|
|
for (let i = 0; i < length; i++) {
|
|
for (let i = 0; i < length; i++) {
|
|
- //console.log(`正在生成,第${i+1}页...`,`lastVisibleItemIndex:`,this.lastVisibleItemIndex)
|
|
|
|
let slide = pptx.addSlide({ masterName: pptSlideMaster.title });
|
|
let slide = pptx.addSlide({ masterName: pptSlideMaster.title });
|
|
- //添加背景图片
|
|
|
|
- //slide.background = { path: "/static/pptnextimg.png" };
|
|
|
|
slide.addText(this.pageList[i].title, {
|
|
slide.addText(this.pageList[i].title, {
|
|
placeholder:"slideTitle",
|
|
placeholder:"slideTitle",
|
|
x:'10%',
|
|
x:'10%',
|
|
@@ -321,7 +317,6 @@ export default {
|
|
valign:'top'
|
|
valign:'top'
|
|
})
|
|
})
|
|
}else if(imgData2){
|
|
}else if(imgData2){
|
|
- //console.log('src',imgData2)
|
|
|
|
const realSize = getImgRealSize(imgData2Obj)
|
|
const realSize = getImgRealSize(imgData2Obj)
|
|
const percentWidth = Number(width.substring(0,width.length-1))
|
|
const percentWidth = Number(width.substring(0,width.length-1))
|
|
const percentHeight = Number(height.substring(0,height.length-1))
|
|
const percentHeight = Number(height.substring(0,height.length-1))
|
|
@@ -358,7 +353,6 @@ export default {
|
|
if(['shape','line'].includes(layers[j].type)){
|
|
if(['shape','line'].includes(layers[j].type)){
|
|
const scale = calcScale({w:906,h:906*0.7},{w:$('.ppt-item').width(),h:$('.ppt-item').width()*this.coefficient})
|
|
const scale = calcScale({w:906,h:906*0.7},{w:$('.ppt-item').width(),h:$('.ppt-item').width()*this.coefficient})
|
|
let options = getShapeOptions(layers[j],position,scale)
|
|
let options = getShapeOptions(layers[j],position,scale)
|
|
- //console.log('options',options)
|
|
|
|
if(layers[j].shapeType==='Circle'){ //circle的points太复杂,直接用插件预设的
|
|
if(layers[j].shapeType==='Circle'){ //circle的points太复杂,直接用插件预设的
|
|
slide.addShape('ellipse', options);
|
|
slide.addShape('ellipse', options);
|
|
}else{
|
|
}else{
|
|
@@ -398,7 +392,6 @@ export default {
|
|
|
|
|
|
//为了把封面放到第一页,操作pptx.slides达不成想要的效果,于是弄了个pptx2
|
|
//为了把封面放到第一页,操作pptx.slides达不成想要的效果,于是弄了个pptx2
|
|
//将封面放在最后生成是因为htmlToCanvans占用太多内存会导致页面假死
|
|
//将封面放在最后生成是因为htmlToCanvans占用太多内存会导致页面假死
|
|
- //let pptx2 = pptInit(new pptxgen(),this.LayoutType);
|
|
|
|
let pptx2 = pptConfigInit(new pptxgen(),this.LayoutType,'ch',SlideMaster,this.pptBgImage)
|
|
let pptx2 = pptConfigInit(new pptxgen(),this.LayoutType,'ch',SlideMaster,this.pptBgImage)
|
|
//添加封面
|
|
//添加封面
|
|
let cover = pptx2.addSlide()
|
|
let cover = pptx2.addSlide()
|