diff -Nru ghostscript-9.05~dfsg/debian/changelog ghostscript-9.05~dfsg/debian/changelog --- ghostscript-9.05~dfsg/debian/changelog 2012-03-07 17:05:31.000000000 +0000 +++ ghostscript-9.05~dfsg/debian/changelog 2012-03-19 10:48:25.000000000 +0000 @@ -1,3 +1,12 @@ +ghostscript (9.05~dfsg-0ubuntu3) precise; urgency=low + + * debian/patches/020120319-d6f83df-ps2write-not3ccitt-option.patch: Added + option to let Ghostscript's "ps2write" output device not compress images + and bitmap glyphs with CCITTFax filter. The CCITTFax decoder in Brother's + PostScript printers is broken (LP: #955553). + + -- Till Kamppeter Mon, 19 Mar 2012 11:45:13 +0100 + ghostscript (9.05~dfsg-0ubuntu2) precise; urgency=low * debian/ghostscript-doc.install, debian/ghostscript-doc.doc-base: Install diff -Nru ghostscript-9.05~dfsg/debian/patches/020120319-d6f83df-ps2write-not3ccitt-option.patch ghostscript-9.05~dfsg/debian/patches/020120319-d6f83df-ps2write-not3ccitt-option.patch --- ghostscript-9.05~dfsg/debian/patches/020120319-d6f83df-ps2write-not3ccitt-option.patch 1970-01-01 00:00:00.000000000 +0000 +++ ghostscript-9.05~dfsg/debian/patches/020120319-d6f83df-ps2write-not3ccitt-option.patch 2012-03-19 10:40:57.000000000 +0000 @@ -0,0 +1,64 @@ +--- a/base/gdevpdfb.c ++++ b/base/gdevpdfb.c +@@ -293,16 +293,18 @@ + * that would need to be passed. + */ + if (pres) { +- /* +- * Always use CCITTFax 2-D for character bitmaps. It takes less +- * space to invert the data with Decode than to set BlackIs1. +- */ +- float d0 = image.Decode[0]; ++ if (!pdev->NoT3CCITT) { ++ /* ++ * Always use CCITTFax 2-D for character bitmaps. It takes less ++ * space to invert the data with Decode than to set BlackIs1. ++ */ ++ float d0 = image.Decode[0]; + +- image.Decode[0] = image.Decode[1]; +- image.Decode[1] = d0; +- psdf_CFE_binary(&writer.binary[0], image.Width, image.Height, true); +- invert ^= 0xff; ++ image.Decode[0] = image.Decode[1]; ++ image.Decode[1] = d0; ++ psdf_CFE_binary(&writer.binary[0], image.Width, image.Height, true); ++ invert ^= 0xff; ++ } + } else { + /* Use the Distiller compression parameters. */ + pdev->ParamCompatibilityLevel = pdev->CompatibilityLevel; +--- a/base/gdevpdfb.h ++++ b/base/gdevpdfb.h +@@ -266,5 +266,6 @@ + PDF_FOR_OPDFREAD, /* AllowPSRepeatFunctions */ + true, /* IsDistiller (true even for ps2write!) */ + !PDF_FOR_OPDFREAD, /* PreserveSMask */ +- !PDF_FOR_OPDFREAD /* PreserveTrMode */ ++ !PDF_FOR_OPDFREAD, /* PreserveTrMode */ ++ false /* NoT3CCITT */ + }; +--- a/base/gdevpdfp.c ++++ b/base/gdevpdfp.c +@@ -121,6 +121,7 @@ + pi("IsDistiller", gs_param_type_bool, IsDistiller), + pi("PreserveSMask", gs_param_type_bool, PreserveSMask), + pi("PreserveTrMode", gs_param_type_bool, PreserveTrMode), ++ pi("NoT3CCITT", gs_param_type_bool, NoT3CCITT), + #undef pi + gs_param_item_end + }; +--- a/base/gdevpdfx.h ++++ b/base/gdevpdfx.h +@@ -704,6 +704,11 @@ + bool IsDistiller; + bool PreserveSMask; + bool PreserveTrMode; ++ bool NoT3CCITT; /* A bug in Brother printers causes CCITTFaxDecode ++ * to fail, especially with small amounts of data. ++ * This parameter is present only to allow ++ * ps2write output to work on those pritners. ++ */ + }; + + #define is_in_page(pdev)\ diff -Nru ghostscript-9.05~dfsg/debian/patches/series ghostscript-9.05~dfsg/debian/patches/series --- ghostscript-9.05~dfsg/debian/patches/series 2012-01-25 23:07:50.000000000 +0000 +++ ghostscript-9.05~dfsg/debian/patches/series 2012-03-19 10:44:44.000000000 +0000 @@ -1,3 +1,4 @@ 2001_docdir_fix_for_debian.patch 2002_gs_man_fix_debian.patch 2003_support_multiarch.patch +020120319-d6f83df-ps2write-not3ccitt-option.patch