This commit is contained in:
wwb 2026-09-16 20:31:47 +08:00
parent 3c22209bc3
commit 5284420aa4
2 changed files with 58 additions and 29 deletions

View File

@ -347,7 +347,8 @@ const downpdf = async () => {
formData.value.productName = ''
formData.value.details = ''
}
// 响应式转换
formData.value.details = htmlToText(formData.value.details)
//初始化
//hiprint.init()
const hiprintTemplate = new hiprint.PrintTemplate({template: template1})
@ -403,7 +404,8 @@ const preview = async () => {
formData.value.remarksText = 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB'
*/
// 响应式转换
formData.value.details = htmlToText(formData.value.details)
//初始化
//hiprint.init()
const hiprintTemplate = new hiprint.PrintTemplate({template: template1})
@ -423,4 +425,28 @@ const preview = async () => {
//previewRef.value.showModal(html);
}
// 核心转换函数
function htmlToText(html) {
const div = document.createElement('div')
div.innerHTML = html
// <br> -> 换行
div.querySelectorAll('br').forEach(br => br.replaceWith('\r\n'))
// 块级标签后加换行
div.querySelectorAll('p, div').forEach(el => {
el.append('\r\n')
})
return (div.innerText || div.textContent || '')
.replace(/\u00a0/g, ' ') // nbsp -> 空格
.replace(/[ \t]+\n/g, '\r\n') // 行尾空格
.replace(/\n{3,}/g, '\r\n\r\n') // 多空行压成一个
.trim()
}
</script>

View File

@ -591,25 +591,6 @@ export default {
"type": "text"
}
},
{
"options": {
"left": 63,
"top": 183,
"height": 57,
"width": 518,
"right": 594.9936141967774,
"bottom": 241.4957399368286,
"vCenter": 328.99361419677737,
"hCenter": 212.9957399368286,
"field": "details",
"coordinateSync": false,
"widthHeightSync": false
},
"printElementType": {
"title": "",
"type": "longText"
}
},
{
"options": {
"left": 15,
@ -2186,7 +2167,7 @@ export default {
{
"options": {
"left": 15,
"top": 246,
"top": 258,
"height": 9.75,
"width": 48,
"title": "备注",
@ -2209,17 +2190,18 @@ export default {
{
"options": {
"left": 63,
"top": 246,
"height": 61.5,
"top": 258,
"height": 57,
"width": 518,
"right": 644.4914855957031,
"bottom": 308.24786853790286,
"vCenter": 378.4914855957031,
"hCenter": 277.49786853790286,
"right": 581,
"bottom": 307.5,
"vCenter": 322,
"hCenter": 276.75,
"field": "remarksText",
"coordinateSync": false,
"widthHeightSync": false,
"qid": "details_1"
"qid": "details_1",
"hideTitle": true
},
"printElementType": {
"title": "",
@ -2418,6 +2400,27 @@ export default {
"title": "横线",
"type": "hline"
}
},
{
"options": {
"left": 63,
"top": 183,
"height": 60,
"width": 518,
"right": 581,
"bottom": 240,
"vCenter": 322,
"hCenter": 211.5,
"field": "details",
"testData": " ",
"coordinateSync": false,
"widthHeightSync": false,
"hideTitle": true
},
"printElementType": {
"title": "长文",
"type": "longText"
}
}
],
"paperNumberLeft": 568.5,