Commit ef2028e4 authored by 罗超's avatar 罗超

修正 Font 位置偏移,修正画板位置,修改横版比例

parent eafb1e8b
...@@ -161,9 +161,7 @@ const removeFontHandler = (fontName:any)=>{ ...@@ -161,9 +161,7 @@ const removeFontHandler = (fontName:any)=>{
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
console.log('then',!fonts.value)
if(fonts.value){ if(fonts.value){
console.log(fonts.value,fontName)
fonts.value?.splice(fonts.value.indexOf(fontName),1) fonts.value?.splice(fonts.value.indexOf(fontName),1)
} }
}) })
......
...@@ -36,7 +36,8 @@ export const useFontStore = defineStore('fonts',{ ...@@ -36,7 +36,8 @@ export const useFontStore = defineStore('fonts',{
try { try {
let response = await FontService.GetAllFontsAsync() let response = await FontService.GetAllFontsAsync()
if(response.data.resultCode == ApiResult.SUCCESS && response.data.data){ if(response.data.resultCode == ApiResult.SUCCESS && response.data.data){
this.fonts =response.data.data as CustomerFonts[] this.fonts = response.data.data as CustomerFonts[]
this.formatFonts = []
this.fonts.forEach(x=>{ this.fonts.forEach(x=>{
this.formatFonts.push({ label: x.label,value:x.fontFamily }) this.formatFonts.push({ label: x.label,value:x.fontFamily })
}) })
......
...@@ -20,19 +20,7 @@ export const ResolveText = (item: any, index: number,offsetLeft:number,offsetTop ...@@ -20,19 +20,7 @@ export const ResolveText = (item: any, index: number,offsetLeft:number,offsetTop
fontSize = sizes[0] fontSize = sizes[0]
} }
} }
const isVertical = item.layer.adjustments.typeTool.obj.textData.Ornt.value != 'Hrzn'
if(isVertical) {
let checkWord = value[0]+value[value.length-1]
let words = checkWord.match(/[\u3002|\uff1f|\uff01|\uff0c|\u3001|\uff1b|\uff1a|\u201c|\u201d|\u2018|\u2019|\uff08|\uff09|\u300a|\u300b|\u3008|\u3009|\u3010|\u3011|\u300e|\u300f|\u300c|\u300d|\ufe43|\ufe44|\u3014|\u3015|\u2026|\u2014|\uff5e|\ufe4f|\uffe5]/g)
domheight+= words&&words.length>0?fontSize*words.length*1.3:fontSize*1.3
domTop-= words&&words.length>0?fontSize:0
domLeft += words&&words.length>0?fontSize*-0.25:(fontSize-35)/2
}
else {
domwidth +=fontSize+(value[value.length-1]=='】'?fontSize:0)
domLeft-=(value[value.length-1]=='】'?fontSize:0)
}
const StyleSheet = item.layer.adjustments.typeTool.obj.engineData.EngineDict.StyleRun.RunArray[0].StyleSheet || {} const StyleSheet = item.layer.adjustments.typeTool.obj.engineData.EngineDict.StyleRun.RunArray[0].StyleSheet || {}
const { StyleSheetData } = StyleSheet const { StyleSheetData } = StyleSheet
const tracking = fontSize * (StyleSheetData.Tracking / 1000) const tracking = fontSize * (StyleSheetData.Tracking / 1000)
...@@ -43,7 +31,10 @@ export const ResolveText = (item: any, index: number,offsetLeft:number,offsetTop ...@@ -43,7 +31,10 @@ export const ResolveText = (item: any, index: number,offsetLeft:number,offsetTop
let style = `text-align:${alignment[0]}; font-size:${fontSize-2}px; font-weight:${weights[0]};` let style = `text-align:${alignment[0]}; font-size:${fontSize-2}px; font-weight:${weights[0]};`
if (font.textDecoration || StyleSheetData.Strikethrough) { if (font.textDecoration || StyleSheetData.Strikethrough) {
style += `text-decoration:${font.textDecoration ? font.textDecoration[0] : ''} ${StyleSheetData.Strikethrough ? ' line-through' : ''}` style += `text-decoration:${font.textDecoration ? font.textDecoration[0] : ''} ${StyleSheetData.Strikethrough ? ' line-through' : ''};`
}
if (StyleSheetData.FauxItalic){
style += `font-style:italic;`
} }
let content = `<p style="${style}">${value}</p>` let content = `<p style="${style}">${value}</p>`
...@@ -64,6 +55,25 @@ export const ResolveText = (item: any, index: number,offsetLeft:number,offsetTop ...@@ -64,6 +55,25 @@ export const ResolveText = (item: any, index: number,offsetLeft:number,offsetTop
textShadow = null textShadow = null
} }
const isVertical = item.layer.adjustments.typeTool.obj.textData.Ornt.value != 'Hrzn'
if(isVertical) {
let checkWord = value[0]+value[value.length-1]
let words = checkWord.match(/[\u3002|\uff1f|\uff01|\uff0c|\u3001|\uff1b|\uff1a|\u201c|\u201d|\u2018|\u2019|\uff08|\uff09|\u300a|\u300b|\u3008|\u3009|\u3010|\u3011|\u300e|\u300f|\u300c|\u300d|\ufe43|\ufe44|\u3014|\u3015|\u2026|\u2014|\uff5e|\ufe4f|\uffe5]/g)
if(words&&words.length>0){
domheight += fontSize*words.length*1.4
domTop -= fontSize
}else{
domheight += fontSize*1.4
}
domLeft -= 10+((leading-1)*fontSize/2)
}
else {
domwidth +=fontSize+(value[value.length-1]=='】'?fontSize:0)
domTop -= 10+((leading-1)*fontSize/2)
}
let element: PPTTextElement = { let element: PPTTextElement = {
id: "text_" + index, id: "text_" + index,
type: 'text', type: 'text',
......
...@@ -21,8 +21,8 @@ ...@@ -21,8 +21,8 @@
:style="{ :style="{
width: viewportStyles.width * canvasScale + 'px', width: viewportStyles.width * canvasScale + 'px',
height: viewportStyles.height * canvasScale + 'px', height: viewportStyles.height * canvasScale + 'px',
left: viewportStyles.left + 'px', left: (viewportStyles.left) + 'px',
top: viewportStyles.top + 'px', top: (viewportStyles.top/2) + 'px',
}" }"
> >
<div class="operates"> <div class="operates">
......
...@@ -239,7 +239,7 @@ const GetTripTemplate = async () =>{ ...@@ -239,7 +239,7 @@ const GetTripTemplate = async () =>{
let dataRes = await ConfigService.GetTripTemplateSlide(queryMsg); let dataRes = await ConfigService.GetTripTemplateSlide(queryMsg);
if (dataRes.data.resultCode == 1) { if (dataRes.data.resultCode == 1) {
let viewportRatio = 1.414 let viewportRatio = 1.414
if(dataRes.data.data.TempType==1) viewportRatio = 0.7723 if(dataRes.data.data.TempType==1) viewportRatio = 0.7069
slidesStore.setViewportRatio(viewportRatio) slidesStore.setViewportRatio(viewportRatio)
let SlidesData = JSON.parse(dataRes.data.data.TempData) let SlidesData = JSON.parse(dataRes.data.data.TempData)
......
...@@ -120,7 +120,7 @@ ...@@ -120,7 +120,7 @@
:value="viewportRatio" :value="viewportRatio"
@update:value="value => updateViewportRatio(value as number)" @update:value="value => updateViewportRatio(value as number)"
:options="[ :options="[
{ label: '横屏', value: 0.7723 }, { label: '横屏', value: 0.7069 },
{ label: '竖屏', value: 1.414 }, { label: '竖屏', value: 1.414 },
]" ]"
/> />
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment