On Fri, 21 Mar 2025 15:42:29 GMT, GennadiyKrivoshein <d...@openjdk.org> wrote:
>> This update allows users to print with grayscale using color printers. >> Actually, it is not possible to use the "Monochrome" option from the "Color >> Appearance" panel. Also Chromaticity.MONOCHROME can't be used to print >> grayscale on color printers >> ([JDK-8315113](https://bugs.openjdk.org/browse/JDK-8315113)). >> >> **Fix description** >> When a printer supports color printing and a user adds >> Chromaticity.MONOCHROME attribute to a PrintRequestAttributeSet, then the >> final printing raster is transformed to the grayscale color using >> java.awt.image.ColorConvertOp. When the job is a PostScript job, then the >> "setColor" and "setPaint" methods of the Graphics are overridden, and user >> colors (paints) are transformed to the grayscale form using the new proxy >> class GrayscaleProxyGraphics2D. >> >> This approach is assumed to be platform, CUPS, and IPP protocol independent. >> >> **Tests** >> The fix was tested on Ubuntu 22.04 and MacOS 12.6.1. > > GennadiyKrivoshein has updated the pull request incrementally with one > additional commit since the last revision: > > Use PassFailJFrame for test. > Move GrayscaleProxyGraphics2D.java to the shared classes. > Update copyright year. LGTM. @prsadhuk pls be the required 2nd reviewer ------------- Marked as reviewed by prr (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/21930#pullrequestreview-2741029248