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
March 2011

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

2011.03.26 11:15 "[PATCH] setting other directories in tiffset", by <jef@norbit.de>
2011.03.26 12:07 "Re: [PATCH] setting other directories in tiffset", by Frank Warmerdam

2011.03.26 11:15 "[PATCH] setting other directories in tiffset", by <jef@norbit.de>

Hi there,

the attached patch adds options to modify other directories than the first with
tiffset.


Jürgen

-- 
Jürgen E. Fischer         norBIT GmbH               Tel. +49-4931-918175-20
Dipl.-Inf. (FH)           Rheinstraße 13            Fax. +49-4931-918175-50
Software Engineer         D-26506 Norden               http://www.norbit.de

-- 
norBIT Gesellschaft fuer Unternehmensberatung und Informationssysteme mbH
Rheinstrasse 13, 26506 Norden
GF: Jelto Buurman, HR: Amtsgericht Emden, HRB 5502

? tiffset-tiff-4.0.0beta6.diff
? tiffset.diff
Index: man/tiffset.1
===================================================================
RCS file: /cvs/maptools/cvsroot/libtiff/man/tiffset.1,v
retrieving revision 1.4
diff -u -r1.4 tiffset.1
--- man/tiffset.1	3 Dec 2009 19:27:55 -0000	1.4
+++ man/tiffset.1	26 Mar 2011 11:12:25 -0000
@@ -41,9 +41,15 @@
 header to a specified value.
 .SH OPTIONS
 .TP
+.BI \-d " dirnumber"
+change the current directory (starting at 0).
+.TP
 .BI \-s " tagnumber" "\fR [\fP" " count" "\fR ]\fP" " value ..."
 Set the value of the named tag to the value or values specified.
 .TP
+.BI \-sd " diroffset"
+change the current directory by offset.
+.TP
 .BI \-sf " tagnumber filename"
 Set the value of the tag to the contents of filename.  This option is
 supported for ASCII tags only.
@@ -72,6 +78,14 @@
 tiffset \-s 283 300.0 a.tif
 .fi
 .RE
+.PP
+Set the photometric interpretation of the third page of a.tif to
+min-is-black (ie. inverts it):
+.RS
+.nf
+tiffset -d 2 -s 262 1 a.tif
+.fi
+.RE
 .SH "SEE ALSO"
 .BR tiffdump (1),
 .BR tiffinfo (1),
Index: tools/tiffset.c
===================================================================
RCS file: /cvs/maptools/cvsroot/libtiff/tools/tiffset.c,v
retrieving revision 1.15
diff -u -r1.15 tiffset.c
--- tools/tiffset.c	6 Jul 2010 14:30:38 -0000	1.15
+++ tools/tiffset.c	26 Mar 2011 11:12:25 -0000
@@ -41,6 +41,8 @@
 "usage: tiffset [options] filename",
 "where options are:",
 " -s <tagname> [count] <value>...   set the tag value",
+" -d <dirno> set the directory",
+" -sd <diroff> set the subdirectory",
 " -sf <tagname> <filename>  read the tag value from file (for ASCII tags only)",
 NULL
 };
@@ -86,6 +88,24 @@
         return 2;
 
     for( arg_index = 1; arg_index < argc-1; arg_index++ ) {
+	if (strcmp(argv[arg_index],"-d") == 0 && arg_index < argc-2) {
+	    arg_index++;
+	    if( TIFFSetDirectory(tiff, atoi(argv[arg_index]) ) != 1 )
+            {
+               fprintf( stderr, "Failed to set directory=%s\n", argv[arg_index] );
+               return 6;
+            }
+	    arg_index++;
+	}
+	if (strcmp(argv[arg_index],"-sd") == 0 && arg_index < argc-2) {
+	    arg_index++;
+	    if( TIFFSetSubDirectory(tiff, atoi(argv[arg_index]) ) != 1 )
+            {
+               fprintf( stderr, "Failed to set sub directory=%s\n", argv[arg_index] );
+               return 7;
+            }
+	    arg_index++;
+	}
         if (strcmp(argv[arg_index],"-s") == 0 && arg_index < argc-3) {
             const TIFFField *fip;
             const char *tagname;