开源自荐-网页打印机 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
爱意满满的作品展示区。
hanxiV2EX

开源自荐-网页打印机

  •  
  •   hanxiV2EX
    hanxi Apr 27 via Android 4539 views

    项目功能: 把家用 USB 打印机变成随时可访问的网络打印服务

    项目地址: https://github.com/hanxi/cups-web

    打印后端依赖于 cpus 开源项目,需要自己安装好打印机驱动,一般的打印机驱动都有。

    今天发现来了好多 star ,顺便再这里也分享一下,让更多需要的人看见。

    最后,有需求尽管提 issue ,会酌情考虑实现。

    Supplement 1    31 mins ago
    最新版本支持了在玩客云 32 位的机器上运行,也支持了在龙芯的 CPU 架构上运行,龙芯加油!
    54 replies    2026-04-30 21:06:38 +08:00
    quan
        1
    quan  
       Apr 27   1
    感谢大佬,很实用!
    dsd2077
        2
    dsd2077  
    PRO
       Apr 27 via Android   1
    大佬,请教一下你是怎么推广开源项目的?
    charley008
        3
    charley008  
       Apr 27   1
    能添加网络打印机吗?就是通过 ip 而不是 usb
    SenLief
        4
    SenLief  
       Apr 27 via iPhone   1
    安卓手机能实现双面多份打印功能吗
    hanxiV2EX
        5
    hanxiV2EX  
    OP
       Apr 27 via Android
    @dsd2077 我也不懂,反正能发的地方就发,用的人多了才会有更多人发现吧。
    hanxiV2EX
        6
    hanxiV2EX  
    OP
       Apr 27 via Android
    @charley008 应该是可以的,我看 cups 后台可以添加分享的打印机,我没实际测试过,你可以部署试试。
    hanxiV2EX
        7
    hanxiV2EX  
    OP
       Apr 27 via Android
    @SenLief 有双面打印功能,我没实际用过,不知道怎么双面打印。
    SenLief
        8
    SenLief  
       Apr 27 via iPhone   1
    @hanxiV2EX 我回去试试,自带的网络打印,安卓手机无法打印多份,只能出一份,或者不能一份一份的出来。
    luotuoxiaohui
        9
    luotuoxiaohui  
       Apr 27   2
    可以接管菜鸟的那个打印组件吗?电商很需要
    garywill
        10
    garywill  
       Apr 27   1
    我们有一台打印机,仅 windows 有驱动。一直想让一台 win 电脑当服务器,供其他 linux 电脑通过局域网打印东西。楼主你这软件可以办到吗?
    ashin
        11
    ashin  
       Apr 27 via iPhone   1
    我家里有一个很老的 usb 打印机,mac 上没驱动用不了,每次都需要开虚拟机用 windows 才能打印,楼主你这个能解决直接在 mac 上操作打印,不开虚拟机吗?
    hanxiV2EX
        12
    hanxiV2EX  
    OP
       Apr 28 via Android
    @luotuoxiaohui 不懂怎么接管。
    hanxiV2EX
        13
    hanxiV2EX  
    OP
       Apr 28 via Android
    @garywill 你得去 cups 官网找找有没有你的型号的驱动才行。
    hanxiV2EX
        14
    hanxiV2EX  
    OP
       Apr 28 via Android
    @ashin 你得去 cups 官网找找有没有你的打印机型号的驱动。
    sddyzm
        15
    sddyzm  
    PRO
       Apr 28   1
    很实用
    gtchan13579
        16
    gtchan13579  
       Apr 28   1
    不太明白,这个是要装 docker 的那个服务器连着 usb 打印机吗
    xiaoyuesanshui
        17
    xiaoyuesanshui  
       Apr 28   1
    @ashin 我有类似的情况
    打印机是佳能 lbp2900 ,mac 上没有驱动了
    通过 windows 做了打印机共享,自己在 mac 上搭建了一个 cups ,能看到打印机和状态
    但是只要点打印,就会显示打印机暂停而且没法恢复

    最苦恼的是,mac 上还没办法通过 samba 看到 windows 共享的打印机
    xuromky
        18
    xuromky  
       Apr 28   1
    我也不是很明白,能说一个使用场景么
    hanxiV2EX
        19
    hanxiV2EX  
    OP
       Apr 28 via Android
    @gtchan13579 大概是的。但是 cups 也支持网络打印机,这个程序主要是 cups-web 这个容器,cups 那个容器才是需要连着打印机的,无论是网络连接还是 usb 连接。
    hanxiV2EX
        20
    hanxiV2EX  
    OP
       Apr 28 via Android
    @xiaoyuesanshui 看症状是 cups 的驱动没装对型号。
    YICHUJIFA
        21
    YICHUJIFA  
       Apr 28   1
    感谢大佬,很实用!
    hanxiV2EX
        22
    hanxiV2EX  
    OP
       Apr 28 via Android
    @xuromky 我的使用场景是手机里的文件能在手机上打开浏览器就可以打印。不用去开电脑,特别是老款的 usb 打印机。
    pao8pin5
        23
    pao8pin5  
       Apr 28   1
    wifi 连接的打印机可以吗?
    hanxiV2EX
        24
    hanxiV2EX  
    OP
       Apr 28 via Android
    @pao8pin5 应该是可以的,cups 后台可以添加网络打印机?
    nonez
        25
    nonez  
       Apr 28   1
    部署到群晖,然后添加同局域网内的共享打印机可以吗?
    hanxiV2EX
        26
    hanxiV2EX  
    OP
       Apr 28 via Android
    @nonez 可以试试
    garywill
        27
    garywill  
       Apr 28   1
    @hanxiV2EX #13 估计我的需求不行。其实我把我的打印机插上 linux 电脑试过,cups 能打印出东西,但是非官方驱动总有些问题,一些打印参数也不能调,导致我的型号用 cups 打印很鸡肋,还不如发给 windows 电脑然后在 win 上操作打印。看来还得开发一款原生的 windows 打印共享服务才能满足我( samba 共享仍要求 linux 有驱动)
    hanxiV2EX
        28
    hanxiV2EX  
    OP
       Apr 28 via Android
    @garywill 能打印出东西就可以试试了。我这个只利用了打印功能,文件格式都是转换成 pdf 打印的。
    yinmin
        29
    yinmin  
       Apr 28   2
    @garywill #10
    @ashin #11
    @xiaoyuesanshui #17

    usb 打印机只有 windows 驱动,是有一种方案共享给 ios 、macos 、linux 打印的:在 windows 上安装 airprint 驱动。

    在 2010 年 apple 刚刚推出 airprint 时还少有 airprint 打印机,apple 公司做了一个 airprint 的 Windows 驱动。这个驱动是支持目前最新的 windows 版本。

    十年多前 apple 已经下架了这个软件,但是你仍然可以从第三方的 airprint 工具提取到 apple 的三个核心文件:airprint.exe 、libairprint.dll 、XpdfPrint.dll

    纯净安装的步骤如下:
    (1) 从第三方 airprint 包中提取 airprint.exe 、libairprint.dll 、XpdfPrint.dll ,这三个文件都应该有 Apple Inc 的数字签名 (2010-10-8 签名),如果签名不正确不要用。
    (2) 从 https://k.kramerav.com/support/download.asp?f=56706 下载 Bonjour64.msi 文件,确认 msi 文件有 Apple Inc 的数字签名,安装 Bonjour64.msi (如果签名不正确不要用)
    (3) 将 airprint.exe 、libairprint.dll 、XpdfPrint.dll 复制到 C:\Program File (x86)\AirPrint
    (4) 以管理员身份运行 cmd.exe ,执行以下 2 条命令:

    sc.exe create AirPrint binPath= "C:\Program Files (x86)\AirPrint\airprint.exe -R _ipp._tcp,_universal -s" depend= "Bonjour Service" start= auto

    sc.exe start AirPrint

    ( 5 )双击运行 airprint.exe ,允许“AirPrint for Windows”通过防火墙 (或者手工将 airpint.exe 加入 Windows 防火墙允许列表)
    ( 6 )在 Windows 的“控制面板”-“设备和打印机”里,共享打印机。ios 和 macos 使用 airprint 能搜索和使用 windows 共享的打印机了。

    * 卸载方法:以管理员身份运行 cmd.exe ,执行以下命令:sc.exe delete AirPrint
    yinmin
        30
    yinmin  
       Apr 28 via iPhone   1
    @hanxiV2EX #22 cups 支持 iphone airprint 、android 无线打印的,在 docker 主机(非容器)安装 avahi-daemon ,cups 容器使用 host 网络就能支持了
    hanxiV2EX
        31
    hanxiV2EX  
    OP
       Apr 28 via Android
    @yinmin 感谢你的经验分享
    yinmin
        32
    yinmin  
       Apr 28 via iPhone   1
    接#29 airprint.exe 、libairprint.dll 、XpdfPrint.dll 提取的第三方软件包见这篇文章:

    https://sspai.com/post/63776
    wskymark
        33
    wskymark  
       Apr 28   1
    有一台老兄弟激光打印机,cups 驱动装上识别到打印机但就是打不出来,一直只能接 win 上打
    yinmin
        34
    yinmin  
       Apr 28 via iPhone   1
    #29 的方案是给有电脑洁癖的人用的。所有文件都有 Apple Inc 数字签名,没有任何的第三方可执行文件,能放心部署到 Windows 打印服务器上。
    yinmin
        35
    yinmin  
       Apr 28 via iPhone   1
    @wskymark #33 根据#29 的步骤安装 airprint for windows ,在 windows 共享打印机,就能在 mac 、ios 、linux 上网络打印了
    n2l
        36
    n2l  
       Apr 29   1
    @garywill PaperCut Mobility 解君忧
    gigishy
        37
    gigishy  
       Apr 29 via iPhone   1
    很老的 lpt 或者 usb 打印机,难道网络打印的最优解决方案不是买个几十元的网络打印(服务)设备,然后设备接打印机吗?
    v1
        38
    v1  
       Apr 29   1
    @wskymark 找兄弟的客服拿最新驱动
    @yinmin 全都是有签名的可执行文件不代表绝对安全,考虑下白加黑
    v1
        39
    v1  
       Apr 29   1
    @gigishy 大部分打印盒子其实是一个精简版的 android4.0 系统+驱动+API 框架,本质上是一样的
    xiaoyuesanshui
        40
    xiaoyuesanshui  
       Apr 29   1
    @gigishy 然而有的打印机这条路走不通,比如我的 lbp 2900 ,好像是因为打印机端口走的是虚拟端口啥的
    morota
        41
    morota  
       Apr 29   1
    让 codex 在飞牛上部署了一下,局域网的 hp 打印机可以用。给个 star
    hanxiV2EX
        42
    hanxiV2EX  
    OP
       Apr 29 via Android
    @gigishy 对于不想折腾的确实买个设备的方式最合理。有时候折腾也是一种乐趣,家里有 NAS 的话,反正是常年不关机的,多一个功能多一个玩具吧。
    cz5424
        43
    cz5424  
       Apr 29   1
    @v1 不是 cups 方案的还在用 mtk 的方案哈哈哈; cups 的驱动问题很严重,包括 macos 和 linux ,用户量少是一个严重问题。现在新的打印机带网络了,逐渐不需要这个玩意;微软包括 cups 也在推无驱模式
    287854442
        44
    287854442  
       23h 13m ago   1
    好东西,不过我在 macos 上启动 docker ,死活登录不进去 cups ,让 claude code 一查一番,发现 macos 内置了 cups ,端口是 631 ,所以所有的 cups 请求都到了内置的 cups 里,修改了 docker compose 文件的端口才能用。 建议换个端口,631 改为 1631 之类的,理论上 app 层端口要大于 1024 比较好.
    hanxiV2EX
        45
    hanxiV2EX  
    OP
       21h 35m ago
    @287854442 你有 cups 的情况下,只需要部署 cups-web 即可。
    zeex
        46
    zeex  
       21h 20m ago   1
    新的打印机都走 ipp 了吧
    etungxu
        47
    etungxu  
       20h 22m ago   1
    这里贴一下支持 IPP 协议的打印机 https://openprinting.github.io/printers/
    PrinceofInj
        48
    PrinceofInj  
       20h 21m ago via Android   1
    @zeex IPP 打印机的话,好处就是局域网下面安装很方便,自动发现。但是你如果想要在外网访问这个打印机,还是很折腾的。各个厂家的小程序或者 APP 都是很难用的,感觉也就小米的可能还好用点。
    garywill
        49
    garywill  
       20h 10m ago   1
    @n2l 你推荐的这个 PaperCut Mobility ,我看了他的演示视频,需要使用客户端软件。而他们没有 linux 端的客户端
    cz5424
        50
    cz5424  
       19h 23m ago   1
    @garywill 这玩意我用过,不需要他客户端软件,安装完之后使用手机/电脑系统自带的打印服务打印。但是只能局域网用
    n2l
        51
    n2l  
       18h 41m ago   1
    @garywill #49 打印机只有 win 驱动,还有一台 win 当服务器,那 PaperCut Mobility 就完美符合你的情况,你把打印机连在 win 服务器上,win 服务器再装上 PaperCut Mobility ,局域网客户端无需安装任何驱动,而且,同网络下的手机( iPhone+安卓)上也是不需要安装任何软件就可以打印的哦~
    AiBoy
        52
    AiBoy  
       17h 51m ago   1
    @xiaoyuesanshui LBP2900 就是不行,我也是这台机器连不了 mac ,也没法挂在 Ubuntu 24.04.4下面,无奈只能插回 win 机器下用。
    xiaoyuesanshui
        53
    xiaoyuesanshui  
       16h 18m ago   1
    @AiBoy 这台机器是真的怪,同时期的其他产品好像没这个问题
    PrinceofInj
        54
    PrinceofInj  
       11h 4m ago   1
    试了一下把家里的爱普生 4268 打印机通过 IPP 配上了,使用没问题。
    About     Help     Advertise     Blog     API     FAQ     Solana     3462 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 120ms UTC 00:11 PVG 08:11 LAX 17:11 JFK 20:11
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86