resize images larger/smaller with good quality
stb
single-file public domain (or MIT licensed) libraries for C/C++
Noteworthy:
Most libraries by stb, except: stb_dxt by Fabian "ryg" Giesen, stb_image_resize
by Jorge L. "VinoBS" Rodriguez, and stb_sprintf by Jeff Roberts.
| library |
lastest version |
category |
LoC |
description |
| stb_vorbis.c |
1.20 |
audio |
5563 |
decode ogg vorbis files from file/memory to float/16-bit signed output |
| stb_image.h |
2.26 |
graphics |
7762 |
image loading/decoding from file/memory: JPG, PNG, TGA, BMP, PSD, GIF, HDR, PIC |
| stb_truetype.h |
1.24 |
graphics |
5011 |
parse, decode, and rasterize characters from truetype fonts |
| stb_image_write.h |
1.15 |
graphics |
1690 |
image writing to disk: PNG, TGA, BMP |
| stb_image_resize.h |
0.96 |
graphics |
2631 |
resize images larger/smaller with good quality |
| stb_rect_pack.h |
1.00 |
graphics |
628 |
simple 2D rectangle packer with decent quality |
| stb_ds.h |
0.65 |
utility |
1880 |
typesafe dynamic array and hash tables for C, will compile in C++ |
| stb_sprintf.h |
1.09 |
utility |
1879 |
fast sprintf, snprintf for C/C++ |
| stretchy_buffer.h |
1.04 |
utility |
263 |
typesafe dynamic array for C (i.e. approximation to vector<>), doesn't compile as C++ |
| stb_textedit.h |
1.13 |
user interface |
1404 |
guts of a text editor for games etc implementing them from scratch |
| stb_voxel_render.h |
0.89 |
3D graphics |
3807 |
Minecraft-esque voxel rendering "engine" with many more features |
| stb_dxt.h |
1.10 |
3D graphics |
753 |
Fabian "ryg" Giesen's real-time DXT compressor |
| stb_perlin.h |
0.5 |
3D graphics |
428 |
revised Perlin noise (3D input, 1D output) |
| stb_easy_font.h |
1.1 |
3D graphics |
305 |
quick-and-dirty easy-to-deploy bitmap font for printing frame rate, etc |
| stb_tilemap_editor.h |
0.41 |
game dev |
4161 |
embeddable tilemap editor |
| stb_herringbone_wa... |
0.7 |
game dev |
1221 |
herringbone Wang tile map generator |
| stb_c_lexer.h |
0.11 |
parsing |
966 |
simplify writing parsers for C-like languages |
| stb_divide.h |
0.93 |
math |
430 |
more useful 32-bit modulus e.g. "euclidean divide" |
| stb_connected_comp... |
0.96 |
misc |
1049 |
incrementally compute reachability on grids |
| stb.h |
2.37 |
misc |
14454 |
helper functions for C, mostly redundant in C++; basically author's personal stuff |
| stb_leakcheck.h |
0.6 |
misc |
194 |
quick-and-dirty malloc/free leak-checking |
| stb_include.h |
0.02 |
misc |
295 |
implement recursive #include support, particularly for GLSL |
Reviews
Builds
| toolchain |
public-0.18.1 |
| target |
x86_64-apple-darwin23.5.0 |
| tgt config |
macos_14-gcc_14_homebrew-static_O3 |
| timestamp |
2026-05-31 06:40:02 UTC (01 04:05:40 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-apple-darwin23.5.0 |
| tgt config |
macos_14-gcc_14_homebrew-O3 |
| timestamp |
2026-05-31 06:39:00 UTC (01 04:06:41 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-apple-darwin23.5.0 |
| tgt config |
macos_14-gcc_14_homebrew |
| timestamp |
2026-05-31 06:37:46 UTC (01 04:07:55 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-clang_22_libc++-static_O3 |
| timestamp |
2026-05-31 04:30:51 UTC (01 06:14:50 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-clang_22_libc++-O3 |
| timestamp |
2026-05-31 04:30:45 UTC (01 06:14:57 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-clang_22_libc++ |
| timestamp |
2026-05-31 04:30:41 UTC (01 06:15:01 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-clang_22-static_O3 |
| timestamp |
2026-05-31 04:30:06 UTC (01 06:15:36 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-clang_22-O3 |
| timestamp |
2026-05-31 04:29:46 UTC (01 06:15:56 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-clang_22 |
| timestamp |
2026-05-31 04:29:45 UTC (01 06:15:57 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-clang_18_libc++-static_O3 |
| timestamp |
2026-05-31 00:27:39 UTC (01 10:18:03 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-clang_18_libc++-O3 |
| timestamp |
2026-05-31 00:26:53 UTC (01 10:18:49 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-clang_18_libc++ |
| timestamp |
2026-05-31 00:26:14 UTC (01 10:19:28 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-clang_18-static_O3 |
| timestamp |
2026-05-31 00:26:09 UTC (01 10:19:33 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-clang_18-O3 |
| timestamp |
2026-05-31 00:25:23 UTC (01 10:20:18 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-clang_18 |
| timestamp |
2026-05-31 00:25:23 UTC (01 10:20:18 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-gcc_16-static_O3 |
| timestamp |
2026-05-30 13:58:34 UTC (01 20:47:08 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-gcc_16-ndebug_O3 |
| timestamp |
2026-05-30 13:58:12 UTC (01 20:47:29 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-gcc_16-O3 |
| timestamp |
2026-05-30 13:58:12 UTC (01 20:47:30 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-gcc_16 |
| timestamp |
2026-05-30 13:57:50 UTC (01 20:47:52 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-apple-darwin22.5.0 |
| tgt config |
macos_13-clang_15.0 |
| timestamp |
2026-05-30 13:40:53 UTC (01 21:04:49 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-gcc_14-bindist |
| timestamp |
2026-05-30 13:37:07 UTC (01 21:08:35 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_ubuntu_24.04-gcc_13-bindist |
| timestamp |
2026-05-30 13:34:48 UTC (01 21:10:54 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-clang_21_libc++ |
| timestamp |
2026-05-30 13:34:22 UTC (01 21:11:19 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-gcc_15-O3 |
| timestamp |
2026-05-30 13:34:18 UTC (01 21:11:24 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_fedora_43-gcc_15-bindist |
| timestamp |
2026-05-30 13:34:08 UTC (01 21:11:34 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-gcc_15 |
| timestamp |
2026-05-30 13:33:48 UTC (01 21:11:54 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-freebsd15.0 |
| tgt config |
freebsd_15-clang_19-static_O3 |
| timestamp |
2026-05-30 13:33:36 UTC (01 21:12:06 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-freebsd15.0 |
| tgt config |
freebsd_15-clang_19-O3 |
| timestamp |
2026-05-30 13:33:34 UTC (01 21:12:08 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-clang_21 |
| timestamp |
2026-05-30 13:33:29 UTC (01 21:12:12 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-freebsd14.1 |
| tgt config |
freebsd_14-clang_18 |
| timestamp |
2026-05-30 13:33:28 UTC (01 21:12:14 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-freebsd15.0 |
| tgt config |
freebsd_15-clang_19 |
| timestamp |
2026-05-30 13:32:56 UTC (01 21:12:45 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-gcc_14-ndebug_O3 |
| timestamp |
2026-05-30 10:43:36 UTC (02 00:02:05 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-gcc_14-static_O3 |
| timestamp |
2026-05-30 10:43:34 UTC (02 00:02:08 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-gcc_14-O3 |
| timestamp |
2026-05-30 10:42:55 UTC (02 00:02:47 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-gcc_14 |
| timestamp |
2026-05-30 10:42:53 UTC (02 00:02:49 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-microsoft-win32-msvc14.3 |
| tgt config |
windows_10-msvc_17 |
| timestamp |
2026-05-29 22:04:40 UTC (02 12:41:02 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-gcc_13 |
| timestamp |
2026-05-28 05:11:51 UTC (04 05:33:51 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-microsoft-win32-msvc14.5 |
| tgt config |
windows_10-msvc_18-static_O2 |
| timestamp |
2026-05-26 19:24:39 UTC (05 15:21:03 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-microsoft-win32-msvc14.5 |
| tgt config |
windows_10-msvc_18-O2 |
| timestamp |
2026-05-26 19:24:24 UTC (05 15:21:18 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-microsoft-win32-msvc14.5 |
| tgt config |
windows_10-msvc_18 |
| timestamp |
2026-05-26 19:23:55 UTC (05 15:21:47 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-microsoft-win32-msvc14.5 |
| tgt config |
windows_10-clang_21_msvc_18-static_O2 |
| timestamp |
2026-05-26 17:31:54 UTC (05 17:13:48 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-microsoft-win32-msvc14.5 |
| tgt config |
windows_10-clang_21_msvc_18-O2 |
| timestamp |
2026-05-26 17:31:14 UTC (05 17:14:27 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-microsoft-win32-msvc14.5 |
| tgt config |
windows_10-clang_21_msvc_18 |
| timestamp |
2026-05-26 17:30:43 UTC (05 17:14:59 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_ubuntu_26.04-gcc_15-bindist |
| timestamp |
2026-05-25 15:38:25 UTC (06 19:07:17 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-w64-mingw32 |
| tgt config |
windows_10-gcc_15.2_mingw_w64-static_O2 |
| timestamp |
2026-05-23 21:57:39 UTC (08 12:48:03 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-w64-mingw32 |
| tgt config |
windows_10-gcc_15.2_mingw_w64-O2 |
| timestamp |
2026-05-23 21:57:07 UTC (08 12:48:34 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-w64-mingw32 |
| tgt config |
windows_10-gcc_15.2_mingw_w64 |
| timestamp |
2026-05-23 21:56:54 UTC (08 12:48:47 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_fedora_44-gcc_16-bindist |
| timestamp |
2026-05-20 13:47:44 UTC (11 20:57:58 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-apple-darwin23.5.0 |
| tgt config |
macos_14-clang_15.0-static_O3 |
| timestamp |
2026-05-19 05:10:36 UTC (13 05:35:06 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-apple-darwin23.5.0 |
| tgt config |
macos_14-clang_15.0-O3 |
| timestamp |
2026-05-19 05:09:25 UTC (13 05:36:17 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-apple-darwin23.5.0 |
| tgt config |
macos_14-clang_15.0 |
| timestamp |
2026-05-19 05:08:05 UTC (13 05:37:36 days ago) |
| result |
success | log | rebuild |