github.com/kaydxh/golang@v0.0.131/pkg/gocv/cgo/third_path/graphics-magick/share/doc/GraphicsMagick/ChangeLog.2014 (about) 1 2014-12-31 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 2 3 * coders/wpg.c (UnpackWPGRaster): Fix some compilation and 4 valgrind warnings. 5 6 * NEWS.txt: Updated news again. 7 8 2014-12-31 Fojtik Jaroslav <JaFojtik@seznam.cz> 9 10 * coders/wpg.c Fixed 2bpp issue. 11 12 2014-12-31 Glenn Randers-Pehrson <glennrp@simple.dallas.tx.us> 13 14 * coders/png.c: Validate MHDR chunk length. 15 16 * coders/png.c: Use ReadBlob() once instead of ReadBlobByte() 17 in a loop. 18 19 * coders/png.c: Avoid reading beyond the end of a tEXt keyword. 20 21 2014-12-30 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 22 23 * coders/xpm.c (ReadXPMImage): Detect short XPM rows and report 24 error to user rather than overrunning a buffer. 25 26 * coders/pcx.c (ReadPCXImage): Validate that header bytes per line 27 is sufficient to contain the indicated data. 28 29 * coders/pdb.c (ReadPDBImage): Fix indexes array overrun for 2 and 30 4-bit PDB image files. 31 32 * coders/xpm.c (ReadXPMImage): Avoid strncpy() of overlapping 33 memory. Fix memory leaks in error paths. 34 35 * coders/viff.c (ReadVIFFImage): Validate index before using it to 36 access colormap. 37 38 * coders/{cineon.c, dpx.c} (StringToAttribute): Can't use 39 strlcpy() to copy string which might not be NULL-terminated since 40 strlcpy() continues searching for end of string after size bytes 41 have been copied. 42 43 * coders/meta.c (convertHTMLcodes): Avoid strcpy() of overlapping 44 memory. 45 46 2014-12-29 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 47 48 * www/process.rst: Update description of development process to be 49 more aligned with the process actually used. 50 51 * coders/wpg.c (ReadWPGImage): Avoid use of NULL pointer returned 52 from FlipImage(), FlopImage(), and RotateImage(). 53 54 * coders/rle.c (ReadRLEImage): URT RLE reader is now more robust 55 with errant files. 56 57 2014-12-28 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 58 59 * libtool: Update bundled libtool to version 2.4.4. 60 61 * magick/constitute.c (WriteImage): Remove bogus use of 62 GetBlobStatus() as a catch-all for write errors. Coders should be 63 detecting write errors all by themselves. 64 65 2014-12-27 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 66 67 * NEWS.txt: Updated with more improvements since previous release. 68 69 * coders/palm.c (WritePALMImage): Log header details. 70 71 * coders/pdb.c: PDB reader and writer need to be more robust when 72 calculating packets and buffer allocation. Also log header 73 details. Problem was reported by Hanno Böck. 74 75 2014-12-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 76 77 * NEWS.txt: Updated with more improvements since previous release. 78 79 * ttf: Update bundled Freetype to 2.5.4. 80 81 * png: Update bundled libpng to 1.6.16. 82 83 2014-12-22 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 84 85 * coders/tiff.c (ReadTIFFImage): The libtiff JBIG coder only 86 supports strip images, and fails when scanlines are requested. 87 Force use of stripped read method when the file uses JBIG 88 compression. It is still not possible to write JBIG compressed 89 TIFF files since there is not yet a strip writer. Problem 90 reported by Yuriy Kaminskiyon via the GM-bugs mailing list on 91 2014-12-22. 92 93 2014-12-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 94 95 * coders/tiff.c (QuantumTransferMode): Fix quantum transfer 96 handling for photometrics which might deliver one or three samples 97 per pixel. These were assuming that three samples were always 98 provided. 99 100 2014-12-21 Glenn Randers-Pehrson <glennrp@simple.dallas.tx.us> 101 102 * coders/png.c: Impose a 10-million limit on dimensions 103 when reading a PNG file. 104 105 2014-12-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 106 107 * NEWS.txt: Updated with improvements since previous release. 108 109 2014-12-20 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 110 111 * magick/statistics.c (GetImageStatistics): Failed to compute 112 statistics for the Black channel of CMYK image files. Problem 113 reported by Michael Below via Debian bug 773552: 114 "graphicsmagick-imagemagick-compat: convert to cmyk leaves k 115 channel empty". 116 117 2014-12-14 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 118 119 * magick/delegate.c (InvokeDelegate): Windows spawnvp() splits 120 arguments into more arguments. Add escaping to avoid the 121 splitting. Resolves SourceForge bug #276 "dcraw 9.19 included 122 with gm 1.3.20 doesn't support paths with spaces." 123 124 * magick/utility.c (TranslateTextEx): Fix regression added on 125 2014-12-13 (yesterday) which caused output file name passed to 126 delegate programs to be wrong. 127 128 * magick/annotate.c (RenderFreetype): Fix regression added in 129 1.3.19 which caused spurious drawing errors to be produced while 130 rendering with text when all of the text is off the left-hand side 131 of the image. 132 133 2014-12-13 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 134 135 * magick/command.c (CompareUsage): Options should be listed in 136 alphabetical order. 137 138 * magick/annotate.c (RenderFreetype): Immediately quit processing 139 and return an error if SyncImagePixels() reports a problem. 140 141 * coders/psd.c (ReadPSDImage): Return with an error right away if 142 SetImageEx() (to create solid-color background canvas) reports a 143 failure. 144 145 * magick/annotate.c (AnnotateImage): Document all of the 146 attributes which are supported. 147 148 * magick/utility.c (TranslateTextEx): Assure that attributes 149 requiring ImageInfo pointer are skipped. AnnotateImage() does not 150 pass ImageInfo. Also document all of the attributes which are 151 supported. 152 153 * doc/compare.imdoc: Compare documentation examples referred to 154 non-existing option -algorithm rather than the existing option 155 -highlight-style. Fixes SourceForge bug #286 "docs are wrong 156 about `-algorithm` option of `gm compare`?". 157 158 * Magick++/lib/Magick++/Geometry.h (Magick): Re-implemented 159 Magick++ Geometry to use bit-fields for booleans and used a union 160 to reserve space for the future as well as to achieve the same 161 size as in the previous release. Eliminated inline methods 162 because they make it impossible to change the class internal 163 design. ABI was broken already when limitPixels() and fillArea() 164 methods were added on 2014-11-28. Inline method instantiations in 165 already compiled applications will malfunction unless the 166 dependent applications are re-compiled. 167 168 * magick/image.c (SetImageEx): Add a new version of SetImage() 169 called SetImageEx() which reports exceptions to a provided 170 exception parameter rather than into the image. 171 172 2014-12-01 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 173 174 * magick/colormap.c (AllocateImageColormap): Refuse to allocate a 175 colormap larger than MaxColormapSize. 176 177 * coders/psd.c (ReadPSDImage): Avoid extremely long execution time 178 if the PSD colormap size is astonishingly large. Problem was 179 reported by Hanno Böck. 180 181 2014-11-30 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 182 183 * coders/dcm.c: Verify that DCM data is available before 184 attempting to use it. Avoids a crash due to improper DCM header. 185 Problem was reported by Hanno Böck. 186 (DCM_ReadNonNativeImages): Fix array over-run (off by one error) 187 while looking for end of multi-fragment frames. 188 189 2014-11-29 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 190 191 * coders/sun.c: Thoroughly validate Sun Rasterfile headers and 192 verify that there are no arithmetic overflows in buffer-size 193 calculations. Problem was reported by Hanno Böck. 194 195 2014-11-28 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 196 197 * Magick++/lib/Magick++/Geometry.h (Magick::Geometry): Add and 198 document limitPixels() and fillArea() methods to support '@' and 199 '^' geometry qualifiers. Fill area contributed by Long Ho and 200 limitPixels() by Bob Friesenhahn. 201 202 * www/Magick++/Image.rst: Document extent and resize methods. 203 204 * Magick++/lib/STL.cpp (extentImage): New function object to 205 invoke image extent method. Original implementation contributed by 206 Long Ho. Subsequently modified by Bob Friesenhahn. 207 (resizeImage): New function object to invoke image resize 208 method. Contributed by Long Ho. 209 210 * Magick++/lib/Image.cpp (extent): New method to place image on 211 sized canvas of constant color using gravity. Contributed by Long 212 Ho. 213 (resize): New method to resize image specifying geometry, filter, 214 and blur. Original implementation contributed by Long Ho. 215 Subsequently modified by Bob Friesenhahn. 216 217 2014-11-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 218 219 * coders/avi.c: AVI support in GraphicsMagick is completely 220 unusable and it could never compete with dedicated software like 221 'ffmpeg'. Removing AVI support until such time it can be 222 supported properly. 223 224 * coders/viff.c: Add protections against buffer overflow by 225 verifying that buffer size allocation calculations do not 226 overflow. Also added header logging for read and write. Work 227 performed due to complaint by Hanno Böck. 228 229 2014-11-24 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 230 231 * magick/common.h (MAGICK_NO_SANITIZE_ADDRESS): Add 232 MAGICK_NO_SANITIZE_ADDRESS macro definition for disabling 233 clang/GCC address sanitizer on a function if the need arises. 234 235 2014-11-24 Glenn Randers-Pehrson <glennrp@simple.dallas.tx.us> 236 237 * coders/png.c (ReadPNGImage): Do not attempt to clean up 238 a "previous" NULL PNG image. 239 240 2014-11-24 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 241 242 * coders/xwd.c (ReadXWDImage): Add logging of XWD header values. 243 Fix memory leaks in error reporting paths. Ping mode skips 244 allocating memory for data and colormap. Added a few more header 245 validation checks (not complete). XWD is put in 246 UnstableCoderClass until such time as header validation checks are 247 complete. 248 249 2014-11-22 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 250 251 * coders/pdb.c (WritePDBImage): Use MagickAllocateArray() when 252 allocating packets. 253 254 * coders/dpx.c (ReadDPXImage): Validate DPX header orientation and 255 number of elements. Problem was reported by Hanno Böck. 256 257 2014-11-20 Glenn Randers-Pehrson <glennrp@simple.dallas.tx.us> 258 259 * coders/png.c (ReadJNGImage): Do not attempt to clean up 260 a "previous" NULL JNG image. 261 262 2014-11-17 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 263 264 * www/FAQ.rst: Add a FAQ entry regarding what 'identify' reports. 265 Resolves SF issue #280 "Better documentation for spurious gm 266 identify in Q8 compilation." 267 268 2014-11-16 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 269 270 * magick/enhance.c (ModulateImage): ModulateImage() should produce 271 a progress indication even if only the colormap is modified. 272 273 2014-11-13 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 274 275 * coders/psd.c (ReadPSDImage): Patch by Cédric Demière to fix 276 "Memory allocation failed" error when reading PSDs files which 277 have no layers. Delivered via SF patch #41 "PSD : files without 278 layers". Resolves SF bug #242 "Can not convert PSD to JPG or PNG 279 (gm convert: Memory allocation failed)". 280 281 2014-11-12 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 282 283 * coders/webp.c (WriteWEBPImage): WebP fix by Roman Hiestand to 284 make WebP lossless format truely lossless. 285 286 * tests/rwblob.tap (check_types): Added a test for WebP lossless. 287 288 * tests/rwfile.tap: Added a test for WebP lossless. 289 290 * tests/rwblob.c: Added support for -define. 291 292 * tests/rwfile.c: Added support for -define. 293 294 2014-11-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 295 296 * webp, VisualMagick/webp: Updated bundled WebP to 0.4.2 release. 297 298 2014-11-01 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 299 300 * Magick++/tests/attributes.cpp: Add a simple test for 301 Image::formatExpression(). 302 303 * Magick++/lib/Image.cpp (formatExpression): Handle case where 304 TranslateText() returns NULL. Problem was reported by Dirk 305 Lemstra.. 306 307 2014-10-30 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 308 309 * Magick++/lib/Image.cpp (formatExpression): New method to format 310 a string based on a format similar to command-line -format. 311 Feature was requested by Dirk Lemstra. 312 313 * magick/blob.c (BlobReserveSize): Don't throw an exception if 314 posix_fallocate() fails since it seems that it is not supported 315 for all filesystem types, and is only intended for optimization. 316 317 * Magick++/lib/Image.cpp (resolutionUnits): Return resolution 318 units from Image if available, else return the value from 319 ImageInfo. Issue was reported by Dirk Lemstra. 320 321 2014-10-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 322 323 * coders/pnm.c (ReadPNMImage): Validate PGM, PPM, and PAM header 324 MaxValue parameter. Issue was reported by Hanno Böck. 325 326 * coders/pcx.c (ReadPCXImage): Fix for CVE-2014-8355, eliminate 327 memory leaks in error paths, and add PCX header logging. Issue 328 was reported by Hanno Böck. 329 330 2014-10-14 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 331 332 * wand/wand_symbols.h (MagickSetImageGamma): Fix typo in 333 wand/wand_symbols.h. Resolves SF bug #277. 334 335 2014-10-04 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 336 337 * coders/tiff.c (TIFFIgnoreTags): Avoid warning about unused 338 strtol() return value on Linux. 339 340 * magick/random-private.h ("C"): Move random inlined 341 implementation bits to random-private.h, which is not installed, 342 or used outside of the core C library. 343 344 2014-09-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 345 346 * magick/annotate.c (AnnotateImage): An empty text string should 347 not be treated as an error. Resolves Debian bug 759956. 348 349 2014-08-31 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 350 351 * coders/tiff.c: Added a new define called tiff:ignore-tags that 352 can be used to ignore tags in 'corrupted' files with unknown and 353 invalid tags. Without this patch the file cannot be read and 354 raises an error. Patch by Dirk Lemstra via SF patches #40. 355 356 * magick/type.c (ReadTypeConfigureFile): Support reading type 357 configuration file from Windows resource. Patch by Dirk Lemstra 358 via SF patches #32. 359 360 * Magick++/lib/Magick++/STL.h: Fixed code analysis warning in 361 STL.h. Patch by Dirk Lemstra via SF patches #32. 362 363 * Magick++/lib/Magick++/Include.h: Autolink WebP in Visual 364 Studio. Patch by Dirk Lemstra via SF patches #32. 365 366 2014-08-28 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 367 368 * coders/psd.c (WritePSDImage): Fix small stack over-write if more 369 than 99 layers are written to PSD format. Similar to 370 CVE-2014-1947 for ImageMagick. Changed layer naming to use at 371 least 4 digits. Issue was brought to our attention by Rex Dieter 372 and change is mostly based on his patch. 373 374 2014-08-23 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 375 376 * magick/enum_strings.c (StringToCompositeOperator): Support 377 composite operator names similar to the major brand, without 378 losing any compatibility with previous naming. 379 380 2014-08-23 Glenn Randers-Pehrson <glennrp@simple.dallas.tx.us> 381 * coders/png.c: Fixed handling of transparency when writing 382 indexed PNG. Reference: SourceForge Bug tracker [bugs:#267] 383 Transparency lost when converting from GIF to PNG. 384 385 2014-08-17 Jaroslav Fojtik <JaFojtik@seznam.cz> 386 387 * VisualMagick\configure\configure.cpp Remove webp when attempting 388 to compile with Visual Studio 6. 389 390 2014-08-16 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 391 392 * NEWS.txt: Update for 1.3.20 release. 393 394 * www/index.rst: Update for 1.3.20 release. 395 396 * version.sh: Update library versioning for next release. 397 398 2014-08-12 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 399 400 * png: Updated libpng to 1.6.12 release. 401 402 * zlib: Updated zlib to 1.2.8 release. 403 404 2014-08-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 405 406 * NEWS.txt: Updated NEWS file to document changes since previous 407 release. 408 409 2014-08-09 Jaroslav Fojtik <JaFojtik@seznam.cz> 410 411 * coders/webp.c webp cannot be compiled when HasWEBP is not set. 412 413 2014-08-08 Glenn Randers-Pehrson <glennrp@simple.dallas.tx.us> 414 415 * coders/png.c: Eliminated palette and depth optimization (see 416 https://sourceforge.net/p/graphicsmagick/feature-requests/35/). 417 418 2014-08-06 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 419 420 * dcraw/dcraw.c: Fix dcraw build for x64 target when only WIN64 is 421 defined (by also defining WIN32). 422 423 * VisualMagick/configure/configure.cpp (write_file): Fix problem 424 with x64 project naming which caused object file disambiguation 425 not to work for x64 target. Make line terminations consistent. 426 427 2014-08-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 428 429 * VisualMagick: VisualMagick fixes by Dirk Lemstra to improve 430 configure program so that it is possible to select QuantumDepth, 431 OpenMP, and 64-bit build via configure dialog boxes as well as 432 options on the command line. Also automatically detects and deals 433 with similarly named files in subdirectories so that WebP support 434 can now build successfully. Resolves SF patches 31, 33, 35, 37, 435 and 38. 436 437 2014-07-27 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 438 439 * magick/nt_base.c (NTResourceToBlob): Support loading mgk files 440 as Windows resource from library if MagickLibName is defined. 441 Patch contributed by Dirk Lemstra via SF patch #32. 442 (NTGhostscriptDLL): For Microsoft Windows, add support for a 443 MAGICK_GHOSTSCRIPT_PATH environment variable which specifies the 444 path to Ghostscript. If this environment variable is defined, 445 then the Windows registry is not used to find Ghostscript. Patch 446 contributed by Dirk Lemstra via SF patch #39. 447 448 * magick/log.c: Added SetLogMethod() to allow an 449 application/library to specify a function to be called for 450 logging. Patch contributed by Dirk Lemstra. 451 452 2014-07-20 Glenn Randers-Pehrson <glennrp@simple.dallas.tx.us> 453 454 * coders/bmp.c: "opacity" read from a BMP3 is actually "alpha", 455 so store q->opacity=MaxRGB-opacity instead of q->opacity=opacity. 456 Reference: Bug tracker [bugs:#271] Blank result for BMP resize. 457 458 2014-07-20 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 459 460 * webp, VisualMagick/webp: Integrate webp 0.4.0 into windows 461 build. May require manual renaming of output object files in 462 project files to build webp until VisualMagick configure is 463 improved! 464 465 2014-07-19 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 466 467 * magick/composite.c: fmin() and fmax() are defined by C'99 and 468 not available everywhere, so add and use MagickFmin() and 469 MagickFmax() to improve portability. 470 471 2014-07-11 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 472 473 * Magick++/lib/Magick++/Image.h (Magick): Fix complilation errors 474 caused by continued raw use of __attribute__. 475 476 2014-06-30 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 477 478 * magick/composite.c: Fixes by Brendan Lane for color channel 479 overflows in modified/new quantum operators. Fixes test suite 480 results for Q32 build and makes LinearBurn and LinearDodge work 481 correctly at all. 482 483 * wand/pixel_wand.c (PixelSetMagenta): Fix documentation. 484 Resolves SourceForge bug #273 'Green Magenta' typo in docs. 485 486 2014-06-28 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 487 488 * magick/composite.c: Composition improvements and additions 489 contributed by Brendan Lane via SourceForge patch #34 "Most of the 490 missing Photoshop separable compositing operations" 491 (https://sourceforge.net/p/graphicsmagick/patches/34/). These 492 composition operators were modified to include alpha in their 493 computations: Difference, Darken, Lighten, HardLight, and these 494 operators were added Overlay, Exclusion, ColorBurn, ColorDodge, 495 SoftLight, LinearBurn, LinearDodge, LinearLight, VividLight, 496 PinLight, HardMix. 497 498 2014-06-22 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 499 500 * magick/composite.c (ScreenCompositePixels): Implementation of 501 Screen composite contributed by Brendan Lane. SourceForge patch 502 #30 "Missing Screen composite operation". 503 504 * wand/magick_compat.c: Re-worked Wand library implementation to 505 depend directly on GraphicsMagick library functionality rather 506 than using ImageMagick shim code from magick_compat.c and 507 magick_compat.h. The magick_compat.c source module becomes "dead 508 code", which remains only to support the existing ABI, and will be 509 deleted at the next major ABI break point. 510 511 * magick/utility.c (MagickFormatString): New private function to 512 format a string into a buffer with a specified size. Same as 513 previously existing FormatString() except requires a length 514 argument. 515 516 2014-06-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 517 518 * wand/magick_compat.h: Use MAGICK_ATTRIBUTE definition from 519 magick/common.h. 520 521 * magick/common.h (MAGICK_ATTRIBUTE): Don't undefine __attribute__ 522 since this may be used by system or compiler headers. Define 523 private macro instead. Resolves SourceForge bug #270 "Compile 524 error with g++ -std=c++11". 525 526 2014-06-06 Glenn Randers-Pehrson <glennrp@simple.dallas.tx.us> 527 528 * coders/png.c (ReadOnePNGImage): Free png_pixels and 529 quantum_scanline before error return. Use "png_error()" 530 instead of "ThrowException2()" for errors occuring while 531 decoding a PNG so proper cleanup will happen. 532 533 2014-06-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 534 535 * coders/tiff.c (ReadTIFFImage): Make sure that libtiff warnings 536 are promoted to errors for critical tags. 537 538 2014-06-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 539 540 * coders/tiff.c (ReadTIFFImage): Be quite a lot more draconian 541 when retrieving the baseline standard TIFF tags we need in order 542 to avoid consuming uninitalized data later. An error with these 543 tags will result in failure to read the image file. 544 545 2014-05-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 546 547 * magick/operator.c: Decided that ThresholdBlackNegateQuantumOp 548 and ThresholdWhiteNegateQuantumOp should set the result to white 549 or black respectively rather than being based on subtraction. 550 551 2014-05-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 552 553 * Makefile.am (AUTOMAKE_OPTIONS): Be ultra-pedantic with CPPFLAGS 554 and include paths in order to assure that only required 555 directories are supplied, and to avoid accidential collision with 556 system header files. 557 558 2014-05-17 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 559 560 * magick/operator.h ("C"): New quantum operators 561 ThresholdBlackNegateQuantumOp and ThresholdWhiteNegateQuantumOp. 562 These correspond to -operator "Threshold-Black-Negate" and 563 "Threshold-White-Negate". 564 565 2014-05-11 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 566 567 * magick/composite.c (MultiplyCompositePixels): Multiply 568 composition now uses SVG interpretation of how alpha should be 569 handled. No longer does a simple multiply of alpha channel. 570 Behavior change. Patch contributed by Sara Shafaei. 571 572 * coders/msl.c (ProcessMSLScript): Deal with case where 573 image_info->attributes is NULL. 574 575 2014-04-29 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 576 577 * magick/utility.c (TranslateTextEx): Support additional format 578 specifiers 'g', 'A', 'C', 'D', 'G', 'H', 'M', 'O', 'P', 'Q', 'T', 579 'U', 'W', 'X', and '@'. 580 (GetMagickGeometry): Support '>' and '<' qualifiers with '@' 581 qualifier to specify if image should be resized if larger or 582 lesser than given area specification. Resolves SourceForge bug 583 #216 ">" wont take effect when use @ to specify the maximum area. 584 585 * magick/transform.c (GetImageMosaicDimensions): Move mosaic 586 dimensions code to a static function for possible future re-use. 587 588 2014-04-23 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 589 590 * magick/gradient.c (GradientImage): Update image is_grayscale and 591 is_monochrome flags based on gradient color properties. 592 593 2014-04-20 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 594 595 * magick/utility.c (GetMagickGeometry): Deal with resize geometry 596 missing width or height (e.g. '640x' or 'x480') by substituting 597 the missing value with one which preserves the image aspect ratio. 598 This has been documented to be supported since almost the dawn of 599 GraphicsMagick but was not actually supported until now. 600 601 2014-04-19 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 602 603 * doc/options.imdoc: Document WebP encoder options. 604 605 * coders/webp.c (WriteWEBPImage): Support all of the WebP encoder 606 options via -define arguments. Most of this work is contributed 607 by Roman Hiestand. 608 609 * configure.ac: User-provided LIBS should be prepended to LIBS 610 that configure script produces so that user option takes 611 precedence. 612 613 2014-04-12 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 614 615 * PerlMagick/Magick.xs: Added support for HardLight composition 616 operator. 617 618 * www/perl.rst: Update PerlMagick documentation, including the 619 composition operators. 620 621 * coders/xcf.c (GIMPBlendModeToCompositeOperator): Use new 622 HardLight composition operator to support XCF GIMP_HARDLIGHT_MODE 623 blend mode. Contributed by Sara Shafaei. 624 625 * coders/psd.c (CompositeOperatorToPSDBlendMode): Use new 626 HardLight composition operator to support PSD "hLit" blend mode. 627 Contributed by Sara Shafaei. 628 629 * wand/magick_wand.c (MagickOperatorImageChannel): New function to 630 apply an operator to an image channel. Contributed by Sara 631 Shafaei. 632 633 * magick/composite.c (HardLightCompositePixels): New HardLight 634 composition operator. Contributed by Sara Shafaei. 635 636 2014-04-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 637 638 * magick/command.c (BenchmarkImageCommand): Add a CSV title line 639 and quoting to benchmark -rawcsv output. 640 641 2014-04-05 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 642 643 * coders/webp.c: Add progress indication support to WebP writer. 644 645 * magick/command.c (VersionCommand): WebP support is included in 646 -version output. 647 648 * coders/webp.c: WebP coder identifies library version and header 649 ABI versions. Improve WebP error reporting. 650 651 2014-04-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 652 653 * coders/tiff.c (WriteTIFFImage): Allow specifying the TIFF image 654 software tag. In the special case that the string length is zero 655 (e.g. -set software '') then the tag is skipped entirely. This is 656 to support SourceForge feature request #37 "Option to prevent 657 addition of Exif Software tag" opened by Jean-Louis Grall. Please 658 note that this tag is not an EXIF tag. 659 660 * magick/command.c: composite, convert, display, mogrify, and 661 import now support +set to remove an existing image attribute. 662 663 2014-03-16 Glenn Randers-Pehrson <glennrp@simple.dallas.tx.us> 664 665 * coders/png.c: Don't block threads when PNG_SETJMP_SUPPORTED is 666 not enabled. 667 668 * coders/png.c: Changed prefix of macros defined in coders/png.c 669 from PNG_ to GMPNG_. PNG_ is reserved for macros defined by 670 libpng. 671 672 2014-03-16 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 673 674 * magick/blob.c: Don't use setvbuf() to set stdio block size if 675 filesystem block size is zero (e.g. MAGICK_IOBUF_SIZE=0) 676 677 2014-03-12 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 678 679 * tests/{rwblob.tap, rwfile.tap}: Added tests for WEBP. 680 681 * tests/{rwblob.c, rwfile.c}: Add lossy hint for WEBP. 682 683 * coders/webp.c (WriteWEBPImage): Fix inverted return status. 684 Added a tiny bit of logging. 685 686 2014-03-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 687 688 * ttf: Updated FreeType to release 2.5.3 of March 6, 2014. 689 Provides security fixes for CVE-2014-2240. 690 691 * jpeg: Update to libjpeg 9a of 19-Jan-2014. 692 693 * png: Update to Libpng 1.6.10 - March 6, 2014. 694 695 2014-03-06 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 696 697 * magick/nt_base.c (NTResourceToBlob): According to Microsoft 698 Report article 193678 (http://support.microsoft.com/kb/193678), 699 FreeResource() is not needed in WIN32 and performs no useful 700 function. Remove use of it. Also remove use of UnlockResource() 701 which is similarly unuseful for WIN32. 702 703 * configure.ac (MAGICK_LIBRARY_REVISION): Test for Windows 704 _aligned_malloc() is not reliable. Use Windows CRT version to 705 decide if it is available. 706 707 2014-03-05 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 708 709 * magick/studio.h: Make sure that Windows _aligned_malloc() is not 710 used under MinGW unless the CRT version allows it. 711 712 2014-02-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 713 714 * magick/pixel_cache.c (InterpolateViewColor): Applied patch by 715 Troy Patteson plus fixes to ignore opacity channel if image matte 716 is false. Replaces most of the code rewritten on 2014-02-16 and 717 which produced a faint darkened border. The results look stellar 718 now. 719 720 2014-02-24 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 721 722 * magick/shear.c: Applied patch by Troy Patteson to improve 723 non-integral rotation by around 40% by minimizing added image 724 borders. This may cause small differences in results for some 725 images. 726 727 * reference/filter/Rotate10.miff: Update rotate 10 degrees 728 reference image so that PerlMagick test passes. 729 730 * magick/shear.c: Applied patch by Troy Patteson to fix 731 SourceForge issue #260 "Rotation exhibits clipping/shearing errors 732 for short wide images at some angles". 733 734 2014-02-22 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 735 736 * doc/options.imdoc: Fix documentation to note that 'unspecified 737 alpha' is the GraphicsMagick default when writing TIFF rather than 738 'associated alpha'. Much thanks to Mats Peterson for alerting us 739 of this error. 740 741 2014-02-16 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 742 743 * magick/pixel_cache.c (InterpolateViewColor): Added a hack so that 744 affine transformations and displace composite do not have 745 background colored fringing on the transferred image edges when 746 the background is completely transparent. Fringing problem was 747 caused by one or more of the line ends being a transparent pixel 748 outside of the bounds of the original image content. May not be 749 the final solution. 750 751 2014-02-14 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 752 753 * magick/semaphore.c (AcquireSemaphoreInfo): Document that this 754 function was deprecated. 755 (LiberateSemaphoreInfo): Document that this function was 756 deprecated. 757 758 2014-02-11 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 759 760 * coders/psd.c (RegisterPSDImage): Set PSD to UnstableCoderClass 761 since its implementation is currently rather marginal. It may 762 even be that this coder deserves to be marked with the new 763 BrokenCoderClass. We are still looking for a volunteer to iron 764 out the wrinkles in the PSD reader. 765 766 * magick/magick.h (CoderClass): Added BrokenCoderClass to mark 767 coders which often malfunction or are not very useful in their 768 current condition. Sometimes there is still hope that problems 769 will be resolved and so the source file is not outright deleted. 770 This setting allows us to mark and use coders which might 771 malfunction by defining MAGICK_CODER_STABILITY=BROKEN in the 772 environment while not causing danger for normal use. 773 774 2014-02-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 775 776 * wand/magick_wand.c: Documentation improvements for 777 MagickSetInterlaceScheme() and MagickSetImageInterlaceScheme(). 778 Resolves SourceForge bug #262 "setImageInterlaceScheme doesn't 779 make image progressive". 780 781 2014-02-06 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 782 783 * coders/{ps.c, ps2.c, ps3.c, pdf.c}: Only use resolution from 784 image or -density if units was properly specified. Without units, 785 resolution is worthless. 786 787 * coders/ps3.c (WritePS3Image): Use image resolution similar to PDF 788 changes. 789 790 * coders/ps2.c (WritePS2Image): Use image resolution similar to PDF 791 changes. 792 793 * coders/ps.c (WritePSImage): Use image resolution similar to PDF 794 changes. 795 796 * coders/pdf.c (WritePDFImage): Use resolution from image if it 797 appears to be valid. Resolves SourceForge issue #261 "PNG Pixel 798 Density Not Preserved Converting to PDF". 799 800 * magick/enum_strings.c (StringToResolutionType): New function to 801 convert ResolutionType to C string. 802 (ResolutionTypeToString): New function to convert from C string to 803 ResolutionType. 804 805 2014-02-01 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 806 807 * wand/magick_wand.c (MagickGetImageGeometry): New function to get 808 the image geometry string. This function and the three others in 809 this change set are contributed by Sara Shafaei. 810 (MagickGetImageMatte): New function to read the image matte 811 (opacity) channel enable flag. 812 (MagickSetImageGeometry): New function to set the image geometry 813 string. 814 (MagickSetImageMatte): New function to set the image matte 815 (opacity) channel enable flag. 816 817 2014-01-31 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 818 819 * wand/magick_wand.c (MagickDrawImage): Remove development debug 820 fprintf which causes each drawing primitive to be printed to 821 stderr. 822 823 2014-01-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 824 825 * coders/pnm.c (ReadPNMImage): Fix scaling of alpha in sub-ranged 826 pixels. Addresses SourceForge issue #237 "Incorrect MAXVAL 827 scaling when reading PAM images", which was not fully fixed in by 828 the previous attempt. 829 830 2014-01-19 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 831 832 * magick/tsd.c: Implement TSD for "pure" OpenMP mode without 833 relying on POSIX or WIN32 TSD APIs. 834 835 * magick/semaphore.c: Implement OpenMP-based locking so that code 836 can compile in a "pure" OpenMP mode without relying on POSIX or 837 WIN32 locking APIs. 838 839 * configure.ac: --without-threads no longer disables use of 840 OpenMP. Use the already existing option --disable-openmp to 841 disable OpenMP. 842 843 2014-01-12 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 844 845 * magick/common.h: Support use of clang/llvm __attribute__ and 846 __builtin extensions similar to the existing support for GCC. 847 848 2014-01-05 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 849 850 * Magick++/lib/Image.cpp (thumbnail): New method for fast image 851 resizing, particularly to make thumbnails. 852 853 * coders/gif.c: Log when Netscape loop exension is read and 854 written. 855 856 * coders/png.c (WriteOnePNGImage): In optimize mode, disable matte 857 channel immediately if there are no non-opaque pixels. Also added 858 some useful logging. Resolves SourceForge issue #252 "convert an 859 8bit PNG result in a corrupted image ". 860 861 * wand/magick_wand.c (MagickSetImageGravity): New Wand method to 862 set image gravity. 863 (MagickGetImageGravity): New wand method to get image gravity. 864 865 2014-01-02 Glenn Randers-Pehrson <glennrp@simple.dallas.tx.us> 866 867 * coders/png.c (ReadOnePNGImage): Use libpng function 868 png_set_strip_16_to_8() when scaling 16-bit input PNG down to 869 8-bit in a Q8 build. The png_set_scale_16_to_8() function is 870 more accurate, but the slight difference causes reference tests 871 to fail and causes unexpected difference between the behavior 872 of PNG and other formats. If png_set_strip_16_to_8() is not 873 supported in libpng, then we use png_set_scale_16_to_8() if 874 that is available. 875 876 2014-01-01 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 877 878 * INSTALL-windows.txt: Update for 2014. 879 880 * INSTALL-unix.txt: Update for 2014. 881 882 * Copyright.txt: Update for 2014. 883 884 * NEWS.txt: Update for 2014. 885 886 * README.txt: Update for 2014. 887 888 * doc: Update for 2014. 889 890 * www: Update for 2014. 891 892 * VisualMagick/installer: Update for 2014. 893 894 * ChangeLog: Rotate Changelog to ChangeLog.2013 for 2014. 895