资源简介
zlib和libpng源码
zlib1.2.3.0
libpng1.2.35
代码片段和文件信息
#if 0 /* in case someone actually tries to compile this */
/* example.c - an example of using libpng
* Last changed in libpng 1.2.35 [February 14 2009]
* This file has been placed in the public domain by the authors.
* Maintained 1998-2009 Glenn Randers-Pehrson
* Maintained 1996 1997 Andreas Dilger)
* Written 1995 1996 Guy Eric Schalnat Group 42 Inc.)
*/
/* This is an example of how to use libpng to read and write PNG files.
* The file libpng.txt is much more verbose then this. If you have not
* read it do so first. This was designed to be a starting point of an
* implementation. This is not officially part of libpng is hereby placed
* in the public domain and therefore does not require a copyright notice.
*
* This file does not currently compile because it is missing certain
* parts like allocating memory to hold an image. You will have to
* supply these parts to get it to compile. For an example of a minimal
* working PNG reader/writer see pngtest.c included in this distribution;
* see also the programs in the contrib directory.
*/
#include “png.h“
/* The png_jmpbuf() macro used in error handling became available in
* libpng version 1.0.6. If you want to be able to run your code with older
* versions of libpng you must define the macro yourself (but only if it
* is not already defined by libpng!).
*/
#ifndef png_jmpbuf
# define png_jmpbuf(png_ptr) ((png_ptr)->jmpbuf)
#endif
/* Check to see if a file is a PNG file using png_sig_cmp(). png_sig_cmp()
* returns zero if the image is a PNG and nonzero if it isn‘t a PNG.
*
* The function check_if_png() shown here but not used returns nonzero (true)
* if the file can be opened and is a PNG 0 (false) otherwise.
*
* If this call is successful and you are going to keep the file open
* you should call png_set_sig_bytes(png_ptr PNG_BYTES_TO_CHECK); once
* you have created the png_ptr so that libpng knows your application
* has read that many bytes from the start of the file. Make sure you
* don‘t call png_set_sig_bytes() with more than 8 bytes read or give it
* an incorrect number of bytes read or you will either have read too
* many bytes (your fault) or you are telling libpng to read the wrong
* number of magic bytes (also your fault).
*
* Many applications already read the first 2 or 4 bytes from the start
* of the image to determine the file type so it would be easiest just
* to pass the bytes to png_sig_cmp() or even skip that if you know
* you have a PNG file and call png_set_sig_bytes().
*/
#define PNG_BYTES_TO_CHECK 4
int check_if_png(char *file_name FILE **fp)
{
char buf[PNG_BYTES_TO_CHECK];
/* Open the prospective PNG file. */
if ((*fp = fopen(file_name “rb“)) == NULL)
return 0;
/* Read in some of the signature bytes */
if (fread(buf 1 PNG_BYTES_TO_CHECK *fp) != PNG_BYTES_TO_CHECK)
return 0;
/* Compare the first PNG_BYTES_TO_CHECK bytes of the signature.
Return nonzero
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 312725 2009-02-15 05:59 zlib_libpng\libpng\aclocal.m4
文件 1501 2009-02-15 05:59 zlib_libpng\libpng\ANNOUNCE
文件 639 2008-05-02 10:44 zlib_libpng\libpng\autogen.sh
文件 115802 2009-02-15 05:59 zlib_libpng\libpng\CHANGES
文件 44878 2008-05-02 11:50 zlib_libpng\libpng\config.guess
文件 2150 2009-02-15 05:59 zlib_libpng\libpng\config.h.in
文件 33387 2008-05-02 11:50 zlib_libpng\libpng\config.sub
文件 435168 2009-02-15 05:59 zlib_libpng\libpng\configure
文件 4266 2009-02-15 05:59 zlib_libpng\libpng\configure.ac
文件 17992 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\COPYING
文件 2373 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\LICENSE
文件 3905 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\Makefile.mingw32
文件 2966 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\Makefile.sgi
文件 4010 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\Makefile.unx
文件 3335 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\Makefile.w32
文件 3557 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\makevms.com
文件 7801 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\README
文件 9758 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\readpng.c
文件 3260 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\readpng.h
文件 24685 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\readpng2.c
文件 3942 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\readpng2.h
文件 5424 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\readppm.c
文件 22911 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\rpng-win.c
文件 30776 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\rpng-x.c
文件 45309 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\rpng2-win.c
文件 82268 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\rpng2-x.c
文件 12901 1997-04-09 02:34 zlib_libpng\libpng\contrib\gregbook\toucan.png
文件 31050 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\wpng.c
文件 12789 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\writepng.c
文件 4237 2009-02-15 05:59 zlib_libpng\libpng\contrib\gregbook\writepng.h
............此处省略513个文件信息
相关资源
- pcre-8.37.tar.gz和zlib-1.2.8.tar.gz
- zlib动态链接库x86&64;
- png++库安装指南和代码
- libpng 使用vs调用的原始包
- centos7 离线安装gcc pcre-devel openssl-dev
- redis集群所需包,内含redis-3.2.1.gem,
- libpng+zlib 有源代码和已经编译好的d
- 文件加密AxCrypt源码附带cryptlib包与Z
- 海思3516A 3516D openssl zlib openssh编译
- x64 windows libcurlopensslzlib编译好,VS直接
- libcurl相关资源
- libqr库的源码及zlib库文件
- zlib-1.2.11.tar
- 使用zlib-1.2.11编译后生成,32位的zli
- 使用ZLIB库压缩解压源码支持多级文件
- libpng的库文件,lib文件,dll文件
- libpng.lib,zlib.lib,libpng16.dll
- MINIZIP 压缩解压缩 附编译好的zlibsta
- zlib123-dll.zip
- libpng-1.0.10rc1.tar.tar
- zlib的windows端应用工具
- 用zlib库在内存中解压或压缩http会话中
- IOCP_API(2.4)
- 易语言zlib支持库静态版解压代码
- zlib-devel
- zlib-1.2.7
- zlib-devel-1.2.3-3.x86_64.rpm
- zlib-1.2.5
- Zlib.ec易语言模块
- Zlib模块.ec+Zlib模块.dll+
评论
共有 条评论