libspg是一个C语言的开发库,用来读写PNG格式图片,特点是安全而且易用。
libspg目标是提供一个快速的PNG库,其API与 libpg 相同。
下图是几个pg库的性能比较:
功能比较:
Featurelibspglibpgstb_imagelodepgDecodetoRGBA8/16✓✓✓✓Decodefromstream✓✓✓XGammacorrectio✓✓XXFuzzedby OSS-Fuzz✓✓X✓ProgressivereadX*✓XXDoes'trequirezlibXX✓✓EcodigX*✓✓✓AimatedPNGX*✓**XX*计划阶段的特性
**第三方补丁
示例代码:
/*Createacotext*/spg_ctx*ctx=spg_ctx_ew(0);/*Setaiputbuffer*/spg_set_pg_buffer(ctx,buf,buf_size);/*Determieoutputimagesize*/spg_decoded_image_size(ctx,SPNG_FMT_RGBA8,&out_size);/*Decodeto8-bitRGBA*/spg_decode_image(ctx,out,out_size,SPNG_FMT_RGBA8,0);/*Freecotextmemory*/spg_ctx_free(ctx);
评论