github.com/kaydxh/golang@v0.0.131/pkg/gocv/cgo/third_path/graphics-magick/share/doc/GraphicsMagick/ChangeLog.2005 (about) 1 2005-12-31 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 2 3 * tiff: Update to libtiff 3.8.0. 4 5 2005-12-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 6 7 * NEWS: Updated with latest changes. 8 9 * tiff: Update to libtiff 3.7.4. 10 11 2005-12-24 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 12 13 * lcms: Update to lcms 1.15. 14 15 2005-12-19 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 16 17 * magick/enhance.c (LevelImage): Fix -level command parsing when a 18 percent symbol is supplied within the argument rather than at the 19 end. 20 21 * magick/utility.c (GetGeometry): Bounds-check geometry string 22 length. 23 24 2005-12-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 25 26 * coders/dpx.c: Decided to swap 10-bit subsampled 4:2:2 YCbCr by 27 default since this is what practically all sample files I have 28 been provided actually do. Ignore the fact that there is nothing 29 in the standard which supports this. 30 31 2005-12-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 32 33 * magick/command.c (NormalizeSamplingFactor): Generalized 34 subsampling notation parsing support. 35 36 2005-12-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 37 38 * magick/command.c (NormalizeSamplingFactor): Add some support for 39 normalizing industry-standard subsampling notation (e.g. 4:2:2) 40 into GraphicsMagick's unusual notation. 41 42 2005-12-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 43 44 * Updates to use latest development autotools, including 45 development libtool 2.0. 46 47 2005-12-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 48 49 * magick/image.h: Added some useful macros for accessing 50 PixelPacket members in a generic way. 51 52 * coders/dpx.c (ReadDPXImage): For YCbCr with `A` sample, `A` 53 sample levels are like Luma. 54 (WriteDPXImage): For YCbCr with `A` sample, `A` sample levels are 55 like Luma. 56 57 2005-12-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 58 59 * coders/tiff.c (RegisterTIFFImage): Report libtiff release 60 version rather than ABI version. 61 62 2005-11-27 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 63 64 * magick/resize.c: Revert yesterday's benign-appearing edits since 65 they caused a bizzare bug. 66 67 2005-11-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 68 69 * coders/dpx.c (ReadDPXImage): Improve performance when reading 70 YCbCr files. Handle files which use Printing Density on top of 71 YCbCr. Default YCbCr to Rec.709 if the transfer characteristic is 72 User Defined. 73 74 * coders/pcd.c (Upsample): Moved Upsample from gem.c to here since 75 PCD is the only user and it is not a general purpose function. 76 77 2005-11-14 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 78 79 * VisualMagick/magick/magick_config.h.in: Remove unnecessary test 80 for WIN32. 81 82 2005-11-13 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 83 84 * wand/magick_compat.c (FormatMagickStringList): MagickExport since this 85 function is used by Ch extension. 86 87 * magick/log.c (LogMagickEventList): MagickExport since this 88 function is used by Ch extension. 89 90 * magick/utility.c (FormatStringList): MagickExport since this 91 function is used by Ch extension. 92 93 * coders/dpx.c (ReadDPXImage): Added support for dpx:swap-samples 94 define in order to handle files with Cb and Cr swapped. Fixed a 95 bug in the header reading which caused some valid files to fail to 96 read at all. 97 (WriteDPXImage): Added support for dpx:swap-samples define in 98 order to write files with Cb and Cr swapped. 99 100 * magick/profile.c (ProfileImage): Add support for ICC CMS 101 profiles in YCbCr space. 102 103 2005-10-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 104 105 * coders/svg.c (ReadSVGImage): Eliminate memory leak. 106 107 2005-10-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 108 109 * magick/image.h (Image): Added an orientation member to the Image 110 structure to record image orientation for the DPX, and TIFF 111 formats. Eventually formats which support IPTC and EXIF embedded 112 profiles should be supported by the orientation member as well. 113 114 2005-10-08 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 115 116 * VisualMagick/magick/magick_types.h.in: Add patch for Ch. 117 118 * magick/command.c (TransmogrifyImage): Complete re-write of 119 mogrify file handling. Former version wrote to a temporary file 120 and then moved temporary file to replace original if necessary. 121 New version moves an existing writable file to a backup file with 122 tilde (`~`) added to end of file name, writes to the final output 123 file name, and removes the backup file on success. The new 124 approach satisfies formats which embed the output name in the file 125 (e.g. the DPX format) and still works when the output file exists 126 and is writeable, but is in non-writeable directory. The previous 127 approach would fail if the output file exists and is writable, but 128 the directory is not writeable. 129 130 2005-10-01 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 131 132 * coders/dpx.c (AttributeToString): Use strncpy rather than 133 strlcpy to copy string. This is important since DPX header 134 strings are not null terminated and may need to fill all available 135 space. Certain short header fields like mp.film.manufacturer.id, 136 mp.film.type, and mp.perfs.offset were being truncated! 137 138 2005-09-25 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 139 140 * magick/attribute.c (GetImageAttribute): Add more general support 141 for retrieving wildcarded attributes so that an identify -format 142 specification like `%[dpx:*]` works as expected. 143 144 * coders/tiff.c (WriteTIFFImage): Transform quality value into zip 145 compression quality level similar to what is done for MIFF/MNG/PNG. 146 Since default quality value is 75, this means that the default zip 147 quality level is 7. 148 149 2005-09-24 Peter Wu <peterw@softintegration.com> 150 151 * Incorporate changes necessary so that GraphicsMagick can work 152 with the Ch C/C++ interpreter from SoftIntegration at 153 http://www.softintegration.com/. 154 155 2005-09-23 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 156 157 * magick/pixel_cache.c: Incorporate all functionality from 158 cache.c, cache_view.c, and stream.c so that all private interfaces 159 can be fully hidden. As a result cache.c, cache_view.c, and 160 stream.c are now removed. 161 162 2005-09-18 Michal Kowalczuk <sammael@brzydal.eu.org> 163 164 * coders/gif.c: Free global_colormap before returning with error. 165 166 2005-09-18 Stepan Kasal <kasal@ucw.cz> 167 168 * Makefile.am (BUILT_SOURCES): Removed. 169 170 * magick/Makefile.am (MAGICK_BUILT_SRCS): Removed, too. 171 172 2005-09-12 Glenn Randers-Pehrson <glennrp@glennrp.com> 173 174 * magick/profile.c (ProfileImage): Free color_profile->name 175 and iptc_profile->name when destroying the profile. 176 177 2005-08-28 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 178 179 * magick/api.h: Eliminate requirement to include certain system 180 headers prior to including <magick/api.h>. 181 182 * utilities/gm.c: Move utility implementation to GMCommand() in 183 command.c 184 185 2005-08-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 186 187 * coders/dpx.c: Added support for reading and writing DPX Luma 188 files using proper video levels. 189 190 * magick/colorspace.h (enum ColorspaceType): Decided that 191 GRAYColorspace should be reserved for full-range grayscale data 192 while Rec601LumaColorspace and Rec709LumaColorspace should be for 193 video colorspaces. Therefore, GRAYColorspace is no longer a 194 synonym for Rec601LumaColorspace. 195 196 * magick/colorspace.c: Added support for influencing Cineon Log 197 colorspace transformations via image attributes. 198 Perform colorspace transformations in floating point rather than 199 integer in order to reduce the amount of noise added by 200 transform table quantization. 201 202 * coders/psd.c (WritePSDImage): Ensure that output image is 8 or 203 16-bits regardless of specific image depth. 204 205 * coders/dpx.c: Added support for planar YCbCr 4:2:2. 206 207 2005-08-04 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 208 209 * coders/dpx.c (WriteDPXImage): 10 and 12-bit packed data was not 210 according to DPX specification. Added dpx:pixel-endian={lsb|msb} 211 to allow the user to specify the endian order of the pixel data in 212 case it does (or should not) not match the headers. Library Of 213 Congress format is 10-bit packed data in big-endian format, but is 214 marked as little-endian. 215 216 2005-08-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 217 218 * coders/dpx.c: Sample order for filled 10 bit samples matches DPX 219 specification (was intentionally reversed). RGB sample order is 220 changed to match DPX specifiation (i.e. BGR rather than RGB). 221 Disabled special support for Library Of Congress little-endian 222 10-bit packed format. 223 224 2005-08-01 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 225 226 * coders/dpx.c: Extend all image rows to a 32-bit integer 227 boundary. 228 229 2005-07-31 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 230 231 * coders/dpx.c: Support the little-endian 10-bit packed format as 232 used by the Library Of Congress. 233 234 2005-07-27 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 235 236 * coders/jp2.c: Change how Jasper is intialized. Hopefully 237 eliminate memory leak when reading ICC color profile. 238 239 * Overall: Compilation warning elimination with GCC 4.0.1. 240 241 * magick/utility.c (SystemCommand): Always report error status if 242 a command fails. 243 244 2005-07-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 245 246 * zlib: Updated to version 1.2.3. 247 248 * coders/dpx.c: Use TriangleFilter for scaling chroma. 249 250 2005-07-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 251 252 * coders/dpx.c: Support proper encode and decode of YCbCr video 253 levels. 254 255 * magick/colorspace.c: Support Rec709YCbCrColorspace colorspace. 256 257 2005-07-05 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 258 259 * magick/{animate.c, display.c, import.c, xwindow.c}: Rename all 260 symbols starting with `X` so that they are prefixed with `Magick`. 261 This eases maintenance since it is almost impossible to understand 262 code which pretends to be the X11 libraries. The few programs 263 which use the GraphicsMagick `X` functions will need to alter the 264 symbol names they use. Sorry. 265 266 * magick/command.c (DisplayImageCommand): Don't invoke 267 XrmDestroyDatabase() to destroy the resource database associated 268 with the display since it seems that XCloseDisplay() does this for 269 us. 270 271 * magick/image.c (DisplayImages): Don't invoke 272 XrmDestroyDatabase() to destroy the resource database associated 273 with the display since it seems that XCloseDisplay() does this for 274 us. 275 276 * coders/uyvy.c: Enforce image width restrictions. 277 278 * coders/dpx.c: Enforce image width restrictions when subsampling. 279 280 2005-07-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 281 282 * coders/dpx.c: Support reading and writing subsampled CbYCr 283 images. Colorimetery is not right yet. 284 285 * magick/colorspace.h (enum Rec709YCbCrColorspace): New 286 enumeration for Rec. 709 YcBCr colorspace. 287 288 2005-06-21 Glenn Randers-Pehrson <glennrp@glennrp.com> 289 290 * coders/png.c: Fixed a problem with reading 16-bit PNG images 291 using the Q8 quantum depth. 292 293 2005-06-19 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 294 295 * coders/dpx.c (ReadDPXImage): Add read support for CbYCr at 4:4:4. 296 (WriteDPXImage): Add write support for CbYCr at 4:4:4. 297 298 2005-06-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 299 300 * coders/dpx.c (WriteDPXImage): Only preserve source image 301 dimension and offset information if image size has not changed. 302 If image size has changed, the existing information may become 303 invalid. 304 (WriteDPXImage): Allow user to assign DPX header attribute values 305 using syntax like "-define dpx:mp.frame.position=1000". 306 307 2005-06-12 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 308 309 * coders/fpx.c: Fix compilation problem due to additional 310 ExportImagePixelArea parameter. 311 312 2005-06-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 313 314 * coders/png.c (WriteMNGImage): Use -define mng:need-cacheoff to 315 write a libmng-specific nEED request to disable frame buffering. 316 This allows the MNG data to stream without increasing memory 317 consumption in the libmng client. 318 319 2005-06-07 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 320 321 * coders/dpx.c (SMPTEStringToBits): Time code and user bits were 322 being displayed in wrong order on little endian CPUs. Thanks very 323 much for bug report from Jason Howard. 324 (SMPTEStringToBits): Similar fix for time code and user bits 325 string to binary. 326 327 2005-06-05 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 328 329 * coders/miff.c (ReadMIFFImage): Use StringToColorspaceType() to 330 parse colorspaces. 331 * coders/dpx.c (ReadDPXImage): Change existing 332 dpx:source-colorspace define to dpx:colorspace so it is easier to 333 remember. 334 335 * coders/cineon.c (ReadCINEONImage): Extract Cineon header 336 attributes in DPX compatible form so that it is possible to 337 convert Cineon to DPX while losing as little header information as 338 possible. Allow the user to set the existing image colorspace 339 using the cineon:colorspace define. 340 341 2005-06-01 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 342 343 * coders/jpeg.c (ReadJPEGImage): Report actual depth of JPEG file 344 (8 or 12 bits). 345 346 * coders/cineon.c (ReadCINEONImage): Report depth as 10 bits. 347 348 2005-05-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 349 350 * coders/dpx.c: Retrieve and restore the DPX user defined data 351 area. Make available as a "DPXUSERDATA" attached profile. 352 353 2005-05-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 354 355 * coders/meta.c (ReadMETAImage): Fixed reading ICM color profile 356 files. Due to a typo ICM color profiles were being stored as IPTC 357 profiles. This restores proper operation of the -profile option. 358 (ReadMETAImage): Fix double free bug. Hopefully does not result 359 in a memory leak in other cases. 360 361 2005-05-19 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 362 363 * magick/image.c (DescribeImage): If the image is DirectClass, 364 then don't compute the number of unique colors unless verbose is 365 greater than one. This change is made since computing the number 366 of unique colors may take hours for some images. The handling of 367 the -verbose argument is changed so that it is cumulative. 368 Specifying -verbose multiple times increases the level of 369 verbosity. 370 371 2005-05-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 372 373 * magick/nt_base.c (NTreaddir): Fix write beyond buffer length 374 reported in SourceForge issue #1182003. Only impacts Windows. 375 376 2005-05-17 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 377 378 * coders/dpx.c (ReadRowSamples): Added necessary masking necessary 379 in order to cleanly retrieve DPX 10 bit samples. Happened to work 380 properly without the masking with QuantumDepth=16. 381 382 2005-05-16 Tavis Ormandy <taviso@gentoo.org> 383 384 * coders/xwd.c (ReadXWDImage): Fix for infinite loop in the xwd 385 decoder when calculating the shift r/g/b values and the mask is 386 set to zero. 387 388 2005-05-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 389 390 * coders/jp2.c (ReadJP2Image): Return JP2 images as DirectClass 391 grayscale rather than PseudoClass. 392 393 * coders/gray.c (ReadGRAYImage): Return GRAY images as DirectClass 394 grayscale rather than PseudoClass. 395 396 * coders/dpx.c: Rewrote the DPX pixel reading/writing code yet 397 again to obtain up to 2X better performance. In the process, 398 support little-endian pixel storage. 399 400 2005-05-11 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 401 402 * coders/dpx.c: Added some performance optimizations for reading 403 and writing. Write the motion picture and television headers. 404 405 * magick/colorspace.c (TransformRGBImage): Update image colorspace 406 to RGB when transforming from Cineon log space to RGB. 407 408 * coders/dpx.c (WriteDPXImage): Set image date & time field. 409 (ReadDPXImage): Retrieve television header SMTPE time code and 410 user bits and return them as a formatted string. 411 (WriteDPXImage): Fix colorspace mapping logic. Was converting 412 Cineon log to RGB when it shouldn't be. 413 414 2005-05-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 415 416 * coders/dpx.c (WriteDPXImage): Default to big-endian output. 417 418 * magick/delegate.c (InvokePostscriptDelegate): Improved 419 Ghostscript API-based error reporting and logging. 420 421 * magick/attribute.c (GenerateEXIFAttribute): Extend EXIF 422 knowledge a bit. Pass more characters from EXIF_FMT_BYTE in case 423 the byte stream contains nulls. 424 425 * coders/dpx.c: Re-wrote the DPX read/write support in order to 426 hopefully surmount problems noticed when testing with files sent 427 to me. 428 429 * wand/pixel_wand.c (PixelSetYellowQuantum): Wrong PixelPacket 430 member was being set. Thanks to Cristy for the heads-up. 431 432 * magick/image.c (SetImageType): Revert change from 2005-03-12. 433 Some coders require that when the image is set to Bilevel type, 434 that it be PseudoClass. 435 436 2005-04-28 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 437 438 * utilities/tests/convolve.sh: Add a convolution parameter. 439 440 2005-04-28 Glenn Randers-Pehrson <glennrp@glennrp.com> 441 442 * magick/command.c: "IsGeometry() test was rejecting valid 443 -convolve parameters. Also, the image returned by ConvolveImage() 444 was ignored. 445 446 2005-04-25 Glenn Randers-Pehrson <glennrp@glennrp.com> 447 448 * coders/png.c: Initialize several variables to avoid new 449 GCC 4.0.0 warnings. 450 451 * coders/pnm.c: Defend against malicious "P7" files that try 452 to set the colormap less than 256 bytes (bug fix from ImageMagick) 453 454 2005-04-24 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 455 456 * coders/dpx.c (WriteDPXImage): Fill out source information 457 header. 458 459 * Magick++: Added image leveling methods for Magick++. 460 461 2005-04-23 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 462 463 * NEWS: Update with latest news. 464 465 * magick/blob.c (WriteBlob): Move BlobStream write support to a 466 subroutine for easier maintenance. 467 468 * coders/dpx.c (ReadDPXImage): Support retrieving all DPX 469 attributes as image attributes. 470 (WriteDPXImage): Buffer writes for better performance on some 471 platforms. 472 473 2005-04-17 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 474 475 * coders/dpx.c (WriteDPXImage): Re-write sample marshalling to be 476 based on a series of tighter loops. Results in a small 477 performance increase. 478 (ReadDPXImage): Re-write sample marshalling to be 479 based on a series of tighter loops. Results in a small 480 performance increase. 481 482 2005-04-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 483 484 * magick/Xwindow.c (XDelay): Prefer use of select() over poll() 485 since it is more portable. MacOS-X has a poll() but it doesn't 486 work right. 487 488 2005-04-14 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 489 490 * magick/magick_endian.h: Renamed from endian.h in order to avoid 491 conflict with system headers. 492 493 2005-04-13 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 494 495 * coders/miff.c (WriteMIFFImage): Normalize image depth to 8/16/32. 496 497 * coders/gray.c (WriteGRAYImage): Normalize image depth to 8/16/32. 498 499 * coders/fits.c (WriteFITSImage): Normalize image depth to 8/16. 500 501 * tests/Makefile.am: Extended read/write tests to include 10, 12, 502 and 16-bit original test images. 503 504 * coders/dpx.c (ReadDPXImage): If samples are log encoded, then 505 set the image to CineonLogRGBColorspace. 506 (WriteDPXImage): If image samples are log encoded, then mark DPX 507 file as being log encoded. 508 509 * magick/colorspace.c (TransformRGBImage): Support translation 510 from log RGB to linear RGB based on Cineon guidelines. 511 (RGBTransformImage): Support translation from linear RGB to log RGB. 512 513 * magick/colorspace.h (enum CineonLogRGBColorspace): New 514 enumeration to record that the RGB values are log encoded in a 515 2.048 density range as defined for the Cineon Digital Film System. 516 517 2005-04-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 518 519 * magick/command.c: Take advantage of ColorspaceTypeToString() and 520 StringToColorspaceType() functions in implementation. 521 522 * magick/colorspace.c (RGBTransformImage): Added support for 523 converting to Rec 709 grayscale colorspace. 524 (ColorspaceTypeToString): New function to translate from 525 ColorspaceType enumeration value to a string. 526 (StringToColorspaceType): New function to translate from a string 527 to a ColorspaceType enumeration value. * magick/colorspace.h 528 (enum Rec601LumaColorspace): New enumeration to support the Rec 529 601 grayscale colorspace. This is the colorspace previously 530 represented by GRAYColorspace. If GRAYColorspace is specified, 531 then Rec601LumaColorspace is selected. 532 (enum Rec709LumaColorspace): New enumeration to support the Rec 533 707 grayscale colorspace. 534 535 2005-04-08 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 536 537 * magick/command.c (IdentifyImageCommand): Use +ping to force 538 identify to read the image pixels. 539 540 * magick/constitute.c (PingImage): Intentionally clear 541 user/elapsed timer when ping is used on an image since the results 542 are misleading. 543 544 * magick/image.c (DescribeImage): Only display pixel read rate if 545 the time accumulated is at least the timer's resolution. 546 547 * magick/cache.c (OpenCache): Fix a memory resource leak noticed 548 by Stefan v. Wachter <svwa-dev@mnet-online.de>. This error with 549 keeping track of resources may eventually cause GraphicsMagick to 550 run slower and slower due to using disk-based images rather than 551 memory-based images. 552 553 2005-04-07 Glenn Randers-Pehrson <glennrp@glennrp.com> 554 555 * coders/png.c: encoder now accepts image->depth other than 8 and 16. 556 557 2005-04-05 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 558 559 * coders/dpx.c (WriteDPXImage): First pass at a new SMPTE268M-2003 560 DPX writer. 561 562 2005-04-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 563 564 * magick/utility.c (AllocateString): Performance enhancement. 565 (CloneString): Performance enhancement. 566 (ConcatenateString): Performance enhancement. 567 568 2005-03-31 Glenn Randers-Pehrson <glennrp@glennrp.com> 569 570 * coders/jpeg.c: revised EOF test. It was rejecting good image 571 files. Needs more work. 572 573 2005-03-30 Glenn Randers-Pehrson <glennrp@glennrp.com> 574 575 * coders/pnm.c (ReadPNMImage): Throw a "Corrupt Image" exception 576 if EOF is encountered while reading scanlines in P1, P2, P3, or P4 577 formatted images (P5 and P6 were OK). 578 579 2005-03-29 Glenn Randers-Pehrson <glennrp@glennrp.com> 580 581 * coders/sgi.c (ReadSGIImage): Throw a "Corrupt Image" exception 582 if EOF is encountered while reading scanlines. 583 584 2005-03-28 Glenn Randers-Pehrson <glennrp@glennrp.com> 585 586 * coders/jpeg.c (ReadJPEGImage): Throw a "Corrupt Image" exception 587 if EOF is encountered while reading scanlines. 588 589 * coders/pcx.c (ReadPCXImage): Throw a "Corrupt Image" exception 590 if EOF is encountered while reading pixels. 591 592 2005-03-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 593 594 * coders/dpx.c (ReadDPXImage): First pass at a new SMPTE268M-2003 595 DPX reader. 596 597 * magick/bit_stream.h (WordStreamLSBRead): New function to parse 598 values from a stream which is defined by 32-bit words. Values are 599 read starting with the least significant bits. 600 601 2005-03-23 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 602 603 * coders/tiff.c (ExtensionTagsInitialize): Fix conditional use of 604 TIFFSetTagExtender(). 605 606 2005-03-20 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 607 608 * magick/endian.c: Imported libtiff's swab.c since its functions 609 are so useful and well-tested. 610 611 * magick/utility.c (FormatSize): Extend to support incredibly 612 large sizes. 613 614 * magick/image.c (DescribeImage): Use GetTimerResolution() when 615 computing pixels-per-second rate in order to avoid computing 616 astronomical rates when the time consumed is too small to measure. 617 618 * magick/timer.c (GetTimerResolution): New function to return the 619 timer's resolution. 620 621 2005-03-19 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 622 623 * coders/pdf.c (WritePDFImage): Eliminate cause of annoying 624 warning when PDFs are read by Ghostscript 8.5. 625 626 2005-03-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 627 628 * magick/nt_base.h (lt_dlerror): Needed to provide a mapping to 629 NTdlerror(). 630 631 * coders/tiff.c (TIFFErrors): Update to make thread safe via 632 thread specific data. 633 (TIFFWarnings): Update to make thread safe via thread specific 634 data. 635 636 * magick/tsd.c (MagickTsdKeyCreate): New function to support 637 thread specific data. 638 (MagickTsdKeyDelete): ditto 639 (MagickTsdSetSpecific): ditto 640 (MagickTsdGetSpecific): ditto. 641 642 2005-03-17 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 643 644 * magick/image.c (ReplaceImageColormap): New function to replace 645 the image colormap with a user-provided one. Colormap indexes are 646 adjusted to point to identical colors in the new colormap. 647 648 * magick/nt_base.h: Reorganized a bit to cluster code supporting 649 similar features in the same area of the header. 650 651 * magick/nt_base.c: Renamed wrappers for standard functions so 652 that they have the prefix `NT`. Macros are used to apply the new 653 names. This assures that there will not be conflicts if the library 654 is linked with a different package's wrapper functions. 655 656 2005-03-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 657 658 * magick/quantize.c (GrayscalePseudoClassImage): Moved to here 659 from image.c. Added support for is_monochrome. 660 661 2005-03-13 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 662 663 * jp2: Updated Jasper library to version 1.701.0. 664 665 * magick/nt_base.c (NTGhostscriptFonts): Fixed a coding error 666 which was added when strcpy/strcat code was replaced with 667 strlcpy/strlcat. Ghostscript fonts were not being found. 668 669 * magick/constitute.c (ReadImage): Don't attempt to access image 670 members if image pointer is null. Oops! 671 672 2005-03-12 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 673 674 * magick/image.c (SetImageType): Bilevel image is not required to 675 be PseudoClass type. 676 677 * coders/mpc.c (WriteMPCImage): Persist is_monochrome and 678 is_grayscale flags. 679 (ReadMPCImage): Restore is_monochrome and is_grayscale flags. 680 681 * magick/constitute.c (WriteImage): Extended logging to include 682 monochrome and grayscale flags. 683 (ReadImage): Extended logging to include monochrome and grayscale 684 flags. 685 686 * magick/image.c (DescribeImage): Include the effective pixel I/O 687 rate alongside the image read/write time. This provides an easier 688 way to evaluate image read/write performance when looking at 689 `identify` or `convert -verbose` output. 690 691 * coders/sun.c (ReadSUNImage): Ensure that pixel length value does 692 not overflow for large images. 693 694 2005-03-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 695 696 * magick/cache.c (SetImagePixels): Improved documentation. 697 (GetImagePixels): Improved documentation. 698 699 2005-03-10 Glenn Randers-Pehrson <glennrp@glennrp.com> 700 701 * coders/png.c: Avoid attempting to write indexed PNG when 702 a color entry has more than one opacity level. The PNG format 703 supports this but GM's colormap does not, so erroneous files 704 were being written. 705 706 2005-03-09 Arne Rusek <zonk@matfyz.cz> 707 708 * magick/attribute.c (GenerateEXIFAttribute): Offset type 709 correction to fix loop termination if size_t type is not `long`. 710 711 2005-03-09 Alexander Yaworsky <yaworsky@users.sourceforge.net> 712 713 * coders/jbig.c (WriteJBIGImage): JBIG was writing an empty output 714 file. Apparently libjbig parameters have changed. Setting l0 715 parameter of jbg_enc_options to zero instead of -1 (like in 716 jbigkit's pbmtools) solved the problem. 717 718 2005-03-07 Mike Chiarappa <mikechiarappa@libero.it> 719 720 * BCBMagick\magick\GM_magick.bpr: Updated to reflect changes since 721 last update. 722 723 * BCBMagick\magick\libMagick.bpr: Updated to reflect changes since 724 last update. 725 726 2005-03-06 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 727 728 * magick/alpha_composite.h (AlphaComposite): Moved AlphaComposite 729 to new alpha_composite.h header since it was causing porting 730 problems. 731 732 * magick/constitute.h (enum QuantumType): Added CIEYQuantum and 733 CIEXYZQuantum quantum import options. 734 735 * coders/tiff.c (ReadTIFFImage): Import LogLuv image data within 736 GraphicsMagick (rather than libtiff) so that color resolution is 737 not lost. Results in a small speedup as well. 738 739 * magick/constitute.c (ImportImagePixelArea): Add a speed-up for 740 importing bi-level images. Add support for importing pixels in 741 CIE XYZ and CIE Y colorspaces. 742 743 * coders/tiff.c (ReadTIFFImage): Support reading TIFF images which 744 fail to properly scale the samples to the sample size (e.g. 12 745 bits in a 16-bit sample). 746 (WriteTIFFImage): Adjustments to strip-size (rows-per-strip) 747 estimation. 748 749 * magick/constitute.c (ExportImagePixelArea): Support exporting 750 unsigned samples with values which span only part of the range. 751 For example, 12 bit data may be exported within 16 bit samples, 752 with a value range of 0 to 4095. 753 (ImportImagePixelArea): Support importing unsigned samples with 754 values which span only part of the range. 755 756 2005-02-26 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 757 758 * coders/tiff.c (ReadTIFFImage): Support reading TIFF files in 759 IEEEFP format. 760 (WriteTIFFImage): Support writing TIFF files in IEEEFP format. 761 762 * magick/constitute.c (ExportImagePixelArea): Support exporting 763 floating point data. 764 (ImportImagePixelArea): Support importing floating point data. 765 766 2005-02-26 Albert Chin-A-Young <china@thewrittenword.com> 767 768 * acinclude.m4 (AC_CXX_IOS_BINARY): Added macro to detect if the 769 C++ compiler lacks support for ios::binary. 770 771 * configure.ac: Use AC_CXX_IOS_BINARY. 772 773 2005-02-19 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 774 775 * coders/tiff.c (ReadTIFFImage): Read grayscale TIFFs as 776 DirectClass rather than promoting to PseudoClass. Fix improper 777 multiple repeated "disassociate" operations when reading planar 778 images which contain an alpha channel. 779 (WriteTIFFImage): Fix improper multiple repeated "associate" 780 operations when writing planar images with an alpha channel. 781 782 2005-02-16 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 783 784 * win2k/IMDisplay/IMDisplayView.cpp (DoDisplayImage): Use 785 TextureImage to apply background pattern. 786 787 * magick/image.c (TextureImage): Alpha blend the texture onto the 788 background if the image has a matte channel. 789 790 * magick/constitute.h (enum QuantumType): Eliminated 791 GrayInvertedQuantum and GrayInvertedAlphaQuantum which were added 792 since GraphicsMagick 1.1. Replaced this "inverted" gray 793 functionality with the grayscale_inverted flag in 794 ExportPixelAreaOptions and ImportPixelAreaOptions. 795 796 * magick/constitute.c (ExportImagePixelArea): Added an extra 797 parameter for passing seldom used options via an 798 ExportPixelAreaOptions structure. 799 (ImportImagePixelArea): Added an extra parameter for passing 800 seldom used options via an ImportPixelAreaOptions structure. 801 (ExportPixelAreaOptionsInit): New function to initialize the 802 ExportPixelAreaOptions structure with defaults. 803 (ImportPixelAreaOptionsInit): New function to intialize the 804 ImportPixelAreaOptions structure with defaults. 805 806 * coders/jpeg.c (WriteJPEGImage): Don't use jpeglib private 807 BITS_IN_JSAMPLE definition to select JPEG bit depth. 808 809 * coders/tiff.c (ReadTIFFImage): Support using -define 810 tiff:alpha={unspecified|associated|unassociated} to specify the 811 alpha channel type in case the alpha channel is marked 812 incorrectly. 813 Properly read associated alpha images. 814 (WriteTIFFImage): Support using -define 815 tiff:alpha={unspecified|associated|unassociated} to override the 816 alpha channel type. 817 Properly write associated alpha images by default. 818 819 2005-02-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 820 821 * coders/tiff.c (WritePTIFImage): Ensure that pyramid image frames 822 are the same type as the original image. 823 (WriteTIFFImage): Added support for writing tiled TIFF. 824 825 2005-01-31 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 826 827 * magick/render.c (TraceBezier): Avoid probable bug under Visual 828 C++ 7.0 or later due to the argument to pow not being promoted to 829 double. 830 831 2005-01-30 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 832 833 * coders/tiff.c (WriteTIFFImage): Re-wrote TIFF writing code. 834 835 * magick/image.h (MaxValueGivenBits): Renamed MaxRGBGivenBits 836 macro to MaxValueGivenBits. 837 838 * magick/constitute.h (enum QuantumType): Added UndefinedQuantum. 839 840 * magick/static.c (RegisterStaticModules): Support compiling 841 without PNG. 842 843 2005-01-29 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 844 845 * magick/color.c (IsPaletteImage): Fix memory leak reported by 846 Stefan v. Wachter <svwa-dev@mnet-online.de>. 847 848 * magick/Makefile.am (MAGICK_INCLUDE_HDRS): Needed to install 849 magick/operator.h. 850 851 * coders/tiff.c (ReadTIFFImage): Re-wrote TIFF reading code again 852 for more flexibility and performance. 853 854 2005-01-17 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 855 856 * configure.ac: Remove --disable-lzw option and HasLZW define. 857 LZW support is always enabled now. 858 859 2005-01-16 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 860 861 * coders/tga.c (WriteTGAImage): Incorporated patch from Stefan 862 v. Wachter to enable writing grayscale images as well as adding 863 more image type option smarts. 864 865 * coders/psd.c (ReadPSDImage): Fix stack overflow vulnerability 866 reported by Andrei Nigmatulin. See http://lwn.net/Articles/119713/ 867 for details. 868 869 2005-01-14 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 870 871 * win2k/IMDisplay/IMDisplayDoc.cpp (DoReadImage): Ensure that image 872 is in RGB color space after being read since this is what Windows 873 expects. 874 875 2005-01-13 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 876 877 * coders/tiff.c (ReadTIFFImage): Handle extra samples in scanline 878 TIFFs. 879 880 2005-01-09 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 881 882 * magick/image.c (DescribeImage): Report statistics for a virtual 883 gray channel for grayscale images rather than discrete red, green, 884 and blue. 885 886 * PerlMagick/Makefile.nt: JNG and JP2 to test list. 887 888 * configure.ac: Changed --without-fpx to --with-fpx due to 889 decision to default FlashPIX to `no`. FlashPIX library is not 890 very portable and is only known to work properly under SPARC 891 Solaris and Windows. 892 893 * NEWS: Updated with latest news. 894 895 * lcms: Updated to LCMS 1.14. 896 897 2005-01-08 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 898 899 * coders/jp2.c (ReadJP2Image): Handle images in YCBCR colorspace. 900 (ReadJP2Image): Retrieve and store an ICC ICM color profile if 901 present. 902 903 * PerlMagick/t/tiff/read.t: Added test for reading truecolor 904 planar TIFF image. 905 Added test for reading 32-bit TrueColor TIFF image. 906 Added test for reading 32-bit grayscale TIFF image. 907 908 * coders/tiff.c (ReadTIFFImage): Fixed stripped TIFF reader. 909 910 2005-01-04 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 911 912 * coders/tiff.c (WriteTIFFImage): Only set TIFFTAG_PREDICTOR to 2 913 for bits-per-sample values that libtiff supports. 914