Forzar la impresión en color de fondo en Firefox

Estoy usando la gem Ruby de Barby, que agrega una forma práctica de representar códigos de barras como HTML .

Barby renderiza una tabla con fondos td activados o desactivados según el código que se le pasa. Esto funciona bastante bien porque no quiero generar ni almacenar un archivo de imagen para cada registro para el que necesito un código de barras.

Los principales navegadores no imprimen los colores de fondo de manera predeterminada y necesito el código de barras para imprimir sin que el usuario cambie una opción de impresión en su sistema local.

No estoy seguro de cómo lograr esto con Firefox. Con webkit (Chrome y Safari), es bastante fácil:

 td { background: #000 !important; -webkit-print-color-adjust: exact; } 

Feverish Googling no me ha llevado a ningún lado: esta pregunta tiene algunos años y no he encontrado nada más nuevo, así que me imagino que volveré a plantear la pregunta. Los bordes gruesos tampoco funcionarán realmente porque si la relación entre las barras cambia, cambiará los datos contenidos en el código.

Esto está empezando a funcionar en Firefox (al menos la versión 48.0.2) con la propiedad ” color-adjust “.

 td { background: #000 !important; -webkit-print-color-adjust: exact; color-adjust: exact; } 

Veo uno o dos errores menores en mi proyecto particular, ¡pero los colores de fondo se están mostrando!

Esto funciona para mí:

 @media print { body { -webkit-print-color-adjust: exact; /*Chrome, Safari */ color-adjust: exact; /*Firefox*/ } }