GTK 应用程序中用户指定的打印设置会被系统打印机默认设置悄悄覆盖

GTK 应用程序中用户指定的打印设置会被系统打印机默认设置悄悄覆盖

更新: 经过在多个桌面环境(GNOME、Cinnamon、MATE、XFCE 和 KDE Plasma)中进行测试并尝试在不同应用程序中进行打印后,我确定这似乎是 GTK 打印问题。从 GTK 应用程序打印时,所有 DE 都会出现此问题,但 KDE/Qt 应用程序不受影响。有了这些附加信息,有人知道如何解决这个问题吗?

我一直在我们网络上的多台计算机上测试 Ubuntu 22.04.2 LTS,在使用用户指定的设置打印到网络打印机时遇到了问题。当我从 Firefox(Snap 或 apt 版本)、LibreWriter 或 Evolution 等应用程序打印时,打印对话框允许我选择双面打印和彩色与单色打印等选项。然而,实际的物理打印过程并不尊重我在应用程序打印对话框中选择的选项,而是根据 GNOME 控制中心打印机设置中设置的系统范围的双面和彩色选项进行打印。

我尝试过以多种方式更改应用程序打印对话框中的双面打印和彩色选项,例如,使用默认的 Firefox 打印对话框以及“使用系统对话框打印...”选项,这两种方法都对最终打印输出没有任何影响,最终打印输出只是遵循系统范围的双面打印和彩色设置。我还尝试过通过 CUPS Web 界面更改默认值,但也没有效果(最终的打印输出根据所选打印机的系统范围 gnome-control-center 设置进行打印,并忽略用户选择的设置和 CUPS 默认设置,而不会向用户显示正在发生的事情)。

打印机:

  • Lexmark XM3150,无驱动程序,cups-filters 1.28.15(单色打印机,因此显然只出现双面打印问题)
  • Xerox AltaLink C8170,无驱动程序,cups-filters 1.28.15(彩色打印机 - 双面和彩色模式应用程序打印设置均被 Gnome 控制中心中的设置覆盖,并且不会向用户显示正在发生这种情况的任何迹象)

重现步骤:

  1. 打开 Ubuntu/GNOME 设置→打印机
  2. 点击打印机的齿轮按钮→打印选项→页面设置→选择双面选项为“单面”。
  3. 点击打印机的齿轮按钮→打印选项→颜色→选择“颜色”作为打印颜色模式。
  4. 使用应用程序的打印对话框从 LibreWriter、Firefox 或 Evolution 打印文档,选择“双面”和“单色”打印选项。
  5. 打印输出不会像用户在应用程序打印对话框中指定的那样进行双面或单色打印,也不会警告用户其设置未被接受或使用。打印输出会根据用户在 Ubuntu/Gnome 设置→打印机中选择的内容进行打印,而用户可能对此一无所知,这导致了很多挫折、困惑、反复尝试和浪费纸张。

提前感谢您的任何帮助、指点或建议。

答案1

打印问题已通过以下解决方法得到解决(我认为这是一种解决方法,因为不需要这些神秘的步骤来实现用户默认期望的预期行为):

在 CUPS Web 管理中,修改目标打印机(每个网络打印机有多个发现的条目),如下所示:

- 选择连接不以“implicitclass://”开头的打印机版本 -
当要求从列表中选择品牌/型号时,使用打印机制造商提供的官方 PPD(仅提供官方 PPD 而不采取其他任何措施是行不通的 - 对于 Lexmark,它在半数测试中成功,而对于 Xerox,则什么都打印不出来)

以下是当前有效的设置:

描述:Lexmark_XM3150
驱动程序:Lexmark XM3100 系列(灰度、双面打印)
连接:dnssd://Lexmark%20XM3150._ipp._tcp.local/?uuid=46ddad31-ac9a-4001-827e-a73bc92ff831

描述:Xerox_AltaLink_C8170_9F_31_43
驱动程序:Xerox AltaLink C8170(彩色,双面打印)
连接:ipps://Xerox%20AltaLink%20C8170%20(9F%3A31%3A43)._ipps._tcp.local/

打印过程中用户指定的设置现在可在所有应用程序中按预期工作。

相关内容