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