• 大小: 4.02MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-08-17
  • 语言: 其他
  • 标签: 开源  图像库  CxImag  

资源简介

CxImage是一个优秀的图像操作类库,CodeProject网站打开比较费劲,可以在这里下载。

资源截图

代码片段和文件信息

/*
 * TIFF file IO using CxFile.
 */

#ifdef WIN32
 #include 
#endif
#include 

#include “ximage.h“

#if CXIMAGE_SUPPORT_TIF

#include “../tiff/tiffiop.h“
#include “../tiff/tiffvers.h“

#include “xfile.h“

static tsize_t 
_tiffReadProcEx(thandle_t fd tdata_t buf tsize_t size)
{
return (tsize_t)((CxFile*)fd)->Read(buf 1 size);
}

static tsize_t
_tiffWriteProcEx(thandle_t fd tdata_t buf tsize_t size)
{
return (tsize_t)((CxFile*)fd)->Write(buf 1 size);
}

static toff_t
_tiffSeekProcEx(thandle_t fd toff_t off int whence)
{
if ( off == 0xFFFFFFFF ) 
return 0xFFFFFFFF;
if (!((CxFile*)fd)->Seek(off whence))
return 0xFFFFFFFF;
if (whence == SEEK_SET)
return off;

return (toff_t)((CxFile*)fd)->Tell();
}

// Return nonzero if error
static int
_tiffCloseProcEx(thandle_t /*fd*/)
{
// return !((CxFile*)fd)->Close(); // “//“ needed for memory files 
return 0;
}

#include 

static toff_t
_tiffSizeProcEx(thandle_t fd)
{
return ((CxFile*)fd)->Size();
}

static int
_tiffMapProcEx(thandle_t /*fd*/ tdata_t* /*pbase*/ toff_t* /*psize*/)
{
return (0);
}

static void
_tiffUnmapProcEx(thandle_t /*fd*/ tdata_t /*base*/ toff_t /*size*/)
{
}

// Open a TIFF file descriptor for read/writing.
/*
TIFF*
TIFFOpen(const char* name const char* mode)
{
static const char module[] = “TIFFOpen“;
   FILE* stream = fopen(name mode);
if (stream == NULL) 
   {
TIFFError(module “%s: Cannot open“ name);
return NULL;
}
return (TIFFFdOpen((int)stream name mode));
}
*/

TIFF*
_TIFFFdOpen(void* fd const char* name const char* mode)
{
TIFF* tif;

tif = TIFFClientOpen(name mode
    (thandle_t) fd
    _tiffReadProcEx _tiffWriteProcEx _tiffSeekProcEx _tiffCloseProcEx
    _tiffSizeProcEx _tiffMapProcEx _tiffUnmapProcEx);
if (tif)
{
tif->tif_fd = (int)fd;
}
return (tif);
}

extern “C“ TIFF* _TIFFOpenEx(CxFile* stream const char* mode)
{
return (_TIFFFdOpen(stream “TIFF IMAGE“ mode));
}

#ifdef __GNUC__
extern char* malloc();
extern char* realloc();
#else
#include 
#endif

tdata_t
_TIFFmalloc(tsize_t s)
{
return (malloc((size_t) s));
}

void
_TIFFfree(tdata_t p)
{
free(p);
}

tdata_t
_TIFFrealloc(tdata_t p tsize_t s)
{
return (realloc(p (size_t) s));
}

void
_TIFFmemset(tdata_t p int v tsize_t c)
{
memset(p v (size_t) c);
}

void
_TIFFmemcpy(tdata_t d const tdata_t s tsize_t c)
{
memcpy(d s (size_t) c);
}

int
_TIFFmemcmp(const tdata_t p1 const tdata_t p2 tsize_t c)
{
return (memcmp(p1 p2 (size_t) c));
}

#ifndef UNICODE
#define DbgPrint wvsprintf
#define DbgPrint2 wsprintf
#define DbgMsgBox MessageBox
#else
#define DbgPrint wvsprintfA
#define DbgPrint2 wsprintfA
#define DbgMsgBox MessageBoxA
#endif

static void
Win32WarningHandler(const char* module const char* fmt va_list ap)
{
#ifdef _DEBUG
#if (!def

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-04-26 09:55  cximage702_full\
     文件        3298  2010-12-31 20:09  cximage702_full\Console.dsw
     文件       12228  2011-02-07 03:05  cximage702_full\Console.sln
     文件        9675  2011-02-05 16:52  cximage702_full\Console_vc10.sln
     目录           0  2011-02-05 19:15  cximage702_full\CxImage\
     文件        5986  2010-12-26 02:27  cximage702_full\CxImageFull.dsw
     文件       24360  2011-01-01 01:27  cximage702_full\CxImageFull.sln
     文件       12390  2011-02-05 18:18  cximage702_full\CxImageFull_vc10.sln
     文件        3031  2010-12-31 17:57  cximage702_full\CxImageOcx.dsw
     文件       30479  2009-05-04 05:36  cximage702_full\CxImageWinCE.sln
     文件        8677  2010-12-31 19:06  cximage702_full\CxImage\cximage.dev
     文件        9380  2010-12-26 05:31  cximage702_full\CxImage\cximage.dsp
     文件         537  2001-08-07 00:19  cximage702_full\CxImage\cximage.dsw
     文件       98371  2011-01-08 03:54  cximage702_full\CxImage\cximage.vcproj
     文件        9776  2011-02-05 06:57  cximage702_full\CxImage\cximage.vcxproj
     目录           0  2011-02-05 19:15  cximage702_full\CxImage\CxImageDLL\
     文件         294  2004-10-19 00:52  cximage702_full\CxImage\CxImageDLL\CxImageCrtDll.cpp
     文件       11987  2010-12-26 17:14  cximage702_full\CxImage\CxImageDLL\CxImageCrtDll.dsp
     文件        3037  2011-01-28 06:38  cximage702_full\CxImage\CxImageDLL\CxImageCrtDll.rc
     文件       80885  2011-01-01 01:27  cximage702_full\CxImage\CxImageDLL\CxImageCrtDll.vcproj
     文件       19150  2011-02-05 07:28  cximage702_full\CxImage\CxImageDLL\CxImageCrtDll.vcxproj
     文件        3262  2006-04-04 01:50  cximage702_full\CxImage\CxImageDLL\CxImageCrtDll_wince.sln
     文件       62078  2009-05-04 00:01  cximage702_full\CxImage\CxImageDLL\CxImageCrtDll_wince.vcproj
     文件        4279  2011-01-28 06:39  cximage702_full\CxImage\CxImageDLL\CxImageDll.dsw
     文件        9241  2011-01-28 05:51  cximage702_full\CxImage\CxImageDLL\CxImageDll_vc10.sln
     文件       21340  2006-04-04 01:53  cximage702_full\CxImage\CxImageDLL\CxImageDll_wince.sln
     文件       35548  2011-01-28 06:35  cximage702_full\CxImage\CxImageDLL\CxImageMfcDll.aps
     文件         364  2003-03-23 21:55  cximage702_full\CxImage\CxImageDLL\CxImageMfcDll.clw
     文件        1817  2003-03-23 21:55  cximage702_full\CxImage\CxImageDLL\CxImageMfcDll.cpp
     文件       11108  2010-12-26 17:14  cximage702_full\CxImage\CxImageDLL\cximagemfcdll.dsp
     文件        1330  2003-03-23 21:55  cximage702_full\CxImage\CxImageDLL\CxImageMfcDll.h
............此处省略1070个文件信息

评论

共有 条评论