| | |
| | | </div> |
| | | <div class="top-right"> |
| | | <span v-if="saveTime">{{ saveTime }} {{ t('courseCenter.saved') }}</span> |
| | | <!-- 保存按钮 --> |
| | | <el-button size="small" @click="saveSubmit('save')">{{ t('common.save') }}</el-button> |
| | | <!-- 合成视频 --> |
| | | <el-button type="primary" size="small" @click="saveSubmit('')">{{ |
| | | t('courseCenter.composeViode') |
| | | }}</el-button> |
| | |
| | | import { polyphonic } from 'pinyin-pro'; |
| | | //编辑器内容转换ssml |
| | | import { useEditorHtml } from '@/hooks/web/useEditorHtml'; |
| | | //引入人脸识别方法 |
| | | import { useFaceDetection } from '@/utils/HaveFace' |
| | | import {coursesDelete} from "@/api/pptTemplate"; |
| | | const editorHtml = useEditorHtml() |
| | | const router = useRouter() // 路由 |
| | |
| | | return doc.body.textContent || ""; |
| | | } |
| | | |
| | | //传入 save 则代表保存,空字符传则是合成视频 |
| | | const saveSubmit = async (type) => { |
| | | // 检查场景是否为空 |
| | | if (!PPTArr.value || PPTArr.value.length === 0) { |
| | |
| | | return false |
| | | } |
| | | |
| | | //添加ppt中人脸校验 |
| | | //向原始ppt添加数据,用作后续ppt中是否包含人脸的数据校验原始数据 |
| | | const InitPpt = PPTArr.value.map( (item)=>{ |
| | | return item.innerPicture.src |
| | | } ) |
| | | const { detectFacesInImages } = useFaceDetection() |
| | | const IsHaveFace = await detectFacesInImages(InitPpt) |
| | | if( IsHaveFace ){ |
| | | message.warning('当前ppt中包含人脸元素, 为方便后续视频生成 ,请去除该元素') |
| | | return false |
| | | } |
| | | //保存课程 |
| | | let saveSubmitForm = { |
| | | accountId: courseInfo.value.accountId, |