AWARE [SYSTEMS] Imaging expertise for the Delphi developer
AWare Systems, Imaging expertise for the Delphi developer, Home TIFF and LibTiff Mailing List Archive

LibTiff Mailing List

TIFF and LibTiff Mailing List Archive
August 1999

Previous Thread
Next Thread

Previous by Thread
Next by Thread

Previous by Date
Next by Date


The TIFF Mailing List Homepage
This list is run by Frank Warmerdam
Archive maintained by AWare Systems

Valid HTML 4.01!

1999.08.20 16:31 "[Fwd: Re: What's wrong with this TIFF?]", by Helge Blischke

Return-Path: <>
Received: from SunFrame1 ( [])
	by (8.8.7/8.8.7) with SMTP id SAA25889;
	Fri, 20 Aug 1999 18:29:49 +0200
Message-ID: <>
Date: Fri, 20 Aug 1999 18:29:49 +0200
From: Helge Blischke <>
Organization: SRZ BERLIN
X-Mailer: Mozilla 3.01Gold (X11; I; SunOS 5.5.1 sun4m)
MIME-Version: 1.0
To: Alberto Accomazzi <>
Subject: Re: What's wrong with this TIFF?
References: <>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Alberto Accomazzi wrote:
> In message <>, Helge Blischke writes:
> Kevin D. Quitt wrote:
> >
> > PostScript allows the direct inclusion of the binary CCITT Group IV data from
> > a TIFF file.  My program reads in a TIFF, converting it from multiple strips to
> > a single strip, as necessary, and puts a PostScript wrapper around it.  Generally
> > things have worked well, but with certain images I'm getting a PostScript error
> > in the middle of the TIFF data.  The image was created in PaintShop Pro, then
> > run through tiffcp to convert it to a single strip.
> This is a bit off the point of the original poster, but since this
> question has been bugging me for a while, here it goes:
> is there any way to create a level 2 postscript (or PDF) file which contain
> the sequence of encoded strips (with proper postscript code wrappers
> between them) rather than having to decode and re-encode the data as a
> single strip?  All the tests that I've attempted seem to indicate that
> the answer is no, but I fail to understand why.
> What I was trying to do is create a postscript file that does the
> following (all TIFFs are planar configuration, multi-strip G4 files):
> {
>   nstrips {
>     ncols rowsperstrip g4image
>     0 offset translate
>   } repeat
> }
> %%BeginData
> exec
> [ all data, encoded as ASCII85 G4 stream ]
> nstrips = number of strips in the TIFF file,
> ncols = image width
> g4image = procedure that renderes g4-encoded data stream
> offset = height of rendered image strip on the page
> This doesn't seem to work reliably for all TIFFs (at least with the
> code that I wrote).  Isn't it the case that a G4 TIFF strip is
> fundamentally equivalent to a G4 image and therefore I should be able
> to use the same Postscript code to render it?
> Does any TIFF/postscript/PDF guru have any insight?
> -- Alberto

With an image made up of strips, it is relatively easy when using the
dictionary version
of the image operator. The basic idea is to use a procedure as data
source that interprets
the image data as a sequence of subfiles using 
strip_bytecount () /SubFileDecode filter
for each strip. The other image dict entries are simply set up for the
image as a whole.

With tiled images, it is a bit more complicated - tiles images must be
processed as a
sequence of distinct images, where I'ds suggest not to do scale and
translate the tiles
separately but rahter defining the position of the tiles using the image
matrix. That's
do avoid rounding errors - the image matrix deals with the image
coordinate system, which
uses pixels as unit.

If I totally disturbed your mind, drop me a note, I'll hack you a sketch