§ Загрузка файла и использование

Загрузить шаблон loadpng.tar.gz
#include "imagepng.h"

// Главная работа с окном и данными
int main (int argc, char** args) {

    imagepng* Image = new imagepng("example.png");

    printf("size = %d x %d\n", Image->width, Image->height);

    for (int y = 0; y < Image->height; y++)
    for (int x = 0; x < Image->width; x++) {

        int32_t cl = Image->point(x, y);
        Image->pset(x, y, cl & 0xff00);
    }

    Image->save("snuff.png");

    delete Image;

    return 0;
};
Чтобы скомпилировать, потребуется опция -lpng и apt install libpng-dev

§ Makefile

COMPONENT=imagepng.o main.o
all: $(COMPONENT)
	g++ -O3 $(COMPONENT) -lSDL2 -lpng -Wall -o loadpng
	./loadpng
imagepng.o: imagepng.cc imagepng.h
	g++ -O3 -c imagepng.cc -o imagepng.o
main.o: main.cc imagepng.h
	g++ -O3 -c main.cc -o main.o
clean:
	rm -f main *.o