FreeImage: конвертация BMP -> JPG
Добавлено: 02 Февраль 2012, 10:03
По условию задачи мне надо сохранить bmp-файл как jpg. Вот код:
Код вроде рабочий, конвертит bmp во всё что угодно (png, tiff...). Во всё, кроме jpg! FreeImage_Save('image.jpg') возвращает 0, файл image.jpg создаётся, но он пустой. Никто не сталкивался?
Код: Выделить всё
BmpClass.SaveAs PROCEDURE(STRING pFile)
fif FREE_IMAGE_FORMAT
dib LPFIBITMAP
saveAsFile CSTRING(256)
bOK BOOL(FALSE)
CODE
saveAsFile = PATH() & '\' & CLIP(pFile)
fif = FreeImage_GetFIFFromFilename(self.FileName);
dib = FreeImage_Load(fif, self.FileName)
IF dib = 0
self.ErrorHandler('Failed loading')
RETURN
END
IF FreeImage_FIFSupportsWriting(fif) AND FreeImage_FIFSupportsExportBPP(fif, FreeImage_GetBPP(dib))
fif = FreeImage_GetFIFFromFilename(saveAsFile);
bOK = FreeImage_Save(fif, dib, saveAsFile)
IF NOT bOK
message('Failed saving')
self.ErrorHandler('Failed saving')
END
FreeImage_Unload(dib)
ELSE
STOP('error')
END