Changelog:
2012.01.04 v.12.01.2
+ Italian user guide was updated.
+ Swedish translation was updated.
2012.01.04 v.12.01.1
+ Bugfix: zoom causes infinite loop after new installation.
2012.01.01 v.12.01
+ New function Search Metadata: search and report image metadata
(EXIF/IPTC/etc.), using a combined image and text display format.
+ Synchronize Files is 2x faster for an initial installation or after
importing a large number of new photos (>1000/min. on a fast PC).
+ "my mouse" was removed from all edit and selection dialogs. The mouse
belongs to the last widget clicked. The main window can be zoomed and
scrolled during such dialogs by using CTRL + mouse click or drag.
+ Mouse wheel can do zoom-in and zoom-out.
+ Zooming an image re-centers it on the mouse position, and the mouse
position follows the zoom center to the middle of the window.
+ Zoom ratio configurable: choose 1-4 zooms for each 2x increase in size.
+ DRGB (print color adjust) can save corrections to a file for re-use.
+ Some user settings in various menus were collected together in the
new menu function Tools > User Settings.
+ Bugfix: Search Image was finding false matches for images with very
large caption or comments.
+ Bugfix: cannot escape file open dialog if open previous or open recent
is attempted when there are no previous files (initial installation).
+ Bugfix: interactive GUI translation function failed to initialize.
2011.12.03 v.11.12.2
+ Italian translation was updated.
+ Locale of lc_RC will prefer a .po file named "lc_RC", fallback to "lc".
2011.12.02 v.11.12.1
+ Bugfix: crash at startup - top image directory not correctly
initialized from previous fotoxx installation.
2011.12.01 v.11.12
+ New function Auto-Trim: automatically trim unused edge areas left over
from panorama, HDR, HDF, stack, warp and unbend functions.
+ New function: Find bright or dark "stuck" pixels (camera sensor defect)
(1x1/2x2/3x3 blocks) and fix them by interpolating neighboring pixels.
Pixel locations can be saved and applied later to other images.
+ Select Area was extended to both select and unselect by matching colors,
and the pixel search range was made adjustable 1-20x mouse radius.
+ Batch Resize/Export function now supports output of JPEG, PNG, TIFF.
This can be used to select and convert files to a different format.
+ Convert RAW Files now supports output of JPEG, PNG, TIFF-8, TIFF-16.
+ Warp Area algorithm was made a bit more intuitive and controllable.
+ GUI language translation procedure was simplified.
+ Bugfix: restored some lost translations of dialog buttons.
+ Bugfix: Trim dialog mouse ownership was sometimes misleading.
+ Bugfix: WarpArea did not reset itself if selected area was changed.
+ Bugfix: crash if parallel instances of fotoxx are simultaneously
editing images and using undo/redo.
While here, remove unwanted buildlink and add lzma option.
1.3.13 (December 24, 2011)
==========================
Security Fixes:
None
Bug fixes:
* In I/O blob, don't rewind already open file handle passed to
OpenBlob() since we don't know the intended state of this file
handle, and because it prevents appending to an existing file.
* In AppendImageProfile(), don't leak profile buffer while appending
a chunk to an existing profile.
* Fix deadlock in ClonePixelCache() which was caused by using the
same semaphore pointer in the source and destination images.
* Removed bogus SyncBlob() code which sometimes caused a crash and
was not useful.
* Fixed crash or hang which occured when the user entered CONTROL-C
while threaded code was being executed.
* Fix core dump in AcquireOneCacheViewPixelInlined() when the image
is in CMYK space.
* In MontageImages (montage), fix crash observed with "-geometry
x+0+0".
* The TIFF reader was crashing for images which use the
TIFFTAG_OPIIMAGEID tag.
* AppendImages() (-append) was failing when only one image was
provided.
* The `animate`, `display`, and `identify` commands now report any
error only once, and then proceed to the next file name rather
than quitting.
* Don't change the locale settings in InitializeMagick() since this
may cause problems for international users. API users are still
responsible for assuring that locale settings don't break floating
point parsing and output (i.e. floating point decimal needs to be
'.' rather than ',').
* RPM build is fixed (PerlMagick build was broken).
* RPM build installs documentation to expected places on Red Hat
type systems.
* Fixes for usage with OpenSolaris.
* DESTDIR is supported by PerlMagick build.
* The matte channel was not being properly enabled or respected for
TXT images.
* InitializeMagick() and DestroyMagick() are now fully thread safe.
* When a shear angle was as zero, the shear request was being
ignored entirely.
* In DispatchImage(), the `K` channel was always output as black for
"CMYK" specification unless the image matte flag was True.
* MATLAB fixes.
* PNG fixes.
* PCL fixes for printing bi-level image on Konica-Minolta printers.
* EPT error handling fixes.
* JPEG reader was sometimes truncating large IPTC profiles.
* JPEG writer now handles errors properly rather than allowing
libjpeg to exit the program (or hanging if driven by Magick++).
* JPEG reader now treats an unhandled EXP marker as a warning rather
than a hard error.
* File open errors are now reliably reported.
* Improved rendering precision when using the drawing APIs.
* For the Magick++ Image backgroundColor(), borderColor(), and
matteColor() methods, preserve the opacity part of the
user-specified color.
New Features:
* Add support for drawing text using a bitmap font.
* benchmark command supports a -stepthreads option to execute the
specified command with an increasing number of threads to measure
how an algorithm benefits from threading. This mode includes a
column to show the speedup compared with one thread, and the
Karp-Flatt metric
* Added Add support for invoking "gs-cmyk" and "gs-cmyka" entries in
delegates.mgk when ColorSeparationType or ColorSeparationMatteType
is requested. These cause Ghostscript to always output CMYK PAM
format (even if the input file was not in CMYK format).
* EXIF profiles are preserved when writing JPEG files.
* The -mosaic command now respects the composition option specified
by -compose as well as the image background color specified by
-background.
* The TXT coder now supports multiple image frames.
* For image normalization (-normalize), add support for
histogram-threshold setting to specify the percentage of the
histogram to discard when computing image normalization parameters
(default is 0.1%). For example `-set histogram-threshold 0.01
-normalize`.
* Added an `INFO` coder which produces textual image description
output similar to `identify` but may be used with convert like "gm
convert myfile info:-".
* Support application of the PDF crop box via '-define
pdf:use-cropbox=true'.
* For PCL printer output, define pcl:fit-to-page in order for the
printer to scale the image to fit the page.
* Added order dither 5x5, 6x6, and 7x7 circular dither patterns to
create a halftone effect.
* PNM subformats are now reported as the specific subformat rather
than just "PNM".
* NetPBM's PAM format is now supported.
* MacPaint image format reader is added.
* Added TIFF LZMA compressor support.
* Added TIFF support for a tiff:group-three-options define to allow
power-users to set the value of the GROUP3OPTIONS tag.
* New core C API function SetImageColorRegion() to set the constant
pixel color for a specified region of the image.
* New Wand C API function MagickWriteImagesFile() to append images
to a provided file handle.
* New Wand C API function MagickSetImageSavedType() to allow
specifying the storage type used when saving the file (rather than
changing the current image characteristics).
* In Wand C API, the functions NewPixelWand(), NewDrawingWand(), and
NewMagickWand() invoke InitializeMagick() automatically in case
user forgets to do so.
* New Wand C API function MagickSetFormat() to allow setting the
file or blob format before it has been read.
* New Wand C API function MagickSetDepth() to set the depth used
when reading from an image format which requires that the depth be
specified in advance.
Feature improvements:
* Now compiles properly with libpng 1.4.X and 1.5.X.
* Lcms 2.X is supported.
Performance Improvements:
* TGA read performance improved.
* PNM read/write performance improved.
* Convolution (-convolve, -sharpen, -guassian, etc.) is faster.
* Adaptive threshold image (-lat) is faster.
* Image trimming (-trim) is faster.
Behavior Changes:
* For DPX format and packed 10 bits, datums are now represented in
the same (reversed) order for all RGB and YCbCr formats.
Previously YCbCr 4:4:4 formats were not swapping the word datums
because the only real-world files encountered did not swap the
word datums.
* The -colors, -map, and -monochrome options now take effect
immediately rather than at the end of all other processing.
* Removed non-standard multi-frame extension for SGI format.
* Windows install footprint is more consistent between DLL and
static builds.
* LZMA compressed tarball is in 'xz' format rather than deprecated
'lzma' format.
vigra (which is 1.8.0) to fix build with recent libpng.
I'm not sure if the resolution handling changes (search for "254") are
desirable or not. if something goes wrong, try reverting that.
The package should probably be changed to use pkgsrc vigra, but I
don't want to do that right now.
X headers' include guards, which changed at some point. Hack it to
recognize what's there nowadays as well as the old symbol.
While here, deploy INSTALLATION_DIRS to work around apparent dir
permission problems in the package's own install logic.
Changes:
* MetaPost now adheres to the openin_any / openout_any settings in
texmf.cnf
* In some cases 'readfrom' made the file's path be prepended to the
actually read string from the file.
* The 'prologues:=3 output' with embedded labels was unreliable,
especially when the resulting eps was included into a TeX document
via dvips.
* 'newinternal numeric' has been fixed, it generated an error in
metapost 1.211.
* Label regeneration sometimes failed to run when the file time stamps
were close together.
* Reallocation of the string pool during output file name creation
('outputtemplate') could cause corruption in the created file's name.
Changes since the last public release (1.5.6):
Added support for ARM processor (Mans Rullgard)
Fixed bug in pngvalid on early allocation failure; fixed type cast in
pngmem.c; pngvalid would attempt to call png_error() if the allocation
of a png_struct or png_info failed. This would probably have led to a
crash. The pngmem.c implementation of png_malloc() included a cast
to png_size_t which would fail on large allocations on 16-bit systems.
Fix for the preprocessor of the Intel C compiler. The preprocessor
splits adjacent @ signs with a space; this changes the concatentation
token from @-@-@ to PNG_JOIN; that should work with all compiler
preprocessors.
Paeth filter speed improvements from work by Siarhei Siamashka. This
changes the 'Paeth' reconstruction function to improve the GCC code
generation on x86. The changes are only part of the suggested ones;
just the changes that definitely improve speed and remain simple.
The changes also slightly increase the clarity of the code.
Check compression_type parameter in png_get_iCCP and remove spurious
casts. The compression_type parameter is always assigned to, so must
be non-NULL. The cast of the profile length potentially truncated the
value unnecessarily on a 16-bit int system, so the cast of the (byte)
compression type to (int) is specified by ANSI-C anyway.
Fixed FP division by zero in pngvalid.c; the 'test_pixel' code left
the sBIT fields in the test pixel as 0, which resulted in a floating
point division by zero which was irrelevant but causes systems where
FP exceptions cause a crash. Added code to pngvalid to turn on FP
exceptions if the appropriate glibc support is there to ensure this is
tested in the future.
Added versioning to pnglibconf.h comments.
Installed more accurate linear to sRGB conversion tables. The slightly
modified tables reduce the number of 16-bit values that
convert to an off-by-one 8-bit value. The "makesRGB.c" code that was used
to generate the tables is now in a contrib/sRGBtables sub-directory.
Added run-time detection of NEON support.
Multiple transform bug fixes plus a work-round for double gamma correction.
libpng does not support more than one transform that requires linear data
at once - if this is tried typically the results is double gamma
correction. Since the simplified APIs can need rgb to gray combined with
a compose operation it is necessary to do one of these outside the main
libpng transform code. This check-in also contains fixes to various bugs
in compose and rgb to gray (on palette).
Fixes for C++ compilation using g++ When libpng source is compiled
using g++. The compiler imposes C++ rules on the C source; thus it
is desireable to make the source work with either C or C++ rules
without throwing away useful error information. This change adds
png_voidcast to allow C semantic (void*) cases or the corresponding
C++ static_cast operation, as appropriate.
Added --noexecstack to assembler file compilation. GCC does not set
this on assembler compilation, even though it does on C compilation.
This creates security issues if assembler code is enabled; the
work-around is to set it by default in the flags for $(CCAS)
Removed "zTXt" from warning in generic chunk decompression function.
Validate time settings passed to pngset() and png_convert_to_rfc1123()
(Frank Busse).
Added MINGW support to CMakeLists.txt
Reject invalid compression flag or method when reading the iTXt chunk.
Moved pngvalid.c into contrib/libtests
Rebuilt Makefile.in, configure, etc., with autoconf-2.68
Replaced an "#if" with "#ifdef" in pngrtran.c
Revised #if PNG_DO_BC block in png.c (use #ifdef and add #else)
Revised pngconf.h to use " __declspec(restrict)" only when MSC_VER >= 1400,
as in libpng-1.5.4.
Put CRLF line endings in the owatcom project files.
Updated CMakeLists.txt to account for the relocation of pngvalid.c
Minor fixes to pngvalid.c for gcc 4.6.2 compatibility to remove warnings
reported by earlier versions.
On DragonFly, X11BASE equals LOCALBASE meaning any detected binaries on
X11BASE came from pkgsrc itself and not the native platform as intended.
The result is that x11/xwininfo was not getting added to the DEPENDS list
after that package was installed.
Required for default linking behavior of binutils 2.22 ld
It's kind of ugly to tag it on to the LINK_PTHREAD variable, but renaming
that variable could satisfy the pedants.
S_IRUSR and S_IWUSR are defined in <sys/stat.h> on DragonFly, but the
conftest for the Cache Server wasn't pulling that header in. After
patching the conftest, the package builds normally. There was no need
to patch the source itself, so it was a bad test.
Changes from previous:
----------------------
Sept. 24, 2011 - Version 8.65 (production release)
- Added a few new CanonModelID's
- Added a new Sony/Minolta LensType
- Added a new Canon LensType (thanks Klaus Reinfeld)
- Added a number of new Olympus ArtFilter/MagicFilter values
- Included new .args files in distribution: exif2iptc.args and iptc2exif.args
- Enhanced writing of date/time tags to recognize "now" for the current time
- Improved decoding of H264 Gain
- Minor improvement to -htmlDump for some invalid IFD entries
- Allow PostScript date/time tags to be written without the -n option
- Allow NikonCapture:ExposureAdj2 to be written without the -n option
- Fixed problem introduced in version 8.62 where DateTimeOriginal in IFD0 of
NEF images was no longer updated when shifting times
- Fixed problem where keywords could be duplicated when exporting to XMP while
using the MWG module
- Fixed problem reading PDF images with extra whitespace before xref table
- Fixed format problem in CSV output for filenames containing a comma or quote
- Fixed problem reading concatenated AVI videos
Sept. 10, 2011 - Version 8.64
- Added 2 new ACDSee XMP tags (thanks Hannes Leubbers)
- Added a new Sony FileFormat value
- Added a new CanonModelID
- Added a few new Pentax DigitalFilter and ImageTone values
- Enhanced -execute option to allow a command ID number to be added
- Enhanced -csv and -json import features to also key on canonical SourceFile
path (requires Cwd module)
- Improved Composite LensID logic for some Sony cameras
- Fixed misleading error message when using -if option on file that doesn't
exist
- Fixed problems decoding a number of inconsistent tags in the Sigma SD1 maker
notes
Aug. 27, 2011 - Version 8.63
- Added support for a number of new Open Document file extensions
- Added a few new CanonModelID and SonyModelID values
- Added a new Ricoh GXR LensID
- Added a new Sony/Minolta LensType (thanks Mladen Sever)
- Added patch to read the improperly formatted DateTimeOriginal in AVI videos
written by the Kodak Easyshare Sport camera
- API Changes:
- Added QuickTimeUTC option
Aug. 21, 2011 - Version 8.62 - "JPEG2000 Update"
- Added read support for JPEG2000 codestream format (J2C)
- Added a few new Nikon LensID's (thanks Robert Rottmerhusen)
- Added a few new Pentax LensType's
- Added a few new Sony/Minolta LensType's (thanks Wolfram for 2 of these)
- Added two new Sony Teleconverter values (thanks Wolfram)
- Decode a few more JPEG2000 UUID's written by Adobe JPEG2000 plugin
- Decode additional JPEG2000 ColorSpecification information
- Recognize a few more JPEG2000 file extensions
- Updated some CanonModelID's
- Tolerate extra comma at end of line in imported -csv files
- Changed name of Kodak Type9 SerialNumber tag to UnknownNumber
- Fixed bug which in rare situations could result in an erroneous "IFD pointer
references previous IFD" warning
- Fixed another memory leak when writing and removed circular references from
ExifTool object to prevent future bugs like this
- Fixed problem in Windows where values in the -X (XML) output containing
CR+LF were converted to CR+CR+LF
- Fixed superfluous warning which could occur when using += to decrement a
numerical tag
- Fixed an incorrectly spelt Pentax city name (thanks John Francis)
July 16, 2011 - Version 8.61
- Added the ability to increment/decrement tags with numerical values using +=
- Added support for Extensis Portfolio XMP tags plus a number of non-standard
and/or undocumented XMP-xmp and XMP-xmpMM tags
- Added read support for Microsoft Compiled HTML (CHM) format
- Added read support for Ogg Video (OGV) files
- Added new LensType values for Pentax (thanks Heike Herrmann), Sony/Minolta
(thanks Fabio Suprani and Florian Knorn), Nikon (thanks Jens Kriese),
Olympus and Sigma cameras
- Added a new QuickTime VendorID
- Recognize DEX (Dalvik Executable) files
- Identify Windows 64-bit EXE/DLL files and relax EXE validation
- Validate date/time values when reading NMEA GPS log files
- Changed decoding of CFAPattern to return a string of numbers with -n option
- Extract all unknown makernote blocks as undef, regardless of actual format
- Improved print conversion of Pentax ShakeReduction
- Fixed problem processing some Ogg files with multiple streams
- Fixed incorrect namespace URI for stArea (used by MWG 2.0 regions)
- Fixed problem with spaces in -geotag path when using wildcards
- Fixed problem writing PDF:Keywords list items individually if they contain
special characters
- API Changes:
- Enhanced SetNewValue() to allow increment/decrement of numerical tags
1) Modified current patch to support DragonFly
2) Fixed includes for ffmeg headers
3) The API for ffmpeg's sample format changed, so tell it to use old API.
This can be removed when OpenSceneGraph version is upgraded
4) The PLIST was missing ffmpeg plugin. I guess it never built before.
The graphviz-dot-mode will do font locking, indentation, preview of
graphs and eases compilation/error location. There is support for
both GNU Emacs and XEmacs.
Build improvements, remove blatantly wrong conversions from extensions,
made it possible to distinguish format_n formats from others, improvements
to vala/gobject introspection support.
This release adds the "-ow" option to overwrite the input file with the
compressed file. If an output filename is given on the command line, it will be
used as a temporary file and removed after compression. If not, "pngout.png" is
used as a temporary file