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-w64-mingw32 |
| tgt config |
windows_10-gcc_15.2_mingw_w64-static_O2 |
| timestamp |
2026-05-23 21:57:39 UTC (01 11:42:52 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 (01 11:43:24 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 (01 11:43:37 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 (04 19:52:47 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 (06 04:29:55 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 (06 04:31: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 |
| timestamp |
2026-05-19 05:08:05 UTC (06 04:32:26 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-static_O3 |
| timestamp |
2026-05-17 06:39:12 UTC (08 03:01:19 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-17 06:38:04 UTC (08 03:02:27 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-17 06:36:55 UTC (08 03:03:36 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-17 04:30:29 UTC (08 05:10:02 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-17 04:30:20 UTC (08 05:10:12 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-17 04:30:12 UTC (08 05:10:19 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-17 04:30:10 UTC (08 05:10:21 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-17 04:30:00 UTC (08 05:10:32 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-17 04:29:57 UTC (08 05:10:34 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-17 04:29:56 UTC (08 05:10:35 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-17 04:29:50 UTC (08 05:10:41 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-17 04:29:34 UTC (08 05:10:57 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-17 04:29:33 UTC (08 05:10:59 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-17 04:29:27 UTC (08 05:11:04 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-17 04:29:19 UTC (08 05:11:12 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-17 04:29:17 UTC (08 05:11:14 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-17 04:29:17 UTC (08 05:11:14 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-17 04:29:14 UTC (08 05:11:17 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-17 04:29:07 UTC (08 05:11:24 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-17 04:29:05 UTC (08 05:11:26 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-17 04:28:55 UTC (08 05:11:36 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-17 04:28:39 UTC (08 05:11:53 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-17 04:28:07 UTC (08 05:12:24 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-17 04:28:03 UTC (08 05:12:28 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-17 04:28:03 UTC (08 05:12:29 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-17 00:27:01 UTC (08 09:13:30 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-17 00:26:15 UTC (08 09:14:16 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-17 00:25:36 UTC (08 09:14:55 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-17 00:25:26 UTC (08 09:15:05 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-17 00:24:46 UTC (08 09:15:45 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-17 00:24:40 UTC (08 09:15:51 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-16 12:00:57 UTC (08 21:39:34 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-16 12:00:51 UTC (08 21:39:40 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-16 12:00:12 UTC (08 21:40:20 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-16 12:00:08 UTC (08 21:40:23 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-14 05:11:02 UTC (11 04:29:29 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-12 17:47:22 UTC (12 15:53:09 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-12 17:47:08 UTC (12 15:53:23 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-12 17:46:31 UTC (12 15:54:00 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-12 15:47:43 UTC (12 17:52: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-12 15:47:00 UTC (12 17:53:32 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-12 15:46:09 UTC (12 17:54:23 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-12 12:55:08 UTC (12 20:45:23 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-11 14:41:28 UTC (13 18:59:03 days ago) |
| result |
success | log | rebuild |