MXVK Vulkan Framework 0.24.0
C++20 Vulkan rendering framework for practical 2D and 3D application development with SDL3.
Loading...
Searching...
No Matches
mxvk_png.cpp File Reference

Implementation of mxvk PNG loading and saving utilities. More...

#include "mxvk/mxvk_png.hpp"
#include <SDL3/SDL.h>
#include <algorithm>
#include <cctype>
#include <cmath>
#include <cstdint>
#include <cstdio>
#include <iostream>
#include <limits>
#include <memory>
#include <png.h>
#include <ranges>
#include <string>
#include <vector>

Go to the source code of this file.

Namespaces

namespace  mxvk
 Utilities for loading and saving PNG images.

Functions

bool mxvk::HasPngExtension (const char *file)
SDL_Surface * mxvk::LoadPNG (const char *file)
 Load a PNG file into an SDL_Surface.
bool mxvk::SavePNG (SDL_Texture *texture, SDL_Renderer *renderer, const char *filename)
 Save an SDL_Texture to a PNG file.
bool mxvk::SavePNG_RGBA (const char *filename, void *buffer, int w, int h)
 Save a raw RGBA pixel buffer to a PNG file.
bool mxvk::SavePNG_RGBA16 (const char *filename, const void *buffer, int w, int h)
 Save a raw 16-bit RGBA pixel buffer to a PNG file.
bool mxvk::SaveRawBytes (const char *filename, const void *buffer, size_t w, size_t h, size_t bpp)
 Save raw data to a file.
bool mxvk::WriteRgbaPng (const char *filename, const std::uint8_t *pixels, const int width, const int height, const int pitch, const int bit_depth, const bool swap_16bit_endianness)

Detailed Description

Implementation of mxvk PNG loading and saving utilities.

Definition in file mxvk_png.cpp.