TIFF Image Support 
Description

Support to read, store, and display TIFF format images. The library supports partial image reading and has support for user defined tags.

Files

LibTIFF.SLL  Transparent image background
support library.
LibTIFF.DLL  Support DLL
LibTIFF.ST
LibTIFF.PRJ
Source files
256.tif
16millzw.tif
Sample images
LibTIFF Doit.txt Demo expressions

Requirements

VS/VSE 3.1.2 for Win32s. Requires the following libraries:
 
ARBase.sll Alejandro Reimondo base components SLL 
ARPatchs.sll Patches and bug fixes
ARAddins.sll SelfDefinedStructures support
ARMisc.sll  Misc. OS Support
PictBase.sll Image Framework

Installation

Ensure the libraries above are loaded in the VS/VSE library directory or a directory that appears in the Windows PATH statement. To load all required libraries evaluate

#('ARBase' 'ARPatchs' 'ARAddIns' 'ARMisc' 'PictBase' 'LibTiff')   do:[:lib|SmalltalkLibraryBinder bindTo:lib].

Examples

Evaluate the following expressions to demonstrate rendering an image with a transparent background.

"Load an image file and display at screen origin."
image := TIFFImage fromUser.
image displayWith: Display pen.

"saving image file"
image saveAs: 'example.tif'.

"Test to display the receiver image many times"
(Time millisecondsToRun: [ "using LibTiff"
      1 to: 1000 do: [:i| image displayAt: i @ 0 with: Display pen ] ]) / 1000.0.

Open 'LibTiff Doit.txt' in a workspace to evaluate additional expressions. Note that it you evaluate

TIFFImage fromUser

this brings up a warning dialog if 16millzw.tif is chosen. The dialog reads "invalid TIFF directory; tags are not sorted in ascending order". This is because16millzw.tif has been saved in a non-standard way. The library will notify the user when a non-standard image has been read.

Additional info

Some programs write TIFF files in a non-standard way. If the library reads such a TIFF file it will warn of this kind of bug in the file although the image will normally appear valid. When you save the image the bug will be corrected. The warning notification function can be set (with a callback).

Contact

Alejandro F. Reimondo
Amenabar 3476 Piso: 2 Dto: B.
Ciudad de Buenos Aires.
Argentina.
Tel: (54)-1-703-5586.
aleReimondo@sugarWeb.com
http://www.sugarweb.com


Links to:
The ObjectShare web site
VisualSmalltalk Product Support
ObjectShare's Online Documentation Site