1993.08.10 06:24 "TIFF2FAX", by Kevin Clark

1993.08.10 22:37 "Re: TIFF2FAX", by Kevin Clark

I am looking for some code that will take a set of tiff images and convert them into one large tiff file suitable for faxing.

I am at the moment using fax2ps piped to gs, and this work well. It is however slow and involves a lot of unneccessary conversion and CPU time.

I have had a look at tiffcp and fax2tiff, but find that fax2tiff does not like my tiff images, which is odd since fax2ps does. %-(

tiffcp will not convert between color spaces. fax2tiff takes raw g3-encoded data as input, not tiff.

Tiffcp seems to work, but the result is not liked by flexfax. Maybe I am just using the wrong options but it complains that it is not a bilevel image.

yes. if you have a color image then you need to convert it to a bilevel image and encode it in a format for faxing. you don't tell enough about the images that you are working with, but perhaps something like

The image is not color. Sorry I should have given more info, the actual error message is: "Not a bilevel image (bits/sample 0)". This I take is due to the correct tags not being written out to the file. Also there seems to be a problem with me assuming that flexfax woud scale tiff images, which it does not seem to do.

tiff2bw a.tif b.tif
tiffdither -f b.tif c.tif

tiff2bw complains that the image is not color.

will do what you want. in the long run, if you are doing lots of image manipulation, you may be better off using a more general package like the pbm tools.

It really involves only TIFF and its various groups of compression. I require a fast and low cpu cost way of converting these to faxable images. Thus I wish to go through the minimum number of steps to achive this.

Thankyou for all your help so far, following is some more information about the particular images I wish to fax.

Again I must stress:

  1. fax2ps|gs works very well with all of my images, but is rather slow and cpu intensive.
  2. tiffcp will produce a G3 TIFF image from my source images, but has the error message: Not a bilevel image (bits/sample 0)
  3. the input image must also be scaled as flexfax will not accept just any sized image.

I have hack the tiffcp source to get around number 2, but find that because of the resolution of the image flexfax will reject it, because it has not been scaled. I have a very bad feeling that this can only be done through the use of the ps conversion stage, which suggests that I am stuck with using "fax2ps" piped through gs.

Still if anyone out there knows of source that will handle this conversion then please publish it (or it's whereabouts) as I am sure I am not the only one who wishes to do such things.

TIFFINFO output

TIFF Directory at offset 0x8
  Image Width: 2544 Image Length: 3300
  Resolution: 300, 300
  Compression Scheme: CCITT Group 4 facsimile encoding
  Photometric Interpretation: min-is-white
  FillOrder: msb-to-lsb
  Orientation: row 0 top, col 0 lhs
  Planar Configuration: single image plane
  Group 4 Options: (0 = 0x0)

TIFFDUMP output

Magic: 0x4949 <little-endian> Version: 0x2a
Directory 0: offset 8 (0x8)
ImageWidth (256) LONG (4) 1<2544>
ImageLength (257) LONG (4) 1<3300>
Compression (259) SHORT (3) 1<0>
Photometric (262) SHORT (3) 1<0>
FillOrder (266) SHORT (3) 1<0>
StripOffsets (273) LONG (4) 1<162>
Orientation (274) SHORT (3) 1<0>
StripByteCounts (279) LONG (4) 1<0>
XResolution (282) RATIONAL (5) 1<300>
YResolution (283) RATIONAL (5) 1<300>
Group4Options (293) LONG (4) 1<0>

Cheers,
Kevin

===========================================================================
 Kevin Clark                             |  Telephone       +64 4 472 7909
 Systems Engineer                        |  Facsimile       +64 4 472 7993
 Electronic Document Management Limited  |  Internet    kevin@eltext.co.nz
===========================================================================