📄 cximage_history.htm
字号:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<title>CxImage History</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<link rel="stylesheet" href="xdp.css" type="text/css">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css">
<!--
body {
background-color: #FFFFFF;
}
-->
</style></head>
<body background="img5/grid02.gif">
<h2>CxImage History</h2>
<hr>
<h3></h3>
<h3>Version 5.99c, 17 - Oct - 2004</h3>
<p><b>Bugfixes</b>
</p>
<ul>
<li>CxImageTIF::Encode: default compression for 4 bpp image was NONE, now it's LZW.</li>
<li>CxMemFile::Seek: fixed bug introduced in version 5.99b: seeking beyond file size is legal !!!</li>
</ul>
<h3>Version 5.99b, 10 - Oct - 2004</h3>
<b>Bugfixes</b>
<ul>
<li>fixed SetXDPI and SetYDPI to accept only positive dpi values
<li>fixed EXIF decoder against invalid TAG_EXIF_OFFSET / TAG_INTEROP_OFFSET
<li>fixed missing definitions in ximawnd.cpp when CXIMAGE_SUPPORT_BMP is 0
<li>fixed <code>CxFileJas</code> constructor to avoid crashes, when Jasper deals
with its temporary files, decoding large images <vho>
<li>removed default <code>imagetype</code> value from <code>CxImage::Save</code>
<Choi Byungtae>
<li>fixed <code>Mean()</code> for images with an active selection <Admir
Hodzic>
<li>fixed GIF decoder for animated images with corrupted frames.
<li>fixed GIF decoder for images with screen descriptor larger than the first frame.
<li>fixed GIF decoder to handle the disposal methods correctly.
<li>CxImageWMF reads images mapped in MM_TEXT, when MM_ANISOTROPIC fails.
<li>fixed <code>Clear</code> for 1 and 4 bpp images.
<li>fixed typo in ximajpg.cpp: ENTRPY_OPT_SUPPORTED -> ENTROPY_OPT_SUPPORTED <Boum>
<li>fixed potential memory overflow in RLE decoder reading corrupted bitmaps.
<li>Better UNICODE support <Cesar M> and fixed TCHAR mappings for Linux.
<li>fixed bug in <code>IsTransparent</code>, for images with a valid alpha layer.
<li>fixed bug in <code>Create</code>: a vaild image was created even if width or height were zero.
<li>CxMemFile: fixed problem for compilers where malloc(0) returns 0, + improvements in Alloc and Seek.
</ul>
<b>Changes and major additions</b>
<ul>
<li> new functions: <code>Rotate2()</code> <BD>, <code>Resample2()</code>
<BD> <code>QIShrink()</code> <BD> , <code>RedEyeRemove()</code> <???> , <code>Edge()</code>,<br>
<code>SelectionSplit()</code>, <code>IsSamePalette, BlendPixelColor</code>, <code>GetVersionNumber, Encode2RGBA</code>
<li>new dithering algorithms: Bayer, Burkes, Stucki, Jarvis-Judice-Ninke, Sierra, Stevenson-Arce
<Franco Gerevini>
<li>renamed <code>AlphaGetBits</code> with <code>AlphaGetPointer</code> <BD>
<li>new compiler switch: CXIMAGE_SUPPORT_INTERPOLATION to enable pixel color
interpolations,<br>
implemented in the ximaint.cpp module <BD>
<li>New bEnableInterpolation parameter for <code>Skew()</code>
<li>New <code>blend</code> parameter for <code>Colorize()</code>
<li>color conversion routines now are declared as <code><i>static</i></code>
<li><code>FFT2</code> now works also with Borland compilers
<li>more interpolation kernels <Vladimír Kloucek>
<li>Smooth stretching parameter for <code>Draw</code>, thanks to <Vladimír Kloucek> and <BD>
<li>Added <code>FreeMemory</code> function, to avoid heap problems using <code>Encode</code> with memory buffers <livecn>
<li>new <code>bMixAlpha</code> parameter and new <code>OpScreen</code> blending mode for <code>Mix()</code>
<li>LZW compression is the default algorithm for GIF compression.
<li>CxImagePNG now can encode interlaced images
<li>Get/SetCodecOption now has an "ImageType" parameter, so that each format keeps its specific options
<li>Faster <code>RotateLeft</code> and <code>RotateRight</code> <BD>
<li>CxImageJPG now can write back the EXIF information (verbatim copy).
</ul>
<b>Project - Libraries - Demo application</b>
<ul>
<li>Demo: new dialogs for Resample, Rotate, Skew with more options, JPEG compression</li>
<li>New license based on zlib/libpng philosophy, see ximage.h and ./doc/license.txt</li>
<li>Demo: new tool: tracker</li>
<li>Demo: new View/Smooth menu to test smooth drawing in zoom and stretch modes</li>
<li>Demo: more CodecOptions on the Options dialog, enabled LZW compression for GIF and TIF formats.</li>
<li>PNG: updated to libpng 1.2.7 </li>
<li>JBIG: updated to version 1.6 </li>
<li>Better documentation : now using Doxygen. </li>
</ul>
<hr>
<h3></h3>
<h3>Version 5.99a, 08 - Feb - 2004</h3>
<b>Bugfixes</b>
<ul>
<li> fixed bug in AlphaCopy, AlphaSet, SelectionCopy <Tacho>
</ul>
<b>Changes and major additions</b>
<ul>
<li> ---
</ul>
<b>Project - Libraries - Demo application</b>
<ul>
<li>Demo: fixed save/restore window position and options</li>
</ul>
<hr>
<h3></h3>
<h3>Version 5.99, 31 - Jan - 2004</h3>
<b>Bugfixes</b>
<ul>
<li> fixed linking problems when CXIMAGE_SUPPORT_ENCODE is 0 <Schuberth>
<Squidge>
<li>fixed missing in parentheses in CreateFromMatrix and CreateFromArray <sihun>
<H.C.Anderson>
<li>fixed incorrect decoding for 4-bit RLE Windows bitmaps <chupeev>
<li>Removed unreachable code in Resample <Lucian Ioan>
<li>CxImagePNG::Encode : removed useless call to iter.GetRow <Chieh An Lu>
<li>fixed color comparison using long integers (if rgbReserved is not 0) in
CxImagePNG and CxImageICO <James Dickson>
<li>CxExifInfo now reads the exif data also in a second directory <Richard
Collins>
<li>Dither now preserves DPI information
<li> fixed PNG decoder for interlaced images with transparent layer
<li>fixed GIF decoder bug for animated images with local color table.
<li>fixed problem in Draw() with indexed images, when 2 indexes hold the same
color and 1 is transparent.
<li>fixed memory overrun in Crop() for 8 and 24 bpp images. <DT>
<li>fixed BMP decoder when loading 8 bit resources with less than 256 colors
<DT>
<li>CxImageTIF now handles TIFFTAG_RESOLUTIONUNIT <Trifon>
<li>Fix for decoding 8 bpp tifs with alpha layer <Nick Holgate>
<li>fixed error in mymngerror() <Arkadiy Olovyannikov>
<li>fixed TIFFTAG_PREDICTOR, saving 1 and 4 bpp images with LZW compression
<Hermann62>
</ul>
<b>Changes and major additions</b>
<ul>
<li> Renamed DrawText with DrawString
<li>New bGetAlpha parameter for GetPixelColor
<li>CxImageICO now reads also windows cursors (.CUR)
<li>support for UNICODE <Igor Rosenberg>
<li>Renamed Get/SetEncodeOption with Get/SetCodecOption <chupeev>
<li>AlphaCreate also initializes the layer to full opaque.
<li>new functions: DrawStringEx, InitTextInfo, CropRotatedRectangle <VATI>,
MixFrom <Kenneth Ballard>, UnsharpMask <nipper>, Lut
<li>increased default JPEG quality to 90 <VATI>
<li>CxImageTIF::Decode saves original compression in info.dwCodecOption <DPR>
<li>new functions: CxImageTIF::TIFFOpenEx and CxImageTIF::TIFFCloseEx, to handle
directly a TIFF directory.
<li>CxImageJPG::Decode and CxImageJPG::Encode handles more jpeg DECODE_XXX and
ENCODE_XXX methods<br>
(through SetCodecOption and SetJpegQuality) <chupeev>
<li>new dwRop parameter for Stretch, allows raster-operation codes. <?>
<li>Faster Filter() for 8bit grayscale images <Thomas M. Boser>
<li>SetEscape(-1) before Decode returns the image width and height only ( for
bmp, jpg, gif, tif ) <ignacio>
<li>new Set/GetJpegScale() before Decode, to open a resized image (for jpeg
only) <ignacio>
<li>new function : CircleTransform for FishEye, Swirle, Cilinder, bathroom effects
<Arkadiy Olovyannikov>
<li>new methos for HistogramStretch: 0 = luminance <dave>, 1 = linked
channels <nipper>, 2 = independent channels <nipper>, and for
grayscale images
<li>faster Light and Gamma <nipper>
<li>CImageIterator new methods: Get/SetCol() to extract a single column.
<li>Better error checking in image initialization functions.
<li>CreateFromHANDLE now reads also RLE compressed bitmaps <Michael Gandyra>
</ul>
<b>Project - Libraries - Demo application</b>
<ul>
<li> Updated zlib to 1.2.1.<Tuncer M. Ayaz></li>
<li>Demo: status bar updated after Crop or drag & drop <VATI> </li>
<li>demoview.h : new Dpoint2d structure <VATI></li>
<li>demodoc.h : new LEN2D macro <VATI></li>
<li>Demo: save/restore window position <VATI></li>
<li>Demo: new DlgText features <VATI></li>
<li>Demo: new Selection tool options: CTRL+Rclick = move selection, shift+Lclick=
rect selection, Rclick on a rect selection = rotate selection <VATI></li>
<li>Moved tif_xfile.cpp from LibTiff to CxImage directory and workspace</li>
<li>Demo2 : Updated FindFormat</li>
<li>Demo : new Mix dialog and menus for CircleTransform</li>
</ul>
<hr>
<h3></h3>
<h3>Version 5.80, 27 - Sep - 2003</h3>
<b>Bugfixes</b>
<ul>
<li> Fixed head.biSize initialization: moved from Startup() to Create() <ralphw>
<li>Fixed problem in SetTransColor when rgbReserved is not 0 and in the image
there is an alpha layer.
<li>CxImageBMP::Decode : force rgbReserved=0 in the palette , to avoid problems
with some WinXp bitmaps. <Colin Urquhart>
<li>Fixed warnings for size_t type in iA64 compiler <Frank Sowinski>
<li>GrayScale from 1, 4 and 24 bit images now preserves info and selection layer
<li>CxImageICO::Decode will not create the alpha layer if it's not strictly
necessary;<br>
and reads images embedded inside a file <yuandi>
<li>CxImageJPG::Decode : check image allocation before further processing.
<li>Fixed DLL_EXP definition and inlined CxImage destructor for older VC++ compilers
<Wassily Gibin>
<li>Fixed CxFileJas::JasClose() bug with memory files <osamu44>
<li> Added missing casts in floating point functions in CxExifInfo <Branko
Drevenšek> <Tuncer M. Ayaz>
<li>Fixed memory leak in CreateFromHICON <Sims>
<li>Fixed access violation in CxImageTIF::Decode with some CieLab images <Vitaly
Titov>
<li>Fixed GDI leak in CxImage::DrawText() <Henry P.>
<li>Crop now works also with the alpha layer. <oboolo>
<li>Fixed bias and canvas size in CxImage::Rotate()
<li>CxImageGIF now stores the comment before the image body.
<li>Encode() functions now check both file and image handlers with EncodeSafeCheck()
<li>IncreaseBpp to 24 bit from images with simple transparency, now sets the
correct transparent color.
<li>CxImageBMP::DibReadBitmapInfo accepts non standard headers if the stored
information is valid
<li>CxImage::Decode with CXIMAGE_FORMAT_UNKNOWN, now preserves CxImage::info
<li>Fixed sizeof(BITMAPFILEHEADER) in CxImageBMP, to avoid struct alignment
errors
</ul>
<b>Changes and major additions</b>
<ul>
<li> New functions Get/SetClrImportant()
<li>Added new clrimportant parameter for DecreaseBpp
<li>Faster Light() for full RGB images
<li>GetPixelIndex returns the index of the top-left pixel when the coordinates
are out of the image and no background color is selected
<li>CxImagePNG::Encode saves info.nBkgndColor (or white) as bKGD color, for
IE
<li>Added "bEditAlpha" parameter to DrawText.
<li>New functions:<br>
SelectionAddPixel <Anatoly Ivasyuk>,<br>
DrawLine <JDL>,<br>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -