1
我試圖從C
中的libpng
可以是灰度(8bits * 1componant)或rgb(8bits * 3componants)的圖像寫入PNG文件。用libpng在灰度或RGB中寫入PNG
我閱讀手冊,並寫了一段代碼,不工作: -/
/* writing the image */
png_byte *row_pointers[img->height];
int h;
for (h = 0 ; h < img->height ; h++)
{
row_pointers[h] = img->data+h*img->width*image_components;
}
png_write_image(png_ptr, row_pointers);
沒有寫入形象,我不明白爲什麼。
img.data
指向圖像DATAS(RGB格式的情況下,隔行掃描)
當我使用它,除了空的PNG文件,我有這樣的錯誤'libpng的錯誤:沒有寫進file' – Jav
IDATs如果你直接使用: png_write_png(png_ptr,info_ptr,PNG_TRANSFORM_IDENTITY,NULL); 取而代之?它適用於我,並且在使用png_write_image和png_write_end時能夠複製您的錯誤。不過我也用的例子(如創建info_ptr內容,png_set_IHDR,...)之前運行等功能。 – Emilien