67 Commits (29b36b3dea91a3df743b54bbe196f98eeb4ec071)

Author SHA1 Message Date
Sean Barrett 29b36b3dea rename filters, document them ago%!(EXTRA string=11 years)
Sean Barrett da2aa8f6b7 checkboard test to verify srgb ago%!(EXTRA string=11 years)
Sean Barrett a9778b8dbd tweak docs; fix compile error in UNUSED_PARAM stuff ago%!(EXTRA string=11 years)
Sean Barrett 7a4f1f4665 update with new tests for srgb conversion ago%!(EXTRA string=11 years)
Sean Barrett 16d68d14f8 fix stbir__linear_to_srgb_uchar: ago%!(EXTRA string=11 years)
Sean Barrett 30c7a981ec compile as C; ago%!(EXTRA string=11 years)
Jorge Rodriguez 953a637841 Use a carefully shaped trapezoid instead of a box filter to avoid jumps between pixel values. ago%!(EXTRA string=11 years)
Sean Barrett 4e580cf9ed fix compile ago%!(EXTRA string=11 years)
Jorge Rodriguez c9d67446d2 Reverse allocation routines parameter order so that the context is at the back. ago%!(EXTRA string=11 years)
Jorge Rodriguez 41e6aad693 Avoid repeated adds and ensure correct round-trip result. ago%!(EXTRA string=11 years)
Jorge Rodriguez 969ff7c850 Make sure calculate_memory matches with the allocations. Fix some errant asserts. ago%!(EXTRA string=11 years)
Jorge Rodriguez 4b69c0637e If alpha is zero then sneakily replace it with a very small nonzero so that the color data is preserved. ago%!(EXTRA string=11 years)
Jorge Rodriguez 084baed15c Replace premul test with better premul test that doesn't require visual inspection. ago%!(EXTRA string=11 years)
Jorge Rodriguez 497eab8339 Normalize downsample coefficients. ago%!(EXTRA string=11 years)
Jorge Rodriguez 43fbc1d5e3 Rearrange the algebra on two of the filters to avoid repeating decimals which cause precision loss. Use int32 to test filters because it's more accurate. ago%!(EXTRA string=11 years)
Jorge Rodriguez ca241daefa Use rounding to try to preserve the original value. Fix test case. ago%!(EXTRA string=11 years)
Jorge Rodriguez 118f28557e Tests to ensure images of a solid color stay the same solid color after resampling. ago%!(EXTRA string=11 years)
Jorge Rodriguez e6c47ec657 Fix kernel lookup for downsampling. ago%!(EXTRA string=11 years)
Jorge Rodriguez 8cc6a3abfc If there's no context we're using the simple API functions - fall back to malloc and free. ago%!(EXTRA string=11 years)
Sean Barrett 36db03f390 tighten bounds on filter normalization test ago%!(EXTRA string=11 years)
Sean Barrett 7f8ac35e42 check whether filter kernels are normalized ago%!(EXTRA string=11 years)
Sean Barrett 7da729bfce restore correct definition of box ago%!(EXTRA string=11 years)
Sean Barrett cd1fbacbb6 rename NEAREST to BOX ago%!(EXTRA string=11 years)
Jorge Rodriguez 586e84087c Correctly specify alpha channels. ago%!(EXTRA string=11 years)
Jorge Rodriguez 38ce5494bc Clarify some comments. Make stbir__resize_arbitrary an internal function. Update test cases to use actual API functions. ago%!(EXTRA string=11 years)
Sean Barrett 41555b5d53 update test cases to work on things other than barbara.png ago%!(EXTRA string=11 years)
Jorge Rodriguez fb059fcece Progress report. ago%!(EXTRA string=11 years)
Jorge Rodriguez 75bdd2da83 Fix malloc context and whitespace. ago%!(EXTRA string=11 years)
Sean Barrett aee30095c7 refactor internal interfaces to avoid passing things multiple times; ago%!(EXTRA string=11 years)
Sean Barrett 732fec68ee tweak new API, get it partly working ago%!(EXTRA string=11 years)
Sean Barrett 664d8961f5 new API partially in-use ago%!(EXTRA string=11 years)
Sean Barrett 2549d8156e in-progress refactoring ago%!(EXTRA string=11 years)
Sean Barrett 6ef563d089 rename to stb_image_resize.h ago%!(EXTRA string=11 years)
Sean Barrett eb0781fda0 add comments describing the purpose of the s,t-rectangle tests ago%!(EXTRA string=11 years)
Sean Barrett 9ba3dc1fc5 make resample tests work in VC6 ago%!(EXTRA string=11 years)
Jorge Rodriguez 1353909477 Allow user to force the alpha channel to be handled as a linear value even if the color channels are sRGB. ago%!(EXTRA string=11 years)
Jorge Rodriguez bbc340d481 Support different edge behavior on vertical and horizontal axis. ago%!(EXTRA string=11 years)
Jorge Rodriguez 6ae729d61a Four new tests of subpixel stuff. ago%!(EXTRA string=11 years)
Jorge Rodriguez 45fa6ec900 Update test cases for premul channel -1 meaning don't do any premul handling, fix another no-more-advanced. ago%!(EXTRA string=11 years)
Jorge Rodriguez e75ed1d381 Update test cases for no more advanced API. ago%!(EXTRA string=11 years)
Jorge Rodriguez d75488b0e8 Do the multiply inline, it should be a tad faster and not corrupt our data. ago%!(EXTRA string=11 years)
Jorge Rodriguez 13acfca829 I had the whole premultiply thing backwards. ago%!(EXTRA string=11 years)
Jorge Rodriguez 21c7c8f5d9 Another stab at the api, offering classes of functions for different common tasks. ago%!(EXTRA string=11 years)
Jorge Rodriguez 8063ea0952 Specify a channel as having premultiplied alpha and use it to un-premultiply all other channels before resampling. ago%!(EXTRA string=11 years)
Jorge Rodriguez daf325dc03 Sub pixel source area test cases. No problems. ago%!(EXTRA string=11 years)
Jorge Rodriguez aae1c7ca41 ZOOM AND ENHANCE! ago%!(EXTRA string=11 years)
Jorge Rodriguez 35cb95b803 Allow for specifying a sub-region of the source image to use. Downsampling only, currently. ago%!(EXTRA string=11 years)
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. ago%!(EXTRA string=11 years)
Jorge Rodriguez c5de2f3298 Test channels. ago%!(EXTRA string=11 years)
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. ago%!(EXTRA string=11 years)