यदि आप libpng/libjpeg निर्भरताओं के बिना न्यूनतम दृष्टिकोण के लिए जाने का निर्णय लेते हैं, तो मैं stb_image
और stb_image_write
का उपयोग करने का सुझाव देता हूं, here मिला।
यह के रूप में यह हो जाता है के रूप में आसान है, तुम सिर्फ हेडर फाइल stb_image.h
और stb_image_write.h
अपने फ़ोल्डर में डालना होगा।
यहाँ कोड है कि आप छवियों पढ़ने की जरूरत है:
#include <stdint.h>
#define STB_IMAGE_IMPLEMENTATION
#include "stb_image.h"
int main() {
int width, height, bpp;
uint8_t* rgb_image = stbi_load("image.png", &width, &height, &bpp, 3);
stbi_image_free(rgb_image);
return 0;
}
और यहाँ एक छवि लिखने के लिए कोड है:
g++ main.cpp
:
#include <stdint.h>
#define STB_IMAGE_WRITE_IMPLEMENTATION
#include "stb_image_write.h"
#define CHANNEL_NUM 3
int main() {
int width = 800;
int height = 800;
uint8_t* rgb_image;
rgb_image = malloc(width*height*CHANNEL_NUM);
// Write your code to populate rgb_image here
stbi_write_png("image.png", width, height, CHANNEL_NUM, rgb_image, width*CHANNEL_NUM);
return 0;
}
आप झंडे या निर्भरता के बिना संकलन कर सकते हैं
अन्य हल्के विकल्पों में शामिल हैं:
स्रोत
2016-11-25 22:31:39
libjpeg के लिए दस्तावेज़ है (http://www.ijg.org/) या जो कुछ भी देशी एपीआई आप अपर्याप्त है लिखने के लिए ? – greyfade
आपके द्वारा पूछे गए तीन प्रश्नों के लिए सही उत्तर चुनना न भूलें। – mwcz