mono / libgdiplus

C-based implementation of the GDI+ API
http://www.mono-project.com/
MIT License
329 stars 171 forks source link

Big-endian fix: Reading PNG files #700

Closed uweigand closed 3 years ago

uweigand commented 3 years ago

When reading PNG files, the result must match the Cairo format CAIRO_FORMAT_ARGB32. This stores the pixel data as a 32-bit quantity in native byte order.

Therefore, the PNG decoder must place the bytes in A,R,G,B order on a big-endian system (as opposed to B,G,R,A on a little-endian system). Set up the libpng flags accordingly.

uweigand commented 3 years ago

Ping?