当前使用PasteHtml方法将其他文档的内容插入至该文档中,网络那里的图片是正常的,但是在文档显示时出现"图片破裂"的样式。目前需要使用PasteHtml方法去实现,请问这是什么原因导致的,需要如何解决?
当前使用PasteHtml方法将其他文档的内容插入至该文档中,网络那里的图片是正常的,但是在文档显示时出现"图片破裂"的样式。目前需要使用PasteHtml方法去实现,请问这是什么原因导致的,需要如何解决?
没有复现该问题,可以提供下详细复现的操作代码。
以下核心代码,供对比排查看看
// 获取文档1 选中区域的区域对象Range
const range= await app.ActiveDocument.Selection.Range
// 获取指定区域的带格式 HTML 数据
const htmlInfo = await range.GetHtmlData()
// 粘贴到 文档2 的光标位置
app.ActiveDocument.Selection.Range.PasteHtml(htmlInfo)
// 或者手动设置range位置到
const range1 = await app.ActiveDocument.Range.SetRange(99, 100)
await range1.PasteHtml(htmlInfo)
你好,我这边的代码已经贴在下方评论了,请帮忙排查一下。
// 导入图片的word文档
this.insertInstance = WebOfficeSDK.init({
officeType: 'w',
appId: 'SX20240628SVYFAC',
fileId,
token: fileToken,
mount: document.querySelector('#previewWpsHTML')
})
await this.insertInstance.ready()
this.insertApp = this.insertInstance.Application
// 获取原文档HTML
const insertDocumentRange =
await this.insertApp.ActiveDocument.GetDocumentRange()
const insertHtmlData = await insertDocumentRange.GetHtmlData()
const insertHTML = insertHtmlData.HTML
// 插入带有图片的文档至新文档中
await this.app.ActiveDocument.Range(
this.selectBegin,
this.selectEnd
).PasteHtml({ HTML: insertHTML })
使用延时操作保证文档加载完成后再去做下一步处理,当前src路径存在,但图片路径报错404. 打开报错的图片地址报错:
可以按我提供的代码试试。你是一次性获取文档所有内容,文档内容是动态加载的,不一定会web页面上一次性渲染出所有内容,图片有可能存在非可视区域
我去使用延时的操作获取了插入文档的HTML信息,发现插入的是有值的,但是插入后的图片路径会报404错误,具体截图请看这条编辑后的回答。
红框中的链接能打开吗,直接发出来看看呢?