Commit Graph

64 Commits

Author SHA1 Message Date
Jorge Rodriguez
d75488b0e8 Do the multiply inline, it should be a tad faster and not corrupt our data. 2014-07-31 19:00:48 -07:00
Jorge Rodriguez
13acfca829 I had the whole premultiply thing backwards. 2014-07-31 18:46:00 -07:00
Jorge Rodriguez
21c7c8f5d9 Another stab at the api, offering classes of functions for different common tasks. 2014-07-31 18:04:57 -07:00
Jorge Rodriguez
8063ea0952 Specify a channel as having premultiplied alpha and use it to un-premultiply all other channels before resampling. 2014-07-31 17:20:00 -07:00
Jorge Rodriguez
daf325dc03 Sub pixel source area test cases. No problems. 2014-07-31 16:31:45 -07:00
Jorge Rodriguez
aae1c7ca41 ZOOM AND ENHANCE! 2014-07-31 15:16:36 -07:00
Jorge Rodriguez
35cb95b803 Allow for specifying a sub-region of the source image to use. Downsampling only, currently. 2014-07-31 00:39:33 -07:00
Jorge Rodriguez
fdc979e48b Some minor ports for Linux. No idea how it worked at all in Windows with STB_RESIZE_IMPLEMENTATION instead of STB_RESAMPLE_IMPLEMENTATION. 2014-07-30 17:30:25 -07:00
Jorge Rodriguez
c5de2f3298 Test channels. 2014-07-30 09:42:12 -07:00
Jorge Rodriguez
985ac75251 When doing a perfect po2 nearest neighbor downsample don't allow -0.5 and 0.5 to both contribute to a texel or you'll get a double tap. 2014-07-30 09:27:42 -07:00
Jorge Rodriguez
c2449acc3e Tests for edge behavior 2014-07-30 09:14:38 -07:00
Jorge Rodriguez
59cb71ea18 Fix float conversion. 2014-07-30 08:47:55 -07:00
Jorge Rodriguez
6625259959 Try to keep integer precision by briefly casting to double while decoding and encoding. 2014-07-30 01:18:23 -07:00
Jorge Rodriguez
11897fbf96 More fixing shorts. 2014-07-30 00:34:25 -07:00
Jorge Rodriguez
1fcbe0daaf Fix shorts. Add test cases for shorts. 2014-07-30 00:16:13 -07:00
Jorge Rodriguez
7ead9a748d Fix. Ring buffers are a height value. 2014-07-29 23:09:41 -07:00
Jorge Rodriguez
043fa28c11 Same deal with height. 2014-07-29 23:02:56 -07:00
Jorge Rodriguez
ebe0473d8b Add a test suite to do a bunch of different resizes to find problems. One problem found was an incorrect calculation of texel support how many margin texels needed when downsampling. When downsampling we need to spread out the support of each contributing texel, so to compensate you need more margin texels. 2014-07-29 22:50:06 -07:00
Jorge Rodriguez
68f93b72d5 Update documentation and add helper functions. 2014-07-29 20:18:28 -07:00
Jorge Rodriguez
5b40906271 My perf testing code. 2014-07-29 17:44:45 -07:00
Jorge Rodriguez
6c8cac0a66 Support for sRGB color space. 2014-07-26 23:44:45 -07:00
Jorge Rodriguez
01fb58d6b4 Add a bicubic filter. 2014-07-26 13:07:04 -07:00
Jorge Rodriguez
7abd4ccf34 Support for filters with larger support. Initial support for edge behavior. 2014-07-26 11:51:02 -07:00
Jorge Rodriguez
297266b27b Starting to implement downsampling. 2014-07-24 19:10:45 -07:00
Jorge Rodriguez
55c5f0b3a0 Beginning of a more sophisticated resample algorithm, starting with calculating filter contributions per scan line. 2014-07-23 22:17:56 -07:00
Jorge Rodriguez
0155bd3ab6 We are going to support SRGB. 2014-07-21 19:51:11 -07:00
Jorge Rodriguez
ba861fa493 Allow specifying a stride. 2014-07-21 18:01:05 -07:00
Jorge Rodriguez
06b7b00696 It does nothing now but I want to support edge behavior in the future. 2014-07-21 16:14:32 -07:00
Jorge Rodriguez
d54e74092e stb_resample initial implementation 2014-07-21 00:16:03 -07:00
Sean Barrett
e454b82a78 remove tabs 2014-07-07 07:46:39 -07:00
Sean Barrett
816f31e9bc fixes and tests 2014-07-07 04:54:52 -07:00
Sean Barrett
4b590c0a62 first pass at stb-izing complete, now need to debug 2014-07-04 09:34:57 -07:00
Sean Barrett
88c99e47fb initial commit 2014-07-04 08:06:36 -07:00
Sean Barrett
b000f920ac update stb_image version number 2014-06-22 11:21:11 -07:00
Sean Barrett
2452f0002f Merge branch 'textedit' 2014-06-19 20:21:32 -07:00
Sean Barrett
d4d046be09 update version number 2014-06-19 20:21:08 -07:00
Sean Barrett
44c37c51c0 add testing project for stb_c_lexer.h 2014-06-19 19:56:11 -07:00
Sean Barrett
f5dfba0b8b Update stb_image test code to test loading with all channel counts (including 0),
to avoid missing bugs like the recent TGA bug in the future. Doesn't check the
*results*, but tests that it doesn't crash or fail.
2014-06-15 13:17:04 -07:00
Sean Barrett
2684499fce tweak textedit sample fix 2014-06-06 23:59:38 -07:00
Scott Graham
885b1b7ded fix textedit_sample a bit 2014-06-06 23:08:51 -07:00
Sean Barrett
c28ffbbf0d Change byte casts in stb_image.h that intentionally truncate to do so explicitly for MSVC runtime check compatibility 2014-06-06 10:15:30 -07:00
Sean Barrett
f54bc09e4f make header files visible in file list 2014-06-04 17:57:42 -07:00
Sean Barrett
b96edc012c Merge branch 'headerify'
Conflicts:
	tests/stretch_test.dsp
2014-06-03 08:51:40 -07:00
Sean Barrett
334cec8d8c Fix handling of iphone-procesed image to not accidentally appear corrupt (instead they just load wrong).
Add a proper testing path to image test
2014-06-03 08:45:34 -07:00
Sean Barrett
a57dfc50fc fix bugs in new stretchy buffer code, add stretchy buffer tests 2014-06-01 08:01:01 -07:00
Sean Barrett
037491ca45 Merge branch 'working' 2014-05-31 23:43:47 -07:00
Sean Barrett
4e8cade2cf move image_test into main tests directory 2014-05-31 13:46:13 -07:00
Sean Barrett
2bf4326350 cleanup runtime output/error detection of stb.h unit tests 2014-05-31 13:39:00 -07:00
Sean Barrett
666596ed89 untested rewrite of stretchy_buffer relying on implicit cast from void* 2014-05-31 13:00:39 -07:00
Sean Barrett
a7691e1510 check-in missing project file updates for stb_image.h usage 2014-05-31 06:31:27 -07:00