安可印安全打印
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_aa8ab0c7/ankeyinsafegprint。
技能介绍
要解决的问题
在办公网络里把文件送到打印机,远不止「发个文件」这么简单:打印机可能只接受 IPP 或 IPPS,TLS 证书可能是自签名的,Office 文档的解析依赖本机组件,而电子发票、票据这类版式敏感的 PDF 一旦交给打印机直接解析,常见结果是整页旋转 90°、字体间距异常、字符错位或表格漂移。更麻烦的是,打印是实体操作,任务一旦被打印机接受,重复提交就意味着重复出纸。
核心能力与工作方式
唯一入口是 print_file.ps1,关键行为如下:
- 打印机记忆:首次调用提供
-PrinterIp,成功后本机%LOCALAPPDATA%\ipp-file-print-skill\printer.json只保存一台最近成功的打印机;用户再喊「打印这个文件」时直接复用,不需要重复问 IP。 - 协议自动升级:默认先走普通 IPP;若打印机返回
HTTP 426 Upgrade Required,自动切换到 IPPS/TLS 重新提交,并在后续记住useSsl=true。由于 426 意味着明文请求未被接受,这次升级不会造成重复出纸。 - 内网证书兼容:对 RFC1918/链路本地地址,若严格 IPPS 仅因自签名、名称不匹配或证书链不受信任而在 TLS 握手阶段失败,且尚未创建 Job,脚本会用忽略证书校验重试一次,成功后把
ignoreCertificateErrors=true连同 IPPS 策略一起记住。公网地址不会自动降级。 - WPS Office 可选转换:检测到 WPS(
kwps.application/ket.application/kwpp.application)时,Auto 模式对 Office 文档优先转 PDF 再打印;没装 WPS 则原文件直传,不再阻断任务。 - 发票图片打印:文件名含 发票、电子票、invoice、票据、税票,或用户明确说是发票时,自动进入图片模式。PDF 页面先在 Windows 本机用 PowerShell 5.1 + STA + Windows.Data.Pdf 按 300 DPI 栅格化为 JPEG,多页通过一个
Create-Job+ 多次Send-Document提交为单个 IPP Job,避免每页一个任务导致份数、顺序、双面行为不一致。栅格化阶段就完成页面筛选,不再把page-ranges交给打印机二次解释。 - 固定默认参数:A4(
iso_a4_210x297mm)、1 份、黑白、双面长边,独立写入 IPP Job Attributes,不依赖打印机自身默认;用户明确指定时才覆盖对应项。打印机不支持时返回unsupported/substituted属性,不静默改参数。 - 防重复:对「打印机 + 文件版本 + 份数 + 参数 + 提交模式 + DPI」生成指纹,120 秒内完全相同的成功请求直接返回
duplicateSuppressed。每个用户请求只允许调用一次脚本,即使 JSON 没回显也不重跑。
适用边界与注意点
- 打印机必须已开启 IPP/IPPS 服务,首次使用必须能拿到 IP。
- 图片模式会增加本机处理时间和临时文件体积,适合发票票据;普通文档不必强开。
- 无 WPS 时 DOCX/XLSX 等格式直传是否被接受,取决于打印机自身能力,脚本会返回格式不支持错误并提示安装 WPS。
- 600 DPI 只建议在二维码、小字特别密集时使用;能力查询
-CheckCapabilities仅用于诊断,不要为了「确认打印结果」再跑一遍打印。
使用场景
- 财务人员需要将带复杂表格和二维码的电子发票批量打印报销,希望避免打印机解析PDF导致的字体错位和页面旋转。
- 运维人员在内网通过IPPS连接自签名证书的打印机,希望脚本能自动兼容证书校验失败并记住策略,无需每次手动干预。
- 行政人员每天要向同一台网络打印机提交文档,希望首次输入IP后后续直接说打印这个文件即可,不用重复设置。
适合人员
- 财务报销专员,典型诉求是准确打印带二维码的电子发票,避免因版式错乱导致退单或重新填写。
- 企业IT运维工程师,典型诉求是在不修改打印机安全策略的前提下,让AI通过IPPS自动适配内网自签名证书设备。
- 行政助理,典型诉求是用自然语言直接驱动网络打印机,省去手动配置双面、A4和黑白等繁琐的打印参数。