Source code of file oscpmwin_v0.1.1.652/freeimage.pas from the
osCommerce Product Manager for Windows.
0000: {%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0001: osCommerce Product Manager for Windows (oscpmwin).
0002: Copyright �2003,2004,2005 by Mario A. Valdez-Ramirez.
0003:
0004: You can contact Mario A. Valdez-Ramirez
0005: by email at mario@mariovaldez.org or paper mail at
0006: Olmos 809, San Nicolas, NL. 66495, Mexico.
0007:
0008: This program is free software; you can redistribute it and/or modify
0009: it under the terms of the GNU General Public License as published by
0010: the Free Software Foundation; either version 2 of the License, or (at
0011: your option) any later version.
0012:
0013: This program is distributed in the hope that it will be useful, but
0014: WITHOUT ANY WARRANTY; without even the implied warranty of
0015: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
0016: General Public License for more details.
0017:
0018: You should have received a copy of the GNU General Public License
0019: along with this program; if not, write to the Free Software
0020: Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
0021: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}
0022: UNIT FreeImage;
0023:
0024: INTERFACE
0025:
0026: USES Windows;
0027:
0028:
0029: {FREEIMAGE 3 http://freeimage.sourceforge.net/}
0030:
0031:
0032: {$Z4}
0033:
0034: CONST
0035: JPEG_DEFAULT = 0;
0036: JPEG_FAST = 1;
0037: JPEG_ACCURATE = 2;
0038: JPEG_QUALITYSUPERB = $80;
0039: JPEG_QUALITYGOOD = $100;
0040: JPEG_QUALITYNORMAL = $200;
0041: JPEG_QUALITYAVERAGE = $400;
0042: JPEG_QUALITYBAD = $800;
0043:
0044:
0045: TYPE
0046: FIBITMAPDATA = RECORD
0047: data : POINTER;
0048: END;
0049: FIBITMAP = ^FIBITMAPDATA;
0050: FREE_IMAGE_FORMAT = (FIF_UNKNOWN = -1, FIF_BMP = 0, FIF_JPEG = 2, FIF_PCX = 10, FIF_PNG = 13,
0051: FIF_TARGA = 17, FIF_TIFF = 18, FIF_WBMP = 19, FIF_PSD = 20, FIF_XBM = 22,
0052: FIF_XPM = 23, FIF_GIF = 25);
0053: FREE_IMAGE_QUANTIZE = (FIQ_WUQUANT = 0, FIQ_NNQUANT = 1);
0054: FREE_IMAGE_FILTER = (FILTER_BOX = 0, FILTER_BICUBIC = 1, FILTER_BILINEAR = 2,
0055: FILTER_BSPLINE = 3, FILTER_CATMULLROM = 4, FILTER_LANCZOS3 = 5);
0056:
0057:
0058: FUNCTION FreeImage_Allocate (width, height, bpp : LONGINT; red_mask : CARDINAL = 0; green_mask : CARDINAL = 0; blue_mask : CARDINAL = 0) : FIBITMAP;
0059: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_Allocate@24';
0060:
0061: PROCEDURE FreeImage_Unload (dib : FIBITMAP);
0062: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_Unload@4';
0063:
0064: FUNCTION FreeImage_Load (fif : FREE_IMAGE_FORMAT; filename : PCHAR; flags : LONGINT = 0) : FIBITMAP;
0065: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_Load@12';
0066:
0067: FUNCTION FreeImage_Save (fif : FREE_IMAGE_FORMAT; dib : FIBITMAP; filename : PCHAR; flags : LONGINT = 0) : BOOLEAN;
0068: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_Save@16';
0069:
0070: FUNCTION FreeImage_GetFileType (filename : PCHAR; size : LONGINT) : FREE_IMAGE_FORMAT;
0071: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_GetFileType@8';
0072:
0073: PROCEDURE FreeImage_SetPixelColor (dib : FIBITMAP; x, y : LONGINT; value : PRGBQUAD);
0074: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_SetPixelColor@16';
0075:
0076: FUNCTION FreeImage_GetWidth (dib : FIBITMAP) : CARDINAL;
0077: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_GetWidth@4';
0078:
0079: FUNCTION FreeImage_GetHeight (dib : FIBITMAP) : CARDINAL;
0080: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_GetHeight@4';
0081:
0082: PROCEDURE FreeImage_SetBackgroundColor (dib : FIBITMAP; value : PRGBQUAD);
0083: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_SetBackgroundColor@8';
0084:
0085: FUNCTION FreeImage_ConvertTo8Bits (dib : FIBITMAP) : FIBITMAP;
0086: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_ConvertTo8Bits@4';
0087:
0088: FUNCTION FreeImage_ConvertTo24Bits (dib : FIBITMAP) : FIBITMAP;
0089: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_ConvertTo24Bits@4';
0090:
0091: FUNCTION FreeImage_ConvertTo32Bits (dib : FIBITMAP) : FIBITMAP;
0092: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_ConvertTo32Bits@4';
0093:
0094: FUNCTION FreeImage_ColorQuantize (dib : FIBITMAP; quantize : FREE_IMAGE_QUANTIZE) : FIBITMAP;
0095: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_ColorQuantize@8';
0096:
0097: FUNCTION FreeImage_Rescale (dib : FIBITMAP; dst_width, dst_height : LONGINT; filter : FREE_IMAGE_FILTER) : FIBITMAP;
0098: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_Rescale@16';
0099:
0100: FUNCTION FreeImage_Copy (dib : FIBITMAP; left, top, right, bottom : LONGINT) : FIBITMAP;
0101: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_Copy@20';
0102:
0103: FUNCTION FreeImage_Paste (dst, src : FIBITMAP; left, top, alpha : LONGINT) : BOOLEAN;
0104: STDCALL; EXTERNAL 'FreeImage.dll' name '_FreeImage_Paste@20';
0105:
0106: {$Z1}
0107:
0108: IMPLEMENTATION
0109:
0110: END.
0111:
0112: