x-print-s 系统打印
调用系统打印预览,支持 PDF、文本、图片。
兼容性
| Harmony | IOS | Android | WEB | 小程序 |
|---|---|---|---|---|
| 支持 | 支持 | 支持 | 支持 | 不支持 |
调用
ts
import { printPdf, printTxt, printImage } from "@/uni_modules/x-print-s"
printPdf({
filename: "测试pdf.pdf",
filepath: tempFilePath,
success: (res) => {
console.log(res.errCode)
}
})
printTxt({
filename: "测试文本.txt",
content: "第一行\n第二行",
margin: 20,
fontSize: 32,
lineSpacing: 1.5,
paperSize: "A4"
})
printImage({
filename: "测试图片.jpg",
filepath: imagePath
})选图后立刻打印时,iOS 需等选择器关闭后再调,可用短延迟。
方法
| 名称 | 需要 | 说明 |
|---|---|---|
| printPdf | filepath,可选 filename、paperSize、copies、margin | 打印 PDF,远程地址会先下载 |
| printTxt | content,可选 filename、margin、fontSize、lineSpacing、paperSize | 打印文本 |
| printImage | filepath,可选 filename、margin、paperSize | 打印图片,等比居中 |
参数
公共字段:filename、paperSize(A4 / A5 / A6 / B5 / B6 / letter)、copies、success / fail / complete。成功时 errCode 为 0。
printPdf
| 字段 | 说明 | 默认 |
|---|---|---|
| filepath | 本地或远程 PDF | 必填 |
| margin | 页边距 pt,PDF 暂不生效 | - |
printTxt
| 字段 | 说明 | 默认 |
|---|---|---|
| content | 文本,支持 \n | 必填 |
| margin | 页边距 pt | 20 |
| fontSize | 字号 pt,0 或不传则自适应 | 自适应 |
| lineSpacing | 行距倍数 | 1.4 |
printImage
| 字段 | 说明 | 默认 |
|---|---|---|
| filepath | 本地或远程图片 | 必填 |
| margin | 四周留边 pt,等比居中 | 10 |
远程地址会先下载再打印。
平台差异
paperSize/copies:Android / Web 部分生效;iOS 由系统打印面板控制。- PDF 的
margin暂不生效;iOS 图片margin暂不生效。 - 鸿蒙需打印权限(插件已声明)。
版本
版权归https://xui.tmui.design你不得修改及二次开发,仅供TMUI4会员商用使用。不得转给非VIP会员使用,一经查实数倍赔偿,并追究法律责任。
更新日志
1.2.0(2026-08-01)
- 新增鸿蒙(HarmonyOS NEXT)平台支持:PDF/文本/图片打印,基于系统 print 能力,自动申请 PRINT 权限
- 新增排版参数:页边距 margin、字号 fontSize、行距 lineSpacing(文本)
- 新增纸张类型参数 paperSize(A4/A5/A6/B5/B6/letter,Android/Web 生效)
- 新增份数参数 copies(三端由系统打印面板控制,预留)
1.1.0(2026-08-01)
- 改造成 DCloud 函数式风格 API,统一
success/fail/complete回调 - 新增文本(txt)打印,支持自动分页排版
- 新增图片打印(jpg/png)
- 新增 Web(H5)端打印支持
- 新增远程地址自动下载后再打印
- 新增统一错误码规范(unierror.uts)
1.0.0(2024-06-01)
发布第一版本,双端支持打印 pdf 文件。
