更新记录
0.4.2(2026-08-23)
- 使用gpt5.6开发的 三端 调用系统打印能力
- 新增
exportPdfImagesAPI,将 PDF 逐页导出为本地 PNG,供系统图片分享等场景复用。 - Android、iOS 和 HarmonyOS 统一返回图片路径列表与页数,保留原有 PDF 打印接口。
平台兼容性
uni-app(5.23)
| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|
| × | × | × | × | × | × | × | × | × |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 小红书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| × | × | × | × | × | × | × | × | × | × | × | × |
uni-app x(5.23)
| Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
|---|---|---|---|---|---|
| - | - | 8.0 | 18 | 6 | - |
simple-printer
simple-printer 为 uni-app x Vapor 提供文件、图片和 HTML 三类独立系统打印能力,支持 Android、iOS 和 HarmonyOS App。
文件打印
import { printFile } from '@/uni_modules/simple-printer'
printFile({
filePath: pdfResult.path,
documentName: '借阅清单',
mimeType: 'application/pdf',
success: (result) => {
console.log('系统已受理打印', result.filePath)
}
})
Android 的 printFile 可靠支持 PDF,并校验 PDF 文件头;其他格式返回 UNSUPPORTED_FILE_TYPE。iOS 使用系统 canPrint 判定文件是否可打印。HarmonyOS 将文件交给系统打印服务,由系统判定格式支持情况。
图片打印
import { printImage } from '@/uni_modules/simple-printer'
printImage({
imagePath: imagePath,
documentName: '活动照片',
scaleMode: 'fit'
})
scaleMode 支持 fit 和 fill。Android 会将图片真实绘制到 A4 打印文档;iOS 和 HarmonyOS 的最终缩放由系统打印界面决定。
HTML 打印
import { printHtml } from '@/uni_modules/simple-printer'
printHtml({
html: '<html><body><h1>借阅清单</h1></body></html>',
documentName: '借阅清单',
baseUrl: ''
})
Android 使用临时原生 WebView 渲染后交给 PrintManager;iOS 使用 UIMarkupTextPrintFormatter;HarmonyOS 使用临时 ArkUI/ArkWeb 宿主生成 PDF 后调用系统打印,不需要注册额外 uni-app x 页面。iOS 的 baseUrl 不参与资源加载,HTML 应使用内联样式和可直接访问的资源。
PDF 导出图片
import { exportPdfImages } from '@/uni_modules/simple-printer'
exportPdfImages({
path: pdfPath,
jobName: '借阅清单',
success: (result) => {
uni.shareWithSystem({
type: 'image',
imagePaths: result.imagePaths
})
}
})
exportPdfImages 会把 PDF 逐页渲染为 PNG 并返回本地临时路径。调用方应立即交给系统分享或消费这些文件,不应长期持有临时路径。
兼容接口
printPdf({ path, jobName }) 保留为兼容入口,内部转到 printFile。隐藏组件 <simple-printer> 暴露 printFile、printImage、printHtml、printPdf 和旧别名 print。
函数同步返回值表示请求已受理或参数校验结果。HarmonyOS 文件/图片及 Android、HarmonyOS HTML 的系统调用是异步的,应以 success、fail、complete 回调作为最终提交结果。success 只表示打印 UI 或打印任务已交给系统,不表示纸张已经物理打印完成。
HarmonyOS 需要 SystemCapability.Print.PrintFramework,插件声明系统自动授予的 ohos.permission.PRINT。设备不支持打印框架或系统拒绝请求时,分别返回 SYSTEM_PRINT_UNAVAILABLE 或 SYSTEM_PRINT_FAILED。

收藏人数:
购买源码授权版(
试用
赞赏(0)
下载 1625
赞赏 2
下载 12526203
赞赏 1944
赞赏
京公网安备:11010802035340号