Comment 10 for bug 194295

Revision history for this message
Herbert V. Riedel (hvr) wrote :

well...

I've just tried Leopard's Preview application, for which the tiff and the .pdf files show with the expected proper colors

on the other hand, I've also tried the latest Acrobat Reader 8.1.2, for which colors_z.pdf is fine as well, but colors_j.pdf shows up with bad colors...

so I guess there must be something weird going on with the way tiff2pdf does the jpeg encoding...

I've ran the colors_j.pdf file through "pdfimages -j" (which looks fine as well) and called jpeginfo with it, which couldn't detect any errors:

$ pdfimages -j colors_j.pdf colors
$ jpeginfo -c -i colors-000.jpg
colors-000.jpg 1280 x 102 24bit n/a Normal Huffman 14467 [OK]

alas I couldn't find any tool which allows me to directly embedded a jpeg into tiff without reencoding, as that would definitely help to find a hint about what's going on here...

so I tried a workaround now: I tried using "tiffcp" to reencode the lzw tiff into a jpeg tiff, and embed that one into a pdf without transcoding:

$ tiffcp -c jpeg colors.tiff colors_j.tiff
$ tiffinfo colors_j.tiff
TIFF Directory at offset 0x4dd6 (19926)
  Subfile Type: (0 = 0x0)
  Image Width: 1280 Image Length: 102
  Resolution: 72, 72 pixels/inch
  Bits/Sample: 8
  Compression Scheme: JPEG
  Photometric Interpretation: YCbCr
  YCbCr Subsampling: 2, 2
  Orientation: row 0 top, col 0 lhs
  Samples/Pixel: 3
  Rows/Strip: 64
  Planar Configuration: single image plane
  DocumentName: /home/hvr/Bugs/libtiff/colors.tiff
  Reference Black/White:
     0: 0 255
     1: 128 255
     2: 128 255
  JPEG Tables: (574 bytes)
$ tiff2pdf colors_j.tiff -o colors_j2.pdf
$ pdfimages -j colors_j2.pdf colors2
$ jpeginfo -i -c colors2-000.jpg
colors2-000.jpg Not a JPEG file: starts with 0xff 0xc0 [ERROR]

actually, colors_j.tiff was already corrupted (Leopard's Preview complained about it being corrupted)

...this starts to look more and more as if the bug should rather be rassigned to the libtiff package... :-/

ps: all commands above were executed on a current hardy install