Daniel Gibson
be21113512
stb_image_write.h: Allow setting custom zlib compress function for PNG
...
The builtin stbi_zlib_compress does not compress as well as zlib or
miniz (which is not too surprising as it's <200 LOC), thus PNGs created
by stb_image_write are about 20-50% bigger than PNGs compressed with
libpng.
This change lets the user supply a custom deflate/zlib-style compress
function, which improves compression a lot. This was requested in #113 .
Example for zlib:
#include <zlib.h>
unsigned char* compress_for_stbiw(unsigned char *data, int data_len,
int *out_len, int quality)
{
uLongf bufSize = compressBound(data_len);
// note that buf will be free'd by stb_image_write.h
// with STBIW_FREE() (plain free() by default)
unsigned char* buf = malloc(bufSize);
if(buf == NULL) return NULL;
if(compress2(buf, &bufSize, data, data_len, quality) != Z_OK)
{
free(buf);
return NULL;
}
*out_len = bufSize;
return buf;
}
#define STBIW_ZLIB_COMPRESS compress_for_stbiw
#define STB_IMAGE_WRITE_IMPLEMENTATION
#include "stb_image_write.h"
// ...
2017-07-04 19:34:31 +02:00
Daniel Gibson
e6bbecd3a9
stb_image_write.h: Set PNG compress lvl via stbi_write_png_level
...
This allows the user to change the deflate/zlib compress level used for
PNG compression by changing a global variable.
2017-07-04 18:07:33 +02:00
Daniel Gibson
f0baa0c287
stb_image_write.h: Fix compilation in C++11 mode
...
clang says:
error: non-constant-expression cannot be narrowed from type 'int'
to 'unsigned char' in initializer list [-Wc++11-narrowing]
so I explicitly cast affected stuff to unsigned char.
2017-07-04 16:55:50 +02:00
Nathan Reed
cbca86de65
Add myself to contributors list
2017-05-11 22:59:43 -07:00
Nathan Reed
de080e6d0b
Fix warning about unreachable code
2017-05-11 22:53:03 -07:00
Nathan Reed
fb524e6768
Fix warning about context parameter being unused when STBIR_MALLOC and STBIR_FREE have their default definitions.
2017-05-11 22:51:19 -07:00
Nathan Reed
76a1a1c408
Fix variable-shadowing warnings
2017-05-11 22:49:19 -07:00
Nathan Reed
7091cb6ed6
Fix integer conversion warning
2017-05-11 22:48:46 -07:00
PopPoLoPoPpo
9bcda8bb1c
Add stbi_load_16() variants to load from memory or callbacks
2017-05-05 00:39:08 +02:00
Sean Barrett
84e42c2e8d
fix stbi_shiftsigned to be shifting a value that's unsigned
2017-04-28 23:35:37 -07:00
ppiastucki
8a55e1e5a5
Add support for BC4
2017-04-26 22:32:37 +02:00
Jean-Sebastien Bevilacqua
d8796f05bf
Robustify stbi__sse2_available in stb_image.h
...
Function `stbi__sse2_available` takes no argument,
we should be explicit by passing `void` as argument.
It will remove warnings from 'some' compilers.
2017-04-25 21:02:48 +02:00
Infatum
4963448726
fix: Build on MinGW32
2017-04-20 15:49:36 +03:00
Tim Wright
13942348e0
Fixing void * compile error for C++
2017-04-18 19:54:57 -06:00
Kevin Schmidt
50e6be0de6
Edit contributor list.
2017-04-18 18:31:15 +02:00
Kevin Schmidt
9b3358fec1
Add feature to replace abs/fabs and memset with your own.
2017-04-18 18:28:02 +02:00
Kevin Schmidt
96e1f0474c
Edit contributor list.
2017-04-18 17:42:41 +02:00
Kevin Schmidt
97ae5fb3db
Edit contributor list.
2017-04-18 17:36:48 +02:00
Kevin Schmidt
1dfdf5558d
Fix STBI_NO_STDIO.
2017-04-18 16:17:27 +02:00
Kevin Schmidt
dda7d72841
Add STB_DXT_STATIC option.
2017-04-18 16:17:18 +02:00
Cort
f3d8e52ddc
stb_truetype: fontdata can be const in stbtt_PackFontRange[s]()
2017-03-28 21:36:54 -07:00
Sean Barrett
c7110588a4
update README with info about SSE2 on GCC
2017-03-19 17:51:43 -07:00
Sean Barrett
e88fff69bf
Merge branch 'working'
2017-03-18 18:55:43 -07:00
Sean Barrett
f1417efd36
update README
2017-03-18 18:55:29 -07:00
Sean Barrett
2549ffcd82
Merge branch 'working'
2017-03-18 18:55:20 -07:00
Sean Barrett
c0539b4ea5
version; tweak docs
2017-03-18 18:55:13 -07:00
Sean Barrett
bc58f37f06
Merge branch 'stbir_warnings' of https://github.com/BSVino/stb into working
2017-03-18 18:50:25 -07:00
Sean Barrett
d459039f8b
Merge branch 'working'
2017-03-18 18:50:20 -07:00
Sean Barrett
d795785f3d
docs
2017-03-18 18:50:06 -07:00
Sean Barrett
b577583fb9
Merge branch 'working'
2017-03-18 18:48:40 -07:00
Sean Barrett
56a61e178f
reorganize contributor list (removing one redundant name and adding one new one as well)
2017-03-18 18:48:09 -07:00
Sean Barrett
c79fa78ee8
tweaks to previous merge
2017-03-18 18:42:54 -07:00
Sean Barrett
351489803f
Merge branch 'phprus-patch-1' of https://github.com/phprus/stb into working
2017-03-18 18:41:15 -07:00
Sean Barrett
37d767c0fc
Merge branch 'working'
2017-03-18 18:39:23 -07:00
Sean Barrett
2de9961443
docs
2017-03-18 18:39:06 -07:00
Sean Barrett
90e8658d80
Merge branch 'fix_stbimage_pnm_load' of https://github.com/rygorous/stb into working
2017-03-18 18:37:20 -07:00
Sean Barrett
22ace34bf8
Merge branch 'working'
2017-03-18 18:35:51 -07:00
Sean Barrett
d9e7c55bd7
minor docs for last merge
2017-03-18 18:35:30 -07:00
Sean Barrett
97c58e3891
Merge branch 'fix_stbimage_gcc_sse2' of https://github.com/rygorous/stb into working
2017-03-18 18:34:17 -07:00
Sean Barrett
eaed281d9d
Merge branch 'working'
2017-03-18 18:33:20 -07:00
Sean Barrett
24fa816116
merge https://github.com/nothings/stb/pull/427 but I messed up the merge
...
so you don't get the automatic info you normally do
2017-03-18 18:32:35 -07:00
Sean Barrett
32344103df
Merge branch 'working'
2017-03-18 18:17:49 -07:00
Sean Barrett
6d60610348
tweaks to previous merge
2017-03-18 18:15:41 -07:00
Sean Barrett
00c2545510
Merge branch 'rgb-detect' of https://github.com/jeremysawicki/stb into working
2017-03-18 18:08:00 -07:00
Sean Barrett
8fe48099cc
add comment for next fix prematurely
2017-03-18 18:07:51 -07:00
Sean Barrett
690ad3f9dd
Merge branch 'working'
2017-03-18 18:03:47 -07:00
Sean Barrett
5bbe1d8c2a
fixes to that PR
2017-03-18 18:03:34 -07:00
Sean Barrett
55112399e6
Merge branch 'master' of https://github.com/uTox/stb into working
2017-03-18 17:47:54 -07:00
Sean Barrett
30a34d6168
Merge branch 'working'
2017-03-18 17:46:07 -07:00
Sean Barrett
be6d13cd6d
fix bug in png decoding with 1,2,4-bpp images using filter that samples previous line
2017-03-18 10:54:22 -07:00