📄 imageenio.pas
字号:
TIOTIFFCompression = (
ioTIFF_UNCOMPRESSED,
ioTIFF_CCITT1D,
ioTIFF_G3FAX1D,
ioTIFF_G3FAX2D,
ioTIFF_G4FAX,
ioTIFF_LZW,
ioTIFF_OLDJPEG,
ioTIFF_JPEG,
ioTIFF_PACKBITS,
ioTIFF_ZIP,
ioTIFF_DEFLATE,
ioTIFF_UNKNOWN);
{!!
<FS>TIOTIFFPhotometInterpret
<FM>Declaration<FC>
type TIOTIFFPhotometInterpret = (ioTIFF_WHITEISZERO, ioTIFF_BLACKISZERO, ioTIFF_RGB, ioTIFF_RGBPALETTE, ioTIFF_TRANSPMASK, ioTIFF_CMYK, ioTIFF_YCBCR, ioTIFF_CIELAB);
!!}
TIOTIFFPhotometInterpret = (
ioTIFF_WHITEISZERO,
ioTIFF_BLACKISZERO,
ioTIFF_RGB,
ioTIFF_RGBPALETTE,
ioTIFF_TRANSPMASK,
ioTIFF_CMYK,
ioTIFF_YCBCR,
ioTIFF_CIELAB);
{!!
<FS>TIOJPEGColorspace
<FM>Declaration<FC>
type TIOJPEGColorspace=(ioJPEG_RGB, ioJPEG_GRAYLEV, ioJPEG_YCbCr, ioJPEG_CMYK, ioJPEG_YCbCrK);
<FM>Description<FN>
<TABLE>
<R> <H>Value</H> <H>Description</H> </R>
<R> <C>ioJPEG_RGB</C> <C>separate RGB channels.</C> </R>
<R> <C>ioJPEG_GRAYLEV</C> <C>unique intensity channel (gray levels).</C> </R>
<R> <C>ioJPEG_YCbCr</C> <C>three channels (CCIR Recommendation 601-1)</C> </R>
<R> <C>ioJPEG_CMYK</C> <C>four channels (Cyan Magenta Yellow Black) - linear convertion</C> </R>
<R> <C>ioJPEG_YCbCrK</C> <C>four channels (YCbCr and Black)</C> </R>
</TABLE>
!!}
TIOJPEGColorspace = (
ioJPEG_RGB,
ioJPEG_GRAYLEV,
ioJPEG_YCbCr,
ioJPEG_CMYK,
ioJPEG_YCbCrK);
{$IFDEF IEINCLUDEJPEG2000}
{!!
<FS>TIOJ2000ColorSpace
<FM>Declaration<FC>
TIOJ2000ColorSpace = (
ioJ2000_GRAYLEV,
ioJ2000_RGB,
ioJ2000_YCbCr);
<FM>Description<FN>
<TABLE>
<R> <H>Value</H> <H>Description</H>
<R> <C>ioJ2000_GRAYLEV</C> <C>gray scale image</C> </R>
<R> <C>ioJ2000_RGB</C> <C>RGB image</C> </R>
<R> <C>ioJ2000_YcbCr</C> <C>YcbCr image (currently supported only for loading)</C> </R>
</TABLE>
!!}
TIOJ2000ColorSpace = (
ioJ2000_GRAYLEV,
ioJ2000_RGB,
ioJ2000_YCbCr);
{!!
<FS>TIOJ2000ScalableBy
<FM>Declaration<FC>
TIOJ2000ScalableBy = (
ioJ2000_Rate,
ioJ2000_Resolution);
<FM>Description<FN>
<TABLE>
<R> <H>Value</H> <H>Description</H>
<R> <C>ioJ2000_Rate</C> <C>layer-resolution-component-position (LRCP) progressive (i.e., rate scalable)</C> </R>
<R> <C>ioJ2000_Resolution</C> <C>resolution-layer-component-position (RLCP) progressive (i.e., resolution scalable)</C> </R>
</TABLE>
!!}
TIOJ2000ScalableBy = (
ioJ2000_Rate,
ioJ2000_Resolution);
{$ENDIF}
{!!
<FS>TIOJPEGDctMethod
<FM>Declaration<FC>
type TIOJPEGDctMethod = (ioJPEG_ISLOW, ioJPEG_IFAST, ioJPEG_FLOAT);
<FM>Description<FN>
<TABLE>
<R> <H>Value</H> <H>Description</H>
<R> <C>ioJPEG_ISLOW</C> <C>slow but accurate integer algorithm.</C> </R>
<R> <C>ioJPEG_IFAST</C> <C>faster, less accurate integer method.</C> </R>
<R> <C>ioJPEG_FLOAT</C> <C>floating-point method (machine dependent).</C> </R>
</TABLE>
!!}
TIOJPEGDctMethod = (
ioJPEG_ISLOW,
ioJPEG_IFAST,
ioJPEG_FLOAT);
{!!
<FS>TIOJPEGScale
<FM>Declaration<FC>
TIOJPEGScale = (
ioJPEG_AUTOCALC,
ioJPEG_FULLSIZE,
ioJPEG_HALF,
ioJPEG_QUARTER,
ioJPEG_EIGHTH);
<FM>Description<FN>
<TABLE>
<R> <H>Value</H> <H>Description</H> </R>
<R> <C>ioJPEG_AUTOCALC</C> <C>self calculates JPEGScale to mach Params.Width and Params.Height properties;</C> </R>
<R> <C>ioJPEG_FULLSIZE</C> <C>full size image (default). Slow loading.</C> </R>
<R> <C>ioJPEG_HALF</C> <C>1/2 of the full size;</C> </R>
<R> <C>ioJPEG_QUARTER</C> <C>1/4 of the full size;</C> </R>
<R> <C>ioJPEG_EIGHTH</C> <C>1/8 of the full size. Very fast loading.</C> </R>
</TABLE>
!!}
TIOJPEGScale = (
ioJPEG_AUTOCALC,
ioJPEG_FULLSIZE,
ioJPEG_HALF,
ioJPEG_QUARTER,
ioJPEG_EIGHTH);
{!!
<FS>TIOBMPVersion
<FM>Declaration<FC>
type TIOBMPVersion = (ioBMP_BM, ioBMP_BM3, ioBMP_BMOS2V1, ioBMP_BMOS2V2);
<FM>Description<FN>
<TABLE>
<R> <H>Value</H> <H>Description</H> </R>
<R> <C>ioBMP_BM</C> <C>old Windows bitmap.</C> </R>
<R> <C>ioBMP_BM3</C> <C>Windows 3.x or newer bitmap.</C> </R>
<R> <C>ioBMP_BMOS2V1</C> <C>IBM OS/2 version 1.x bitmap.</C> </R>
<R> <C>ioBMP_BMOS2V2</C> <C>IBM OS/2 version 2.x bitmap.</C> </R>
</TABLE>
!!}
TIOBMPVersion = (
ioBMP_BM,
ioBMP_BM3,
ioBMP_BMOS2V1,
ioBMP_BMOS2V2);
{!!
<FS>TIOBMPCompression
<FM>Declaration<FC>
type TIOBMPCompression = (ioBMP_UNCOMPRESSED, ioBMP_RLE);
<FM>Description<FN>
Use ioBMP_UNCOMPRESSED to save uncompressed bitmap.
Use ioBMP_RLE to save compressed bitmap (which would can be bigger of uncompressed...).
!!}
TIOBMPCompression = (
ioBMP_UNCOMPRESSED,
ioBMP_RLE);
{!!
<FS>TIOPCXCompression
<FM>Declaration<FC>
type TIOPCXCompression = (ioPCX_UNCOMPRESSED, ioPCX_RLE);
<FM>Description<FN>
ioPCX_UNCOMPRESSED is uncompressed PCX (incompatible with most PCX readers).
ioPCX_RLE is compressed PCX (standard PCX).
!!}
TIOPCXCompression = (
ioPCX_UNCOMPRESSED,
ioPCX_RLE);
{!!
<FS>TIOPNGFilter
<FM>Declaration<FC>
}
TIOPNGFilter = (
ioPNG_FILTER_NONE,
ioPNG_FILTER_SUB,
ioPNG_FILTER_PAETH);
{!!}
{!!
<FS>TIEGIFAction
<FM>Declaration<FC>
}
TIEGIFAction = (
ioGIF_None,
ioGIF_DontRemove,
ioGIF_DrawBackground,
ioGIF_RestorePrev);
{!!}
{!!
<FS>TIOFileType
<FM>Declaration<FC>
TIOFileType = integer;
<FM>Description<FN>
Specifies a file format supported by ImageEn (for read-write, read-only or write-only).
<TABLE>
<R> <H>Constant</H> <H>Description</H> </R>
<R> <C>ioUnknown</C> <C>Unknown file format</C> </R>
<R> <C>ioTIFF</C> <C>TIFF Bitmap</C> </R>
<R> <C>ioGIF</C> <C>GIF</C> </R>
<R> <C>ioJPEG</C> <C>Jpeg bitmap</C> </R>
<R> <C>ioPCX</C> <C>PaintBrush PCX</C> </R>
<R> <C>ioBMP</C> <C>Windows Bitmap</C> </R>
<R> <C>ioICO</C> <C>Windows Icon</C> </R>
<R> <C>ioCUR</C> <C>Windows Cursor</C> </R>
<R> <C>ioPNG</C> <C>Portable Network Graphics</C> </R>
<R> <C>ioWMF</C> <C>Windows Metafile</C> </R>
<R> <C>ioEMF</C> <C>Enhanced Windows Metafile</C> </R>
<R> <C>ioTGA</C> <C>Targa Bitmap</C> </R>
<R> <C>ioPXM</C> <C>Portable Pixmap, GreyMap, BitMap</C> </R>
<R> <C>ioJP2</C> <C>Jpeg2000</C> </R>
<R> <C>ioJ2K</C> <C>Jpeg2000</C> </R>
<R> <C>ioAVI</C> <C>AVI video</C> </R>
<R> <C>ioWBMP</C> <C>Wireless bitmap</C> </R>
<R> <C>ioPS</C> <C>Postscript</C> </R>
<R> <C>ioPDF</C> <C>Adobe PDF</C> </R>
<R> <C>ioDCX</C> <C>Multipage PCX</C> </R>
<R> <C>ioRAW</C> <C>Digital Camera RAW</C> </R>
<R> <C>ioBMPRAW</C> <C>Bitmap RAW</C> </R>
<R> <C>ioWMV</C> <C>Windows Media</C> </R>
<R> <C>ioMPEG</C> <C>Video MPEG</C> </R>
<R> <C>ioPSD</C> <C>Adobe Photoshop PSD</C> </R>
<R> <C>ioIEV</C> <C>Vectorial objects (<A TImageEnVect.SaveToFileIEV>)</C> </R>
<R> <C>ioLYR</C> <C>Layers (<A TImageEnView.LayersSaveToFile>)</C> </R>
<R> <C>ioALL</C> <C>Combined layers and vectorial objects (<A TImageEnVect.SaveToFileAll>)</C> </R>
<R> <C>ioDLLPLUGINS</C> <C>External plugin start value</C> </R>
<R> <C>ioUSER</C> <C>Internal plugin start value</C> </R>
</TABLE>
!!}
TIOFileType = integer;
const
// types for TIOFileType
ioUnknown = 0;
ioTIFF = 1;
ioGIF = 2;
ioJPEG = 3;
ioPCX = 4;
ioBMP = 5;
ioICO = 6;
ioCUR = 7;
{$IFDEF IEINCLUDEPNG}
ioPNG = 8;
{$ENDIF}
ioWMF = 9;
ioEMF = 10;
ioTGA = 11;
ioPXM = 12;
{$IFDEF IEINCLUDEJPEG2000}
ioJP2 = 13;
ioJ2K = 14;
{$ENDIF}
ioAVI = 15;
ioWBMP = 16;
ioPS = 17;
ioPDF = 18;
ioDCX = 19;
ioRAW = 20;
ioBMPRAW = 21;
ioWMV = 22;
ioMPEG = 23;
ioPSD = 24;
ioIEV = 25;
ioLYR = 26;
ioALL = 27;
ioDLLPLUGINS = 4096;
ioUSER = 10000;
type
{!!
<FS>TIOICOSizes
<FM>Declaration<FC>
}
TIOICOSizes = array[0..IEMAXICOIMAGES - 1] of TSize;
{!!}
{!!
<FS>TIOICOBitCount
<FM>Declaration<FC>
}
TIOICOBitCount = array[0..IEMAXICOIMAGES - 1] of integer;
{!!}
{!!
<FS>TIOBMPRAWChannelOrder
<FM>Declaration<FC>
}
TIOBMPRAWChannelOrder=(coRGB, coBGR);
{!!}
{!!
<FS>TIOBMPRAWPlanes
<FM>Declaration<FC>
TIOBMPRAWPlanes=(plInterleaved, plPlanar);
<FM>Description<FN>
In plInterleaved channels are B,G,R,B,G,R... otherwise they are BBB.., GGG.., RRR...
!!}
TIOBMPRAWPlanes=(plInterleaved, plPlanar);
{!!
<FS>TIOByteOrder
<FM>Declaration<FC>
}
TIOByteOrder = (ioBigEndian, ioLittleEndian); // ioBigEndian=Motorola, ioLittleEndian=Intel
{!!}
TImageEnIO = class;
{!!
<FS>TIOParamsVals
<FM>Description<FN>
TIOParamsVals object contains all parameters for all image file formats handled by ImageEn, such as compression type, text comments, bit per sample, samples per pixel, etc.
You can set one or more of these parameters before saving or get them after loading with the exception of "export only" file formats like PDF, PS, etc which can be only saved: so you cannot load parameters from them.
<FM>See also<FN>
<A TImageEnIO.Params>
<A TImageEnDBView.IOParams>
<FM>Properties<FN>
<A TIOParamsVals.BitsPerSample>
<A TIOParamsVals.ColorMapCount>
<A TIOParamsVals.ColorMap>
<A TIOParamsVals.DefaultICCProfile>
<A TIOParamsVals.Dpi>
<A TIOParamsVals.DpiX>
<A TIOParamsVals.DpiY>
<A TIOParamsVals.FileName>
<A TIOParamsVals.FileTypeStr>
<A TIOParamsVals.FileType>
<A TIOParamsVals.GetThumbnail>
<A TIOParamsVals.Height>
<A TIOParamsVals.ImageCount>
<A TIOParamsVals.ImageIndex>
<A TIOParamsVals.ImagingAnnot>
<A TIOParamsVals.InputICCProfile>
<A TIOParamsVals.OutputICCProfile>
<A TIOParamsVals.SamplesPerPixel>
<A TIOParamsVals.Width>
<FI>BMP<FN>
<A TIOParamsVals.BMP_Compression>
<A TIOParamsVals.BMP_HandleTransparency>
<A TIOParamsVals.BMP_Version>
<FI>GIF<FN>
<A TIOParamsVals.GIF_Action>
<A TIOParamsVals.GIF_Background>
<A TIOParamsVals.GIF_Comments>
<A TIOParamsVals.GIF_DelayTime>
<A TIOParamsVals.GIF_FlagTranspColor>
<A TIOParamsVals.GIF_ImageCount>
<A TIOParamsVals.GIF_ImageIndex>
<A TIOParamsVals.GIF_Interlaced>
<A TIOParamsVals.GIF_LZWCompFunc>
<A TIOParamsVals.GIF_LZWDecompFunc>
<A TIOParamsVals.GIF_Ratio>
<A TIOParamsVals.GIF_TranspColor>
<A TIOParamsVals.GIF_Version>
<A TIOParamsVals.GIF_WinHeight>
<A TIOParamsVals.GIF_WinWidth>
<A TIOParamsVals.GIF_XPos>
<A TIOParamsVals.GIF_YPos>
<FI>JPEG<FN>
<A TIOParamsVals.JPEG_ColorSpace>
<A TIOParamsVals.JPEG_DCTMethod>
<A TIOParamsVals.JPEG_EnableAdjustOrientation>
<A TIOParamsVals.JPEG_GetExifThumbnail>
<A TIOParamsVals.JPEG_MarkerList>
<A TIOParamsVals.JPEG_OptimalHuffman>
<A TIOParamsVals.JPEG_OriginalWidth>
<A TIOParamsVals.JPEG_OriginalWidth>
<A TIOParamsVals.JPEG_Progressive>
<A TIOParamsVals.JPEG_Quality>
<A TIOParamsVals.JPEG_Scale_Used>
<A TIOParamsVals.JPEG_Scale>
<A TIOParamsVals.JPEG_Smooth>
<A TIOParamsVals.JPEG_WarningCode>
<A TIOParamsVals.JPEG_WarningTot>
<FI>JPEG 2000<FN>
<A TIOParamsVals.J2000_ColorSpace>
<A TIOParamsVals.J2000_Rate>
<A TIOParamsVals.J2000_ScalableBy>
<FI>PCX<FN>
<A TIOParamsVals.PCX_Compression>
<A TIOParamsVals.PCX_Version>
<FI>Adobe PSD<FN>
<A TIOParamsVals.PSD_LoadLayers>
<A TIOParamsVals.PSD_ReplaceLayers>
<FI>TIFF<FN>
<A TIOParamsVals.TIFF_ByteOrder>
<A TIOParamsVals.TIFF_Compression>
<A TIOParamsVals.TIFF_DocumentName>
<A TIOParamsVals.TIFF_EnableAdjustOrientation>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -