Tesseract
3.02
|
Go to the source code of this file.
Classes | |
struct | TIFFENTRY |
Defines | |
#define | INTEL 0x4949 |
#define | MOTO 0x4d4d |
#define | ENTRIES 19 |
#define | START 8 |
Functions | |
int | CountTiffPages (FILE *fp) |
#define ENTRIES 19 |
Definition at line 64 of file imgtiff.cpp.
#define INTEL 0x4949 |
Definition at line 36 of file imgtiff.cpp.
#define MOTO 0x4d4d |
Definition at line 37 of file imgtiff.cpp.
#define START 8 |
Definition at line 65 of file imgtiff.cpp.
int CountTiffPages | ( | FILE * | fp | ) |
Definition at line 80 of file imgtiff.cpp.
{ if (fp == NULL) return 0; // Read header inT16 filetype = 0; if (fread(&filetype, sizeof(filetype), 1, fp) != 1 || (filetype != INTEL && filetype != MOTO)) { return 0; } fseek(fp, 4L, SEEK_SET); int npages = 0; do { inT32 start; // Start of tiff directory. if (fread(&start, sizeof(start), 1, fp) != 1) { return npages; } if (filetype != __NATIVE__) ReverseN(&start, sizeof(start)); if (start <= 0) { return npages; } fseek(fp, start, SEEK_SET); inT16 entries; // No of tiff entries. if (fread(&entries, sizeof(entries), 1, fp) != 1) { return npages; } if (filetype != __NATIVE__) ReverseN(&entries, sizeof(entries)); // Skip the tags and get to the next start. fseek(fp, entries * sizeof(TIFFENTRY), SEEK_CUR); ++npages; } while (1); return 0; }