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-linux-gnu |
| tgt config |
linux_debian_13-clang_22_libc++-static_O3 |
| timestamp |
2026-09-14 08:20:39 UTC (18:14:11 hours 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-09-14 08:20:36 UTC (18:14:13 hours 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-09-14 08:20:24 UTC (18:14:26 hours 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-09-14 08:19:44 UTC (18:15:06 hours 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-09-14 08:19:35 UTC (18:15:14 hours ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-clang_22 |
| timestamp |
2026-09-14 08:19:12 UTC (18:15:38 hours 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-09-14 05:11:49 UTC (21:23:00 hours 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-09-14 05:11:39 UTC (21:23:10 hours ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-gcc_16 |
| timestamp |
2026-09-14 05:10:56 UTC (21:23:54 hours 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-09-14 05:10:50 UTC (21:24:00 hours 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-09-14 05:05:23 UTC (21:29:27 hours 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-09-14 04:33:00 UTC (22:01:49 hours 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-09-14 04:32:52 UTC (22:01:58 hours 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-09-14 04:32:46 UTC (22:02:03 hours 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-09-14 04:32:27 UTC (22:02:23 hours ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-gcc_15 |
| timestamp |
2026-09-14 04:32:16 UTC (22:02:33 hours ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-linux-gnu |
| tgt config |
linux_debian_13-clang_21 |
| timestamp |
2026-09-14 04:32:10 UTC (22:02:39 hours 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-09-14 04:31:34 UTC (22:03:15 hours ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-freebsd15.0 |
| tgt config |
freebsd_15-clang_19-O3 |
| timestamp |
2026-09-14 04:31:23 UTC (22:03:27 hours ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-freebsd14.1 |
| tgt config |
freebsd_14-clang_18 |
| timestamp |
2026-09-14 04:30:55 UTC (22:03:54 hours ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
x86_64-freebsd15.0 |
| tgt config |
freebsd_15-clang_19 |
| timestamp |
2026-09-14 04:30:52 UTC (22:03:58 hours 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-09-13 23:27:35 UTC (01 03:07:15 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-09-13 23:27:21 UTC (01 03:07:28 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-09-13 23:26:50 UTC (01 03:08:00 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-gcc_14 |
| timestamp |
2026-09-13 23:26:34 UTC (01 03:08:15 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-09-13 22:42:42 UTC (01 03:52:07 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-09-13 22:42:01 UTC (01 03:52:48 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-09-13 22:41:05 UTC (01 03:53:45 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-09-13 22:40:24 UTC (01 03:54:26 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-09-13 22:40:13 UTC (01 03:54:37 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-clang_18 |
| timestamp |
2026-09-13 22:39:44 UTC (01 03:55:06 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-09-12 04:33:01 UTC (02 22:01:49 days ago) |
| result |
success | log | rebuild |
| toolchain |
public-0.18.1 |
| target |
aarch64-linux-gnu |
| tgt config |
linux_debian_12-gcc_13 |
| timestamp |
2026-09-11 05:14:10 UTC (03 21:20:40 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-09-10 22:09:22 UTC (04 04:25:28 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-09-07 19:35:57 UTC (07 06:58:53 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-09-07 19:34:50 UTC (07 06:59:59 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-09-07 19:34:45 UTC (07 07:00:05 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-09-07 17:38:28 UTC (07 08:56:22 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-09-07 17:37:05 UTC (07 08:57:44 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-09-07 17:36:59 UTC (07 08:57:51 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-09-06 16:03:57 UTC (08 10:30:53 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-09-04 22:20:23 UTC (10 04:14:27 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-09-04 22:19:40 UTC (10 04:15:10 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-09-04 22:19:08 UTC (10 04:15:42 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-09-03 00:23:00 UTC (12 02:11:50 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-09-03 00:22:03 UTC (12 02:12:46 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-09-03 00:21:03 UTC (12 02:13:47 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-09-02 19:32:54 UTC (12 07:01:55 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-09-02 19:31:58 UTC (12 07:02:52 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-09-02 19:30:59 UTC (12 07:03:51 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-09-01 14:06:36 UTC (13 12:28:14 days ago) |
| result |
success | log | rebuild |