Не получить значение imagedepth в C используя libtiff - PullRequest
0 голосов
/ 29 февраля 2020

Я пытаюсь проанализировать стек tiff-файлов с помощью библиотеки libtiff5. Для этого сначала нужно прочитать imagelength, width и depth. Но для imagedepth я не получаю обратно никакого значения. Переменная a в моем коде (ниже) использовалась, чтобы проверить, возвращает ли функция какое-либо значение, но это не так.

Итак, мой вопрос : как я могу правильно прочитать параметр imagedepth.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <stdbool.h>
#include <stddef.h>
#include "tiffio.h"
#include "tiff.h"

int main()
{
  TIFF* tif = TIFFOpen("spots.tif", "r");
  int w, h, d;
  int a;
  printf("%d\n", d);
  TIFFGetField(tif, TIFFTAG_IMAGEWIDTH, &w);
  TIFFGetField(tif, TIFFTAG_IMAGELENGTH, &h);
  a = TIFFGetField(tif, TIFFTAG_IMAGEDEPTH, &d);

  printf("width = %d, length = %d, depth = %d\n",w, h, a );
  TIFFClose(tif);
  return 0;
}
...