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
January 2005

Previous Thread
Next Thread

Previous by Thread
Next by Thread

Previous by Date
Next by Date

Contact

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



Valid HTML 4.01!



Thread

2005.01.23 16:43 "LibTiffDelphi", by <michel.salvagniac@free.fr>
2005.01.24 01:17 "Re: LibTiffDelphi", by <sherlog@t-online.de>
2005.02.08 16:43 "Re: LibTiffDelphi", by Joris Van Damme

2005.01.23 16:43 "LibTiffDelphi", by <michel.salvagniac@free.fr>

Hello,
I use this program:
http://homepages.borland.com/efg2lab/ImageProcessing/pf1bit.htm
to test LibTiffDelphi.
I've dropped a button on the form and added this code:

procedure TFormPf1bit.Button2Click(Sender: TObject);
var
imgtif:PTIFF;
x,y,hauteur,largeur:integer;
imgdata: pByteArray;
taille:integer;
begin
      hauteur := ImageBits.Picture.Bitmap.Height;
      largeur := ImageBits.Picture.Bitmap.Width;

      for y :=0 to hauteur - 1 do
        begin
        imgdata:= ImageBits.Picture.Bitmap.Scanline[y];
        end;

imgtif:=TIFFOpen('output.tif', 'w') ;
 TIFFSetField(imgtif, TIFFTAG_IMAGEWIDTH, largeur);
  TIFFSetField(imgtif, TIFFTAG_IMAGELENGTH, hauteur);
  TIFFSetField(imgtif, TIFFTAG_BITSPERSAMPLE, 1);
  TIFFSetField(imgtif, TIFFTAG_SAMPLESPERPIXEL, 1);
  TIFFSetField(imgtif, TIFFTAG_ROWSPERSTRIP, hauteur);

  TIFFSetField(imgtif, TIFFTAG_PHOTOMETRIC, PHOTOMETRIC_MINISWHITE);
  TIFFSetField(imgtif, TIFFTAG_FILLORDER, FILLORDER_MSB2LSB);
  TIFFSetField(imgtif, TIFFTAG_PLANARCONFIG, PLANARCONFIG_CONTIG);

  TIFFSetField(imgtif, TIFFTAG_XRESOLUTION, 150.0);
  TIFFSetField(imgtif, TIFFTAG_YRESOLUTION, 150.0);
  TIFFSetField(imgtif, TIFFTAG_RESOLUTIONUNIT, RESUNIT_INCH);
taille:=TIFFWriteRawStrip(imgtif, 0, imgdata, (largeur div 8) * hauteur);
Showmessage('taille écrite: '+ intToStr(taille));
TIFFClose(imgtif);
end;

The images are not created as expected, for example the "g" is inverted. The 
resolution is not taken
tiffinfo says :
TIFF Directory at offset 0x88
  Image Width: 32 Image Length: 32
  Resolution: 0, 0 pixels/inch
  Bits/Sample: 1
  Compression Scheme: None
  Photometric Interpretation: min-is-white
  FillOrder: msb-to-lsb
  Samples/Pixel: 1
  Rows/Strip: 32
  Planar Configuration: single image plane.

If i try
  TIFFSetField(imgtif, TIFFTAG_XRESOLUTION, 200.0);
  TIFFSetField(imgtif, TIFFTAG_YRESOLUTION, 200.0);

I get a "floating point error"

Thank you for the answer(s)
Michel 



-- 
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.7.1 - Release Date: 19/01/2005