网页直连本地打印机 · 安全可控

让网页与业务系统的打印,由 PrintLink 直接、安全地完成

在连接打印机的电脑上装好 PrintLink,网页授权后即可直接打印——所见即所得,数据默认不出本机;局域网与公网接入可按需开启。

当前版本 v1.1.0支持 Windows / macOS / Linux

文档

从安装到接入,一步一步

从装好 PrintLink 到网页出纸的每一步;每页都能一键复制给 AI,让它基于官方文档帮你写接入代码。

全部文档

核心能力

为什么选择 PrintLink

从网页里点「打印」到纸张出来,每一步都确定、可控,不再依赖浏览器打印对话框。

所见即所得

预览窗口显示的就是最终打印效果,确认打印不再重新排版。

数据留在本机

PrintLink 默认只接受本机连接,新网页要打印必须经用户授权;局域网或公网连接需管理员显式开启。

按打印机真实能力打印

份数、双面、纸张、纸盒按打印机实际支持的选项执行,不支持的自动降级并明确提示,不会打出错乱格式。

主流格式全支持

PDF、图片、Hiprint 模板、代码构建的打印文档都能打,同一条任务里还能混排,统一一套参数。

在线设计器

毫米级精度画布,支持数据绑定与实时预览;导出 JSON 即可交给 PrintLink 打印,模板中心提供起点。

HTTP + WebSocket 本机服务

任何网页、脚本、程序都能直连本机服务,不限浏览器;浏览器接入只需一个 script 标签或 npm 包。

连接方式

打印机在哪,就选哪种连接

默认本机直连;打印机不在本机时,再由管理员显式开启更宽的连接。

默认

本机打印

业务系统在公网也没关系:网页经 127.0.0.1 连接本机 PrintLink,纸从本机出,不开放任何端口。

低 · 不开放网络端口

公网 ERP / SaaS / 内部系统 + 本机出纸

为什么这是默认
显式开启

局域网共享打印

打印机接在一台工作站上,同网段电脑经确认的地址连接;来源白名单、站点授权、接口权限三层独立。

中 · 仅限指定网段

仓库、门店、产线的共享出纸

工作站部署指南
高级部署

跨网络远程打印

经 VPN 或反向代理访问,内置 TLS 尚未提供;网络、证书与域名由部署方负责,远程非浏览器接入待独立身份体系。

高 · 需 VPN / 代理与统一管控

集中打印节点、受管企业网络

责任边界与前置条件

从哪发起、怎么连接、能打什么

三者互相独立:同一份 PDF,公网网页可以在本机提交,局域网里的终端也可以。

发起来源

  • 浏览器网页(Web SDK)已支持
  • 本机程序与自动化脚本协议已支持 · 见使用边界
  • 远程业务系统(非浏览器)暂未支持 · 待独立身份与 SDK
本机自动化与协议客户端

连接路径

  • 本机连接(127.0.0.1)默认
  • 局域网直连(指定地址 + 网段白名单)显式开启
  • 跨网络远程(VPN / 反向代理)高级部署
选择部署拓扑

打印内容

  • PDF(带完整性校验)
  • 图片(PNG / JPEG,自动适配纸张)
  • PrintLink Document(代码构建 · 数据绑定)
  • Hiprint 模板(自动转换)
打印工作流

三步上手

装好 PrintLink,打出第一张纸

一段短代码即可接入,默认路径全程不出本机。

  1. 安装 PrintLink

    下载安装包,装在连接打印机的电脑上;默认只接受本机连接。

  2. 接入 SDK

    一个 script 标签或 npm 包;网页首次打印时,用户在桌面端确认授权。

  3. 第一次打印

    构建打印文档或上传 PDF,预览确认后静默出纸。

print.jsJavaScript
// 1. 引入:<script src="http://127.0.0.1:17888/sdk/printlink.js">
const client = new PrintLink.PrintLinkClient({
  appName: '我的业务系统' });
await client.connect();
await client.ensureAuthorized();  // 首次在 Agent 端确认授权
const asset = await client.uploadAsset(pdfBytes, 'application/pdf');
await client.printAndWait({ queueId,
  source: { type: 'pdf', asset } });
// 静默出纸;preview() 用同样参数打开预览窗口
// 组合式:用代码构建 PrintLink Document
const doc = PrintLink.createDocument({ size: 'A4' });
doc.text({ x: 15, y: 18, text: '出库单', fontSize: 16 });
doc.text({ x: 15, y: 32, bind: 'customer.name' });
doc.table({ bind: 'order.items' });
await client.printAndWait({
  queueId, source: { type: 'document', document: doc },
  data: order });
// bind 字段由 data 注入;preview() 用同样参数

完整可复制示例与三种状态处理见快速上手。 快速开始 →

工具

做模板、调接入,更快完成

设计器、模板中心与 Playground 覆盖从模板制作到接入联调的全过程。

安全与隐私

打印数据默认不出这台电脑

  • 网页须经用户授权才能打印
  • 局域网 / 公网连接需显式开启,并限定地址与来源
  • 日志与诊断包不含文档内容

下载

下载 PrintLink

v1.1.0

默认仅监听本机,安装后网页即可安全打印。 安装指南 →

全部平台

Windows

Windows 10 / 11

64 位.exe

15.0 MB

SHA-25678033f07587e3f957a56ee8f6ba8f4bdcb9a43cbff9f63e57ffffb27f333e340
ARM64.exe

14.5 MB

SHA-25655bba0c8b9c3ae8ab5439d59a5b143e9d784bd27476ea9112e607165278cd71c

macOS

仅 Apple 芯片 · macOS 11+

Apple 芯片(M 系列).dmg

18.0 MB

SHA-25621765d211ed35a4d866c2e1c6346dd2fccd0e7bb06c28d9b4d37b019de5bc8df

Linux

Debian / Ubuntu · AppImage 免安装

Debian / Ubuntu.deb

14.0 MB

SHA-256b2c9b9c6afa0c077393f162398d255926a02b566eac97b130b0952238596a16f
AppImage.appimage

21.0 MB

SHA-256dfe4af0ac49c7531a868ec0eddd475ddb43f60b3bccc5153ff23ddd5c59d3bf9