常见问题

连不上、参数不生效、预览与实物不一致、能不能一条任务打多个文件等最常被问到的问题。

最后更新

  1. 确认 PrintLink 在运行:托盘图标状态是「服务运行中」;
  2. 若显示「服务已暂停」,点「启动服务」;
  3. 确认页面里的端口和控制台「设置」里的端口一致;
  4. 代码里可以用 PrintLink.detect() 探测并给出引导。

端口被占用怎么办?

控制台「设置」→ 修改「服务端口」→「检测端口」确认可用 →「保存并重启服务」。 托盘与界面都会对冲突给出提示。

为什么第一次打印会弹授权确认?

任何网页第一次使用打印能力,都需要用户在那台电脑上确认。这是安全设计: 只有用户本人同意,页面才能出纸。同意后令牌保存在浏览器本地,之后不再打扰。 可在控制台「安全与站点」查看和撤销已授权的站点。

打印参数没生效?

PrintLink 不会静默丢弃参数:不支持的取值会按兼容方式降级,并在结果和任务详情里 说明原因。用 validate() 可以在打印前拿到「你要求的」与「实际会用的」对比, 见打印参数。

预览的和打出来的会不一样吗?

不会。预览窗口展示的就是打印机会收到的那一份内容(同一个文件、同一个哈希), 确认打印时不会重新渲染。

能打什么内容?

PDF、图片(PNG / JPEG)、代码或设计器做的模板文档、网页,以及转换后的 Hiprint 模板。见内容来源。

一条任务能打多个文件吗?

能,而且应该这么用。把它们按页序放进同一条任务,用户看到一次预览、 打印队列里只有一条记录:

await client
  .compose({ queueId })
  .paper('A4')
  .addPdf(coverBytes)
  .addPdf(reportBytes).pageRange('2-4')
  .preview();

不要循环调用 print()——那会变成 N 条任务。见组合打印。

多页尺寸不一样怎么办?

一条任务一张纸。 paper 是唯一的尺寸,每一页都落在它上面。没设置时 PrintLink 会推断:各页一致就用它、不一致取最大页并给 MIXED_PAGE_SIZES_UNIFIED、 只有图片则用打印机默认并给 PAPER_DEFAULTED。预览状态栏会写出实际纸张。

为什么不能给每张图单独设纸张尺寸?

因为混排时「每张图自己的纸」和「整条任务一张纸」会互相打架,最终只有任务纸张 算数。要换纸就改任务纸张,要让图片在纸上挪位置就用 .imageLayout()。

打印出来的照片发白、颗粒重?

喷墨打印机是否进入照片模式由纸张类型决定,不是质量档。把 capabilities.mediaTypes.supported 里的照片纸关键字填进 options.mediaType 即可,见打印参数。

我的文档会被传到云端吗?

不会。PrintLink 默认只监听本机地址,文档只在你的页面和这台电脑之间传递, 没有云端中转。日志里也绝不记录文档内容或令牌。

如果管理员另行开启了局域网或远程访问,跨网络那一段由部署方负责保护—— 文档会经过你选择的网络,但不会经过任何 PrintLink 托管的服务器。

支持哪些系统?

Windows 10+、macOS(Apple 芯片)与主流 Linux 发行版(CUPS)。见 安装。

打不出来,从哪查?

按故障排查的顺序走一遍;需要更多人介入时,按 日志与日志包导出日志包。

本页目录