0

FreeImage にファイルを読み込もうとして.pngいますが、幅と高さが常にゼロです。.DDS

#include <stdio.h>
#include<stdlib.h>

#include <FreeImage.h>

int main(void){
  const char* path = "Signal.png";
  printf("Loading image %s\n", path);
  FIBITMAP* image = FreeImage_Load(FreeImage_GetFileType(path), path, 0);
  unsigned int w = FreeImage_GetWidth(image);
  unsigned int h = FreeImage_GetHeight(image);
  printf("Width: %u Height: %u\n", w, h);

}

出力:

Loading image Signal.png
Width: 0 Height: 0
4

2 に答える 2

0

freeimage が FreeImage_GetFileType から FREE_IMAGE_FORMAT を読み取ることができない場合があります。

そのため、fif の有効性を確認し、fif == FIF_UNKNOWN の場合は FreeImage_GetFIFFromFilename を使用することをお勧めします

于 2015-09-21T17:26:16.200 に答える
0

への呼び出しがない可能性がありますFreeImage_Initialise(DLL を使用している場合を除く)。

于 2014-03-06T23:39:58.210 に答える