stuff-from-scratch/test/image/TestPngWriter.cpp
2022-11-24 09:05:39 +00:00

38 lines
891 B
C++

#include "Image.h"
#include "PngWriter.h"
#include "File.h"
#include "BitStream.h"
#include "ImagePrimitives.h"
#include <iostream>
int main()
{
unsigned width = 20;
unsigned height = 20;
unsigned numChannels = 3;
auto image = Image<unsigned char>::Create(width, height);
image->setNumChannels(numChannels);
std::vector<unsigned char> data(image->getBytesPerRow()*height, 0);
ImagePrimitives::drawAlternatingStrips(data, width, height, numChannels, image->getBytesPerRow());
image->setData(data);
PngWriter writer;
writer.setPath("test.png");
writer.write(image);
File test_file("test.png");
test_file.SetAccessMode(File::AccessMode::Read);
test_file.Open(true);
while(auto byte = test_file.readNextByte())
{
std::cout << static_cast<unsigned>(*byte) << std::endl;
}
test_file.Close();
return 0;
}