home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 5 / FreshFish_July-August1994.bin / useful / dist / gfx / show / superview-lib / docs / svobject-docs / tiff.doc < prev    next >
Text File  |  1994-07-04  |  10KB  |  257 lines

  1.  
  2.   TIFF.svobject
  3.  
  4.   © 1994 by Andreas R. Kleinert.
  5.  
  6.   FREEWARE. All rights reserved.
  7.  
  8.   Version      : 2.7
  9.   Release Date : 05.06.1994
  10.  
  11.  
  12.   Requirements
  13.   ~~~~~~~~~~~~
  14.   - OS V2.04+ (V37)+ and its libraries
  15.   - superviewsupport.library V3+
  16.  
  17.  
  18.   Description
  19.   ~~~~~~~~~~~
  20.   TIFF.svobject is an external Library-Module for the superview.library V2+.
  21.  
  22.   It contains SVDriver-Support for the superview.library V3+, and
  23.   needs any SVDriver with Bitplane-/ChunkyPixel-Support.
  24.  
  25.   It supports reading and writing of TIFF-Files (V5.0).
  26.   In detail these are :
  27.  
  28.   Reading :
  29.  
  30.    Compression     Code       PixelBits   Planes     Max. Depth   As    Test
  31.  
  32.    None      1       1           (system)  1*(system)   BITPLANE
  33.    None      1       8           1,3     8 / 24       ONEPLANE     X
  34.    Mac PackBits  32773       1           (system)  1*(system)   BITPLANE   X
  35.    Mac PackBits  32773       4           1     4          ONEPLANE     X
  36.    Mac PackBits  32773       8           1     8          ONEPLANE
  37.    LZW         5       8           1,3     8 / 24       ONEPLANE    (X)
  38.    CCITT 1D     2       1           1     1          BITPLANE
  39.  
  40.     - CCITT 1D DISABLED IN THIS VERSION : does not seem to work correctly -
  41.  
  42.  
  43.    Not all of these modes may work correctly and/or have been tested
  44.    for working correctly. Tested were :
  45.  
  46.     - None      , PixelBits 8x1, ONEPLANE   (problems with odd-width pics)
  47.     - None      , PixelBits 8x3, ONEPLANE   (problems with odd-width pics)
  48.     - Mac PackBits, PixelBits 1x?, BITPLANE   (nearly no problems recognized)
  49.     - Mac PackBits, PixelBits 4x1, ONEPLANE   (no problems recognized)
  50.     - LZW      , PixelBits 8x3, ONEPLANE   (not SURE, if working corr.)
  51.  
  52.   Writing :
  53.  
  54.    Writing is only supported for Graphics upto 256 Colors.
  55.    They are always written as : Motorola (MM), None, 8, 1, ONEPLANE
  56.  
  57.    Correctness of the written files has been tested so far.
  58.    (Used an other program to convert the written file into IFF-ILBM
  59.     and then compared the results : Just OK !)
  60.  
  61.  
  62.   Remarks
  63.   ~~~~~~~
  64.   This SVObject was quite a hard piece of work and is still perhaps not
  65.   fully free of bugs yet.
  66.  
  67.   A Word About ...
  68.   ----------------
  69.    ... pictures with more than one Strip of Data :
  70.        They should be read correctly now, but I can only hope that the
  71.        pictures have the same opinion ... ;-(
  72.  
  73.    ... LZW compressed pictures :
  74.        You may feel lucky, if decoding really works.
  75.        If it does not, let me tell you, that I only had two pictures for
  76.        testing the routines : The first one produced a strange looking
  77.        picture, but decompression returned no error (8 strips in the
  78.        picture). The second made the decompression routines complaining
  79.        about codesizes (maximum codesize is 12 Bit, but there was a bigger
  80.        one).
  81.        I didn't found any other programs (even for MS-DOS), which were able
  82.        to display the content of my test-pictures ...
  83.  
  84.   Supported
  85.   ---------
  86.   The following should work almost always :
  87.  
  88.    - reading of Intel- (II) and Motorola- (MM) Files
  89.    - reading of 256 Color (8 Bit) Files,
  90.      either packed with : - None
  91.               - Mac PackBits
  92.    - reading of uncompressed 24 Bit files (RGB 3x8 Bits)
  93.  
  94.  
  95.   Not supported
  96.   -------------
  97.   Files with unknown compression types (e.g. CCITT Fax) are as well rejected
  98.   as files with unsupported Compression/PixelBits/Plane combinations, like
  99.   e.g. None/4/2.
  100.  
  101.  
  102.   Requests and Suggestions
  103.   ------------------------
  104.   If you have some FREELY DISTRIBUTABLE TIFF-Files, which do not work
  105.   with this program, you may send them to me, so that I can try
  106.   - at least _try_ - to improve this program to also allow reading of these.
  107.  
  108.  
  109.   Debugging
  110.   ---------
  111.   Nevertheless usually information on a specific picture can be requested,
  112.   although the picture itself cannot be displayed.
  113.   Not all applications may support this (e.g. SuperView does not), because
  114.   the error return value may prevent them against doing this.
  115.  
  116.  
  117.   Author
  118.   ~~~~~~
  119.   Andreas R. Kleinert
  120.   Grube Hohe Grethe 23
  121.   D-57074 Siegen
  122.   Germany
  123.  
  124.  
  125.   History
  126.   ~~~~~~~
  127.   V2.7 (05.06.1994) :
  128.  
  129.    - fixed a bug-fix of a bug-fix bug-fix (or such a thing :-(
  130.      ColorMaps of "II"-type files would always have been black, while
  131.      ColorMaps of "MM"-type files would have been correct.
  132.      Now they are both OK (forgot conversion of II-Words).
  133.    - SVObject flags now reflect, that GfxBuffer can be written
  134.  
  135.  
  136.   V2.6 (03.06.1994) :
  137.  
  138.    - MAJOR REVISION
  139.    - now reads the same files as before and many, many more ... :-)
  140.    - reading of "MM" files did not work correctly, because I only checked
  141.      this with self-written files (and those had been written wrong :-(.
  142.      So the complete UBYTE-, UWORD- and ULONG reading stuff for TIFF's
  143.      variable length parameters has been written new.
  144.    - writing of files did not work correct because "MM" UWORDs and UBYTEs
  145.      were not shifted into the upper word before writing.
  146.      Also fixed some minor problems.
  147.    - files without ColorMap have been reported to be "24 Bit Files". Fixed.
  148.    - reduced (temporary) memory usage for compressed pictures, where
  149.      the size of the compressed data often is nothing against the maximum
  150.      possible size (depending on width, height and depth).
  151.      Now we compare our calced value against the size of the whole file,
  152.      which actually should be the limit ...
  153.    - added decompression routines for : LZW (Code 5) and CCITT3 (Code 2).
  154.      Although these have been derived from the original Aldus Code as
  155.      distributed via the Nets, they may not work correctly at all, since
  156.      I had to do many changes to get it working on the Amiga ...
  157.      (Ever ported some code from MS-DOS ? Oh, oh ...)
  158.      Remark : CCITT disabled in this version !
  159.    - added support for pictures with "more than one strip of data"
  160.      (may not work with all types of compressed data : CCITT3 decompression
  161.       routines will e.g. reject data which consists of more than one strip)
  162.    - now we assume, that files with a "PhotometricInterpretation" of 2 (RGB)
  163.      have at least 3 "SamplesPerPixel", if nothing else is defined :
  164.      I have seen 24 Bit RGB files, which did not contain such information !!
  165.  
  166.  
  167.   V2.5 (27.05.1994) :
  168.  
  169.    - now saving of GfxBuffers is possible : internal write routines have
  170.      been completely rewritten, so that supplied Screens are transferred
  171.      to GfxBuffers before saving. BitPlane AND OnePlane Buffers upto
  172.      8 Bit are supported : they are converted to each other by using the
  173.      appropriate functions of superviewsupport.library V3+.
  174.  
  175.  
  176.   V2.4 (07.05.1994) :
  177.  
  178.    - 15.05.94 : modified Doc-File slightly
  179.    - use of SAS/C V6.51
  180.    - use of new "superviewsupport.library" V1
  181.      This saves some space again (here : ca. 1600 Bytes).
  182.  
  183.  
  184.   V2.3 (01.05.1994) :
  185.  
  186.    - with 24 Bit pictures, PixelBits-Value in GfxBuffer was not set to
  187.      24 instead of 8 accidentally. Fixed.
  188.    - version still reflected 2.1 instead 2.2. Now we're at 2.3 :-)
  189.    - "black & white" graphics without "BitsPerSample" and "SamplesPerPixel"
  190.      Tags should now be read correctly instead of rejecting them
  191.      (default value is "1" for both)
  192.    - still working on LZW-decoding (and working, and working, and working,
  193.      and working, ... :-(
  194.  
  195.  
  196.   V2.2 (18.04.1994) :
  197.  
  198.    - improved speed of MacPackBits decoding routines
  199.    - fixed bug, which occured, when any BitPlane-Formats (no ChunkyPixel)
  200.      had been read : Black Screen appeared. This is now fixed.
  201.    - created new hierarchy for decoding routines : they are now much more
  202.      flexible and error-resistant. Future expansions will be easier to make.
  203.    - temporary buffer for rawdata is now delocated immediately after use
  204.    - reduced memory usage for BitPlane Formats a lot
  205.    - added code for reading 24 Bit Data (unpacked 8 Bit RGB)
  206.    - reduced memory usage for unpacked 8 Bit-ChunkyPixel/RGB by just taking
  207.      the rawbuffer, which then hasn't to be given free anymore : no
  208.      copying is done any longer !
  209.    - improved internal "grey-scale-generation"-routine.
  210.      It produced sometimes wrong values for the last GreyScale-Color,
  211.      which should have been real "white".
  212.      The wrong values were like this :
  213.       -   4 GreyScales,  4. Color : 192/192/192
  214.       -  16 GreyScales, 16. Color : 240/240/240
  215.       - 255 GreyScales, 16. Color :