1
我有一個內存中的數組,包含一個位圖圖像,具有已知的大小,深度,調色板等。我想使用這個數組來創建圖像的GraphicsMagick表示,以使我能夠使用它的BMP頭文件來編寫這個文件,並且可以用其他軟件查看它。到目前爲止,我有類似的東西(只是重要的一行 - 如果需要,我可以添加整個程序)。首先,變量:如何使用GraphicsMagick在存儲器流中創建位圖的BMP標頭?
FILE *fp_out;
ExceptionInfo exception;
Image *image;
ImageInfo *image_info;
char buffer[BUFFER_SIZE] = {0};
const int w = WIDTH, h = HEIGHT;
及相關代碼:
image = ConstituteImage(w, h, "RGB", CharPixel, buffer, &exception);
image_info = CloneImageInfo((ImageInfo *) NULL);
fp_out = fopen("image.bmp", "wb");
image_info->file = fp_out;
WriteImage(image_info, image);
的image.bmp文件被創建,但BMP頭是不存在與第一字節該位圖包含像這樣:
id=ImageMagick version=1.0
class=DirectClass matte=False
columns=74 rows=75 depth=8
<binary data of my image>
我在做什麼錯?我應該關注哪些文檔?這是非常令人難以置信的。