mirror of https://gitee.com/openkylin/gimp.git
1185 lines
49 KiB
Plaintext
1185 lines
49 KiB
Plaintext
|
------------------------------
|
||
|
GNU Image Manipulation Program
|
||
|
2.10 Development Branch
|
||
|
------------------------------
|
||
|
|
||
|
This used to be the development branch that lead to GIMP 2.10.
|
||
|
|
||
|
|
||
|
Overview of Changes from GIMP 2.10.0 RC2 to GIMP 2.10.0
|
||
|
=======================================================
|
||
|
|
||
|
Core:
|
||
|
|
||
|
- CLI option --show-playground visible in --help.
|
||
|
- Sample point dockable now works with more than 4 sample points.
|
||
|
- Various warnings removed, multi-threading officially not
|
||
|
"experimental" anymore…
|
||
|
- Various fill and fade operations now use the current paint composite
|
||
|
mode, allowing for instance filling to paint over transparent areas.
|
||
|
- Default layer and paint modes are now Normal (instead of Legacy).
|
||
|
- Be smarter about layer modes for new layers.
|
||
|
- Get rid of the remaining places that were using the NORMAL_LEGACY
|
||
|
mode by default (painting, some more).
|
||
|
- Improve painting speed even more by even more evil C++.
|
||
|
- Flipping drawables is much faster because it's now working
|
||
|
tile-by-tile.
|
||
|
- Gradient rendering is now much faster, using a cache.
|
||
|
|
||
|
Plug-ins:
|
||
|
|
||
|
- Ripple plugin removed, compat PDB-API "plug-in-ripple" added
|
||
|
instead.
|
||
|
|
||
|
PDB:
|
||
|
|
||
|
- New procedure: gimp-item-transform-translate.
|
||
|
- Make gimp-item-transform-* transform linked items too.
|
||
|
- Deprecate gimp-color-balance and gimp-layer-translate.
|
||
|
|
||
|
Assets / Resources:
|
||
|
|
||
|
- New "Fun" category for brushes (moving the "Pepper" there, which
|
||
|
also gets improved resolution), and adding Wilber and GEGL brushes.
|
||
|
- "Structure" brush obsoleted.
|
||
|
- 5 new and more serious brushes.
|
||
|
|
||
|
Translations:
|
||
|
|
||
|
- 6 translations were updated: Catalan, Danish, Finnish, Korean,
|
||
|
Polish, Swedish.
|
||
|
|
||
|
|
||
|
Overview of Changes from GIMP 2.10.0 RC1 to GIMP 2.10.0 RC2
|
||
|
===========================================================
|
||
|
|
||
|
Core:
|
||
|
|
||
|
- Symmetries are now preserved in XCF files (saved as image parasites).
|
||
|
- New runtime option --show-debug-menu in order to make the File >
|
||
|
Debug menu visible.
|
||
|
- Do not show invisible actions in search dialog.
|
||
|
- Do not dither image mask and channels for imported images.
|
||
|
- Various optimizations for painting and display (WIP), including
|
||
|
parallelized painting code.
|
||
|
- New "Misc" group to the Dashboard dock, with currently only a
|
||
|
"Mipmapped" field showing the total size of processed mipmapped
|
||
|
data.
|
||
|
- Plug-ins debugging on crashes through --stack-trace-mode CLI option
|
||
|
improved to handle more case.
|
||
|
- Fix selection -> channel -> selection roundtrips by never doing
|
||
|
any gamma conversion when converting between an image's selection,
|
||
|
channels, masks. Also, make all channels linear in all images with
|
||
|
>8bit.
|
||
|
|
||
|
Libgimp:
|
||
|
|
||
|
- New group "drawable_edit" which contains all functions from "edit"
|
||
|
that are not cut/copy/paste. The new functions have much less
|
||
|
arguments and take them from the context instead. The respective
|
||
|
functions in "edit" have been deprecated.
|
||
|
- New functions in "context" to configure aspects of gradient
|
||
|
drawing, and to set the built-in gradients (the new gradient
|
||
|
function in "drawable_edit" doesn't have a parameter for the
|
||
|
gradient type any longer).
|
||
|
|
||
|
User interface:
|
||
|
|
||
|
- Lighter and Darker themes removed for now, Light and Dark themes
|
||
|
rewritten from scratch to get rid of various usability issues and
|
||
|
glitches. Only Gray theme from previous set kept as-is.
|
||
|
- New GimpToolGyroscope on-canvas control, currently used for
|
||
|
the Panorama Projection filter. The widget provides on-canvas
|
||
|
interaction for 3D rotation (yaw, pitch, roll).
|
||
|
|
||
|
Configurability:
|
||
|
|
||
|
- In Preferences > Dialog Defaults, new section "Filter Dialogs"
|
||
|
created to customize various common features of filters, such as
|
||
|
recent settings and advanced color options.
|
||
|
- Do not default to last used filter settings, but allow this behavior
|
||
|
in Preferences > Dialog Defaults, with checkbox "Default to the last
|
||
|
used settings".
|
||
|
|
||
|
Tools:
|
||
|
|
||
|
- Color used in the Smudge tool is now added to the color history.
|
||
|
- "Blend" tool renamed to much more consistent "Gradient" tool.
|
||
|
Also it can now work in linear RGB matching capabilities CSS/SVG
|
||
|
specification without gamma-errors in color blending and CIE Lab
|
||
|
which in addition keeps a perceptual graylevel.
|
||
|
|
||
|
Assets / Resources:
|
||
|
|
||
|
- Adding 4K UHD in document templates (and fixing 4K DCI).
|
||
|
|
||
|
Building:
|
||
|
|
||
|
- New --enable-bundled-mypaint-brushes option in configure to decide
|
||
|
whether to use the configure-time installation path of MyPaint
|
||
|
brushes, or use a path relative to GIMP installation prefix
|
||
|
(typically for bundled binaries, such as on Windows or macOS).
|
||
|
- Detect freetype2 using pkg-config (`freetype-config` is on its way
|
||
|
out in various distributions apparently).
|
||
|
- Appdata now installed to $PREFIX/share/metainfo/
|
||
|
|
||
|
Translations:
|
||
|
|
||
|
- 8 translations were updated: Arabic, Catalan, Chinese, French, Italian,
|
||
|
Polish, Russian, Swedish.
|
||
|
|
||
|
|
||
|
Overview of Changes from GIMP 2.9.8 to GIMP 2.10.0 RC1
|
||
|
======================================================
|
||
|
|
||
|
Core:
|
||
|
|
||
|
- New dashboard dockable: shows the current GEGL cache and swap sizes
|
||
|
and CPU usage and active time, and their recent history. It has
|
||
|
options to control the update rate and history duration of the data,
|
||
|
and an option to warn (by raising/blinking the dialog) when the swap
|
||
|
size approaches its limit.
|
||
|
- Make the selection boundary detection the same as 2.8.
|
||
|
- The environment variable GIMP_DEBUG can now be set to "list-all" to
|
||
|
display available debug domains. Non-recognized flags will also
|
||
|
trigger the debug flag list output.
|
||
|
- Improve migration from 2.8 to 2.10 by recursively migrating
|
||
|
configuration files (up to 5 levels, to protect from recursive
|
||
|
symbolic links).
|
||
|
- Mark legacy plug-ins and scripts in menus.
|
||
|
- Enable "save-tool-options" and "save-device-status" by default,
|
||
|
it's the expected behavior these days.
|
||
|
- GIMP doesn't warn any more for unknown darktable XMP metadata. We now
|
||
|
register the corresponding namespace.
|
||
|
- Adding settings for metadata export handling in "Image Import &
|
||
|
Export" page of Preferences. By default, the settings are checked,
|
||
|
but you can uncheck them (in particular since metadata can often
|
||
|
contain a lot of sensitive information).
|
||
|
- Splash image now scaled down to maximum 1/2 of the screen area. This
|
||
|
will allow to ship a big splash image which will be visible on all
|
||
|
type of screens, whichever low or high resolution. Vector splash
|
||
|
images are scaled both up or down to have them always at ideal size.
|
||
|
- Brightness-Contrast, Curves, Levels and Threshold are now available
|
||
|
in "Repeat last" history.
|
||
|
- Improve action history to not show newly excluded actions (which
|
||
|
were already in our history from before the exclusion).
|
||
|
- Use GEGL for transform-tools preview, allowing faster and more
|
||
|
accurate previews.
|
||
|
- Re-arrange color models in the Color dock (WIP).
|
||
|
- New debug tool and infrastructure to handle WARNING and CRITICAL
|
||
|
errors, as well as fatal errors (crashes), raising a pop-up with all
|
||
|
version information on GIMP and its main dependencies, as well as
|
||
|
the error message and backtraces, and encouraging people to make bug
|
||
|
reports.
|
||
|
- Support layer masks on layer groups.
|
||
|
- GIMP now attempts to backup unsaved images when it crashes. Then at
|
||
|
next startup, it will suggest to recover the salvaged images. Image
|
||
|
recovery is not 100% guaranteed.
|
||
|
- New gimp_spawn_async() function uses vfork() to help avoid hanging
|
||
|
during a fork process, currently used for plug-ins.
|
||
|
- Dock color picker is now color-managed on macOS.
|
||
|
|
||
|
Libgimp:
|
||
|
|
||
|
- New gimp_export_exif(), gimp_export_xmp() and gimp_export_iptc()
|
||
|
functions returning the creator choice regarding default handling
|
||
|
for metadata export (as set in the Preferences).
|
||
|
- GIMP Protocol version incremented.
|
||
|
- New gimp_get_pdb_status() to return the status of the last PDB
|
||
|
call. This is needed for plug-ins which depend on other plug-ins'
|
||
|
procedures. If for instance, a second-level plug-in is interrupted
|
||
|
interactively, we don't want to process this as an error but as a
|
||
|
cancellation.
|
||
|
- New gimp_stack_trace_available(), gimp_stack_trace_print() and
|
||
|
gimp_stack_trace_query() for debugging.
|
||
|
- Use gegl:distance-transform in gimp_edit_blend() implementation
|
||
|
making it much faster for all GRADIENT_SHAPEBURST_* gradient types.
|
||
|
Legacy gimp:shapeburst operation has been deleted.
|
||
|
- New gimp_context_get_distance_metric() and
|
||
|
gimp_context_set_distance_metric() for distance metric used in
|
||
|
gimp_edit_blend() (and future usage).
|
||
|
|
||
|
GUI and Usability:
|
||
|
|
||
|
- New icons: "gimp-attach", "gimp-color-space-linear",
|
||
|
"gimp-color-space-perceptual", "gimp-color-temperature",
|
||
|
"gimp-dashboard", "gimp-detach", "gimp-tool-desaturate",
|
||
|
"gimp-tool-exposure", "gimp-tool-shadows-highlights".
|
||
|
- Switching between linear and perceptual (gamma-corrected) spaces
|
||
|
in the Histogram dialog is easier now: two buttons instead of one
|
||
|
two-way button where current state was difficult to understand.
|
||
|
- Shorten color channel labels in the color frame (color picker tool,
|
||
|
sample point editor…) with conventional 1 or 2-letter abbreviations,
|
||
|
and split coordinates on 2 lines.
|
||
|
- We now switch to "Huge" icons by default when the display pixel
|
||
|
density is over 250 PPI (used to be 300 PPI).
|
||
|
- Improve action history sorting: items climb up the list faster,
|
||
|
while top items retain their relative position longer.
|
||
|
- Extend action search "initialism": Extend initialism-based search
|
||
|
(e.g.: "gb" for "Gaussian Blur"), by matching arbitrarily-long
|
||
|
initialisms, and by allowing partial matches (with lesser priority).
|
||
|
- Values in the GimpNumberPairEntry widgets can now be cleared by clicking
|
||
|
an icon.
|
||
|
- Transform Grid controller is now available for custom UIs of GEGL
|
||
|
operations (currently used for Recursive Transform op).
|
||
|
- New GimpHighlightableButton widget is used to draw attention to buttons
|
||
|
in certain cases. Currently used for anchoring and removing floating
|
||
|
selections.
|
||
|
- Composite modes were renamed to be more descriptive, as follows:
|
||
|
Source Over => Union
|
||
|
Source Atop => Clip to Backdrop
|
||
|
Destination Atop => Clip to Layer
|
||
|
Source In => Intersection
|
||
|
|
||
|
Configurability:
|
||
|
|
||
|
- Wilber logo in the toolbox can now be disabled via Preferences
|
||
|
(the Toolbox page).
|
||
|
|
||
|
Tools:
|
||
|
|
||
|
- "Link brush size with canvas zoom" paint option becomes "Lock brush
|
||
|
to view" to make a brush invariant in display space whichever
|
||
|
scaling, rotation, and reflection.
|
||
|
- Blend tool now displays the line length (in current shell unit and
|
||
|
with ideal digit accuracy) and angle in the status bar.
|
||
|
- Constrain line angles in display space: all tools which have a line
|
||
|
constraint feature (for instance blend tool, paint tools in line
|
||
|
mode, etc.) will now do so relatively to the display, allowing you
|
||
|
to rotate the canvas in order to constrain to any arbitrary angle.
|
||
|
- Levels and Curves can now work on linear light data, the toggles are
|
||
|
at the top of respective dialogs, right next to linear/log toggles
|
||
|
for the histogram.
|
||
|
- Blend tool now has a distance metric option to determine how
|
||
|
distances are computed (Euclidean, Manhattan or Chebyshev
|
||
|
distances).
|
||
|
|
||
|
Filters:
|
||
|
|
||
|
- New GEGL-based Shadows-Highlights filter now available in the Colors
|
||
|
menu. The implementation is based on the code from darktable.
|
||
|
|
||
|
Plug-ins:
|
||
|
|
||
|
- Screenshot with the generic Freedesktop API has been implemented. It
|
||
|
is meant to replace all desktop environment specific APIs eventually
|
||
|
but needs to get reasonable features first. Therefore currently
|
||
|
GNOME/KDE and X11 implementations still have priority.
|
||
|
- qbist ported to GEGL and float.
|
||
|
- Colors for the standard output and standard error texts in the
|
||
|
Python console are now themeable, mapping respectively to normal
|
||
|
text and insensitive text colors for the "python-fu-console" widget.
|
||
|
We updated the default colors a bit for our themes. If this is not
|
||
|
good enough (for instance, if one has a specific type of color
|
||
|
blindness), at least it is now possible to create a custom theme
|
||
|
adapted to one's needs.
|
||
|
- PSD export now happens with progress bar update for feedback.
|
||
|
- Win32 Screenshot improved to handle hardware-rendered software and
|
||
|
multi-monitor displays.
|
||
|
|
||
|
File formats:
|
||
|
|
||
|
- Fix various vulnerabilities in file plug-ins: GBR (CVE-2017-17784),
|
||
|
PSP (CVE-2017-17787 and CVE-2017-17789), TGA (CVE-2017-17786) and
|
||
|
FLI (CVE-2017-17785).
|
||
|
- Fix WebP export under Windows.
|
||
|
- No more max dimension limitation for X cursors. We still warn when
|
||
|
cursor size is over a max limit for X bitmap cursors, but we don't
|
||
|
clamp anymore on export.
|
||
|
- JPEG, PNG, TIFF and WebP export plug-ins updated to honor creator's
|
||
|
default choice regarding metadata handling.
|
||
|
- Fix GIH brushes using different-sized layers.
|
||
|
- RGBE (Radiance HDR) format files can now be imported and exported.
|
||
|
- JPEG2000 loading now done via OpenJPEG library and supports any bit
|
||
|
depth (over 32-bit per channel will be clamped to 32-bit and
|
||
|
non-multiple of 8-bit will be promoted, for instance 12-bit will end
|
||
|
up as 16-bit per channel in GIMP). JPEG 2000 codestream also
|
||
|
supported and displays a dialog asking for the color space (whereas
|
||
|
JPEG 2000 image color space are auto-detected).
|
||
|
JPEG 2000 images or codestream in YCbCr, xvYCC and CMYK color spaces
|
||
|
are converted to sRGB images upon loading.
|
||
|
|
||
|
Building:
|
||
|
|
||
|
- poppler and poppler-data now hard dependencies. PDF import is
|
||
|
considered a granted feature nowadays and fallbacking to the
|
||
|
Postscript plug-in was bad experience.
|
||
|
- move PDB generation and sources to toplevel/pdb.
|
||
|
- New configure option `--enable-windows-installer` to generate the
|
||
|
necessary files for the installer translations during the build.
|
||
|
- Improve POTFILES generation for po-*/ directories.
|
||
|
- Require glib >= 2.54.2.
|
||
|
- New dependency to mypaint-brushes-1.0 for stable MyPaint brushes
|
||
|
available at installation.
|
||
|
- AppStream ID renamed from gimp.desktop to org.gimp.GIMP following
|
||
|
current convention.
|
||
|
- Require fontconfig >= 2.12.4. Lower versions are particularly a
|
||
|
problem on Win32, where many cache update failure were reported to
|
||
|
us, resulting in very slow startup and close-up (and not only the
|
||
|
first time, but every time).
|
||
|
|
||
|
Translations:
|
||
|
|
||
|
- Windows installer now localized with gettext.
|
||
|
- String freeze has started and GIMP received updates from:
|
||
|
Basque, Brazilian Portuguese, Catalan, Chinese (Taiwan), Danish,
|
||
|
Esperanto, French, German, Greek, Hungarian, Icelandic, Italian,
|
||
|
Japanese, Latvian, Polish, Russian, Serbian, Slovenian, Spanish,
|
||
|
Swedish, Turkish.
|
||
|
|
||
|
|
||
|
Overview of Changes from GIMP 2.9.6 to GIMP 2.9.8
|
||
|
=================================================
|
||
|
|
||
|
Core:
|
||
|
|
||
|
- The default brush is now "Hardness 050".
|
||
|
- Verbose version (command line: gimp -v) now displays C compiler
|
||
|
information.
|
||
|
- Transform tools don't commit identity transformation anymore.
|
||
|
- Manual language can now be selected amongst all installed manuals,
|
||
|
which is particularly interesting when no GIMP manuals are available
|
||
|
in your GUI language. This will be proposed by default when a manual
|
||
|
is not installed for the GUI language (alongside the possibility to
|
||
|
read online) and the choice can be edited in preferences.
|
||
|
- The statusbar now blinks on warnings and errors.
|
||
|
- Paste in Place, available for regular clipboard and named buffers,
|
||
|
allows pasting contents of either the clipboard a named buffer at the
|
||
|
exact coordinates it was copied from.
|
||
|
- Color Picker should now work on KDE/Wayland.
|
||
|
- Color Picker now reads values under cursor in local windows making
|
||
|
it work at least inside GIMP Windows on Wayland platforms with no
|
||
|
color-picking capabilities (for instance GNOME/Wayland) yet.
|
||
|
- OpenCL is now disabled by default. Depending on graphics cards and
|
||
|
drivers, OpenCL acceleration is often slower than multi-threaded
|
||
|
implementation, and can also sometimes be "glitchy".
|
||
|
- Now possible to open a locally-installed manual different from the
|
||
|
GUI localization. The manual language choice can be customized
|
||
|
through preferences when several manuals are installed. If no manual
|
||
|
language has been selected already and no manual for current GUI
|
||
|
localization is available, choice of help language will be proposed
|
||
|
at first call to the manual.
|
||
|
|
||
|
Configurability:
|
||
|
|
||
|
- Keybindings now possible for previous/next/top/bottom channel.
|
||
|
|
||
|
Usability:
|
||
|
|
||
|
- The spinscale widget now highlights vertical parts of the slider
|
||
|
section differently to hint that position of cursor above the widget
|
||
|
matters. When changing values in the lower step section, the pointer
|
||
|
will be wrapped around the screen so that you could continue adjusting
|
||
|
the value without interruptions.
|
||
|
- Canvas rotation and flip information is now visible in the status
|
||
|
bar (as angle value and flip icon). Clicking on these canvas status
|
||
|
will respectively raise the "Select Rotation Angle" dialog or unflip
|
||
|
the canvas.
|
||
|
- Use abbreviated versions for long layer mode names. In particular,
|
||
|
replace the "(legacy)" suffixes with "(l)" in the abbreviated
|
||
|
versions, still showing the unabbreviated names in the full list.
|
||
|
|
||
|
Tools:
|
||
|
|
||
|
- Blend tool now features on-canvas gradient editing: adding, shifting,
|
||
|
removing color stops, shifting midpoints and converting them to color
|
||
|
stops, assignging colors to color stops, changing blending type
|
||
|
for midpoints. Additional options: 'Instant mode' (active before you
|
||
|
start blending) to support the old workflow where you can't edit color
|
||
|
stops before applying the gradient fill, and 'Modify active gradient'
|
||
|
which allows changing user-writable gradients directly rather than
|
||
|
creating copies of them. Moreover, custom gradient is now saved
|
||
|
and restored across sessions.
|
||
|
- All transform tools: it makes no difference now whether a modifier is
|
||
|
pressed before of after mouse button press/release.
|
||
|
- Free Select tool selection can now be committed with double click as
|
||
|
well (only through Enter key before). This allows smoother workflows
|
||
|
on some setups, and in particular when no keyboard is available
|
||
|
(e.g. tablet-like computers).
|
||
|
- Layer group children now inherit the color tags of the parent by
|
||
|
default, unless specific color tags are assigned. Inherited color
|
||
|
tags show in a less saturated color than assigned ones.
|
||
|
|
||
|
Painting:
|
||
|
|
||
|
- When copying a generated brush, GIMP now copies its 'Spacing' property.
|
||
|
- Rename "Wheel" dynamics labels as "Wheel/Rotation". It turns out
|
||
|
that Wacom Art Pen and Airbrush pen use the same axis for barrel rotation
|
||
|
and wheel scrolling respectively. Therefore they already work in GIMP.
|
||
|
"Unhide" the feature with more obvious labels.
|
||
|
|
||
|
Color management:
|
||
|
|
||
|
- Use babl to convert between profiles if possible.
|
||
|
|
||
|
Display filters:
|
||
|
|
||
|
- New 'Clip Warning' display filter to show underexposed and overexposed
|
||
|
values. Target values below 0 and above 1.0, hence it only works on
|
||
|
16/32 bit per channel float images (such as EXR and TIFF).
|
||
|
- Display filters now operate in unbounded sRGB rather than in monitor
|
||
|
color space.
|
||
|
|
||
|
Plug-ins:
|
||
|
|
||
|
- Fix finding raw loaders on Windows/macOS.
|
||
|
- Screenshot for KDE/Wayland has been implemented (full-screen and
|
||
|
window screenshots only; rectangular area screenshots need
|
||
|
implementation on the KDE side).
|
||
|
- Screenshot can now add a delay between window pick/rectangular
|
||
|
area selection and the actual shot, but only in platforms supporting
|
||
|
the feature.
|
||
|
|
||
|
File formats:
|
||
|
|
||
|
- PSD:
|
||
|
- Fix mask position when opening/exporting.
|
||
|
- Fix active layer selection during loading.
|
||
|
- Fix potential group-layer naming conflict during loading.
|
||
|
- Fix missing some attributes loading empty layers.
|
||
|
- Fix reading files with deeply nested layer groups.
|
||
|
- Load and save layer group expanded state.
|
||
|
- Improve layer opacity loading/saving.
|
||
|
- PDF: password-protected files can now be imported.
|
||
|
- HGT: Digital Elevation Model data from NASA/NIMA can now be loaded,
|
||
|
both SRTM-1 (1 arc-second) and SRTM-3 (3 arc-seconds).
|
||
|
|
||
|
Filters:
|
||
|
|
||
|
- Update GEGL-based filter Wavelet Decompose:
|
||
|
- Add an option to keep the decomposition in a layer group.
|
||
|
- Add an option to add layer mask to each scales layers.
|
||
|
- Do not use 'New from visible' because it produces unexpected
|
||
|
results; replaced by succession of layer copy and merge down.
|
||
|
|
||
|
PDB:
|
||
|
|
||
|
- Add file-pdf-load2 API to load password-protected and/or multi-page
|
||
|
PDF files.
|
||
|
- Add file-hgt-load to load HGT files, with an argument to select between
|
||
|
SRTM-1 and SRTM-3 types.
|
||
|
|
||
|
Translations:
|
||
|
|
||
|
- Updated: Catalan, Croatian, Galician, German, Greek, Hungarian,
|
||
|
Icelandic, Indonesian, Italian, Polish, Russian, Spanish.
|
||
|
|
||
|
Building:
|
||
|
|
||
|
- Require LittleCMS >= 2.8.
|
||
|
- Initial docker-based build environment for GIMP now available.
|
||
|
- Warn against use of GCC 7.2 which has a bug breaking GIMP.
|
||
|
- An official flatpak stable package is now available on flathub.
|
||
|
|
||
|
Contributors:
|
||
|
|
||
|
Mario Blättermann, Hanno Boeck, Joao S O Bueno, Marco Ciampa,
|
||
|
Fran Dieguez, Piotr Drąg, Tobias Ellinghaus, Ell, Sveinn í Felli,
|
||
|
gogo, Luis Angel Gonzo, Anders Jonsson, Christian Kirbach,
|
||
|
Øyvind Kolås, Thomas Manni, Jordi Mas, Balázs Meskó, Lionel N,
|
||
|
Michael Natterer, Jehan Pagès, Juan Palacios, Alexandre Prokoudine,
|
||
|
Christopher Rogers, Michael Schumacher, shark0r, Dimitris Spingos,
|
||
|
Tobias Stoeckmann, Andika Triwidada, Massimo Valentini.
|
||
|
|
||
|
|
||
|
Overview of Changes from GIMP 2.9.4 to GIMP 2.9.6
|
||
|
=================================================
|
||
|
|
||
|
Core:
|
||
|
|
||
|
- Make it possible to use multithreading in GEGL and raise max amount
|
||
|
of threads to 64. Given how unstable this feature is, any value
|
||
|
above 1 should be currently treated as a step inside an industrial
|
||
|
microwave oven with the on/off switch on the outside.
|
||
|
- New clipboard implementation allows copying/pasting layers and
|
||
|
layer groups.
|
||
|
- Color tags simplify managing large projects with a lot of layers
|
||
|
and layer groups.
|
||
|
- The Mouse Pointer dialog and colors applied to images are now
|
||
|
color-managed.
|
||
|
- Gamma and precision selectors for newly created images.
|
||
|
- Never dither when converting to a higher bit depth, or to anything
|
||
|
more than 16 bits; don't offer dithering options in these cases.
|
||
|
- Default to linear TRC when converting to 16-bit float.
|
||
|
- Pre-initialize some babl-based pixel format conversion routines
|
||
|
at start-up to decrease the initial lazy initialization cost for
|
||
|
some interactions.
|
||
|
- Remove max size limitation of 4GB for XCF files.
|
||
|
- Support clipboard images in the clipboard brush and pattern.
|
||
|
- libgimp calls are now thread-safe.
|
||
|
|
||
|
Layers and compositing:
|
||
|
|
||
|
- Layer modes' code is now refactored to separate gamma-corrected
|
||
|
variations from the linear light ones, legacy modes have been
|
||
|
preserved to support older XCF files. UI to switch between the two
|
||
|
is experimental and should be treated as a temporary design.
|
||
|
- Blending and compositing of layers are configurable separately for
|
||
|
more flexibility now, compositing can be linear TRC, perceptual TRC
|
||
|
or CIE LAB.
|
||
|
- Layer blending color space and compositing color space are
|
||
|
configurable now.
|
||
|
- Layers created from the GUI and from plug-ins now default to
|
||
|
normal mode (not normal-legacy), unless all the existing layers
|
||
|
in the image are also in legacy mode.
|
||
|
- New layer modes: linear burn, vivid light, linear light, pin light,
|
||
|
hard mix, exclusion, merge, split, luminance (rgb), pass-through
|
||
|
(for layer groups only).
|
||
|
- Make erase mode an ordinary layer/paint mode.
|
||
|
- Better performance of HSV-based layer modes.
|
||
|
- Rename "Color (HSV)" mode to "Color (HSL)" to indicate the actual
|
||
|
color space being used.
|
||
|
|
||
|
On-canvas interaction changes:
|
||
|
|
||
|
- Refactor on-canvas interaction code out of some of the tools and
|
||
|
make it reusable.
|
||
|
- Update tools accordingly.
|
||
|
- Make on-canvas interaction accessible to GEGL-based filters and
|
||
|
use it in the Spiral and Supernova filters as a test case.
|
||
|
|
||
|
GUI and usability:
|
||
|
|
||
|
- Easily add or remove layer masks by clicking either the layer
|
||
|
preview or a new button in the Layers dialog.
|
||
|
- Enhance the Layer Attributes dialog to provide the single UI for
|
||
|
setting layer's name, blending mode, opacity, and offset,
|
||
|
toggling visibility, link status, various locks, color tags.
|
||
|
- Add a Save As button to the “Quit GIMP” dialog and raise images
|
||
|
on click for easy checks.
|
||
|
- Allow to choose fill color when resizing layers and images.
|
||
|
- Quick Mask and Channel Attributes dialogs use the new spinscale
|
||
|
widget for the mask opacity slider.
|
||
|
- Enable grid views of dynamics and tool presets.
|
||
|
- Allow to zoom with middle mouse button + control + drag up/down.
|
||
|
- For all paint tools, when switching to the color picker mode,
|
||
|
don't rely on the exact modifier being pressed or released. Instead,
|
||
|
check if only the right modifier is pressed after *each* modifier
|
||
|
change, and switch to color picking if it is.
|
||
|
- On startup, GIMP checks for duplicate accelerators in menus, and
|
||
|
removes duplicates.
|
||
|
- Standard (Freedesktop) and GTK+ icons can now be set by the icon
|
||
|
theme for a fully consistent style.
|
||
|
- Many new icons.
|
||
|
- Toolbox buttons do not grab focus anymore, which used to break
|
||
|
usage of the Tab key and other canvas-related shortcuts after
|
||
|
changing tools with a pointing device click.
|
||
|
- Delete Layer/Channel/Path are consistently the last option in
|
||
|
respective dialogs now.
|
||
|
- Extend the text along the tangent of the last path stroke, when
|
||
|
the length of the path is shorter than the width of the text to be
|
||
|
warped.
|
||
|
- Allow to toggle the histogram dialog between gamma and linear.
|
||
|
- New 'Colors -> Linear Invert' command to provide radiometrically
|
||
|
correct color inversion.
|
||
|
- Quit dialog now exits when all the images in the list have been
|
||
|
saved.
|
||
|
- The built-in error dialog now displays errors outputted by GEGL.
|
||
|
- Shift-clicking the visibility icon of a layer in a layer group now
|
||
|
toggles its exclusive visibility within this layer group.
|
||
|
|
||
|
Color selection and management:
|
||
|
|
||
|
- Add the profile import policy to Preferences -> Import.
|
||
|
- Color management for GEGL-based filters is expensive, so it's off
|
||
|
by default for now, and options are hidden by default too.
|
||
|
- Add LCH color selector, with support for gamut checking.
|
||
|
- Default to magenta for out-of-gamut color.
|
||
|
- Make all script-fu color buttons color-managed.
|
||
|
|
||
|
Configurability:
|
||
|
|
||
|
- Remember settings of many dialogs across sessions.
|
||
|
- New Interface / Dialog Defaults page in the Preferences dialog to
|
||
|
control defaults values of various dialogs.
|
||
|
- Settings on some individual pages of the Preferences dialog can be
|
||
|
reset separately now.
|
||
|
- Vertical scrollbar added to keep the height of the Preferences
|
||
|
dialog fitting small displays.
|
||
|
- Allow mouse to optionally configure tablet devices
|
||
|
- Allow creating shortcuts containing the Cmd key + mouse wheel events.
|
||
|
- Default to 300ppi and 1920x1080px for new documents.
|
||
|
- Default to 62px font size.
|
||
|
- Do not allow Alt+[0-9] shortcuts, they are typically reserved for
|
||
|
display switching.
|
||
|
- Icons size is now a configurable option, not a theme feature.
|
||
|
The icon size is also auto-guessed from monitor resolution now.
|
||
|
- It is now possible to have keybindings for previous/next/top/bottom
|
||
|
vectors.
|
||
|
|
||
|
Tools:
|
||
|
|
||
|
- Complete the Handle Transform tool and make it available by default.
|
||
|
- Add Hue-Chroma operation/tool that operates in CIE LCH color space.
|
||
|
- Replace Color Balance, Colorize and Hue-Saturation with GEGL-based
|
||
|
filters with a custom user interface to ease future transition to
|
||
|
non-destructive editing planned for v3.2. Remove the "Image ->
|
||
|
Tools -> Color Tools" submenu.
|
||
|
- The Move tool now shows relative coordinates when moving guides
|
||
|
and sample points.
|
||
|
- The Measure tool has better digit precision now (before that, at
|
||
|
4000 PPI, up to 7 pixels would show up as 0 mm, then at 0.1 mm from
|
||
|
the 8th pixel etc.).
|
||
|
- All paint tools now display the angle (relatively to the horizontal
|
||
|
line, centered on previously drawn position) alongside distance in
|
||
|
status bar when straight line constraining (holding shift when
|
||
|
painting).
|
||
|
- Performance of the Fuzzy Select and the Bucket Fill tool has been
|
||
|
improved.
|
||
|
- The Fuzzy Select and the Bucket Fill tool now can select colors by
|
||
|
CIE L, C, and H.
|
||
|
- Unclutter transform tools: default to "no grid", hide the original
|
||
|
layer during the interactive transform (except for the Flip tool).
|
||
|
- Make the Warp Transform tool faster, add more options, use
|
||
|
the linear sampler to ensure crisp lines after an erase.
|
||
|
- Select by Color and Color Picker tools work now correctly in color
|
||
|
spaces other than sRGB.
|
||
|
- Free Select tool now waits for Enter being pressed to confirm
|
||
|
selection, which enables you to tweak positions of polygonal selection.
|
||
|
- Color Picker doesn't snap to anything when picking colors anymore,
|
||
|
always draws the outline of the averaged region (not only while the
|
||
|
mouse is being pressed), and supports arbitrary range of values
|
||
|
regardless of the actual image color precision.
|
||
|
- Color Picker now displays pick position (also visible in the
|
||
|
Sample Points dialog now), as well as values in CIE LAB and CIE LCH.
|
||
|
- Uncommitted selection by the Intelligent Scissors tool is not
|
||
|
discarded on tool change anymore.
|
||
|
- For Intelligent Scissors, GIMP now checks whether the first and the
|
||
|
last isegments are distinct before closing the curve.
|
||
|
- Flip tool: add Clipping option to the flip tool. Add support for
|
||
|
reflecting across guides: when clicking on a guide while using the
|
||
|
Flip tool, reflect the active item across the guide, rather than
|
||
|
around its center.
|
||
|
|
||
|
Painting:
|
||
|
|
||
|
- The Smudge tool now has a Flow control that allows mixing in both
|
||
|
constant and gradient color while smudging. There's another new
|
||
|
option to never decrease alpha of existing pixels while smudging
|
||
|
in the tools options now as well.
|
||
|
- Rulers, scrollbars, and the Navigation dialog follow canvas
|
||
|
rotation now.
|
||
|
- Canvas rotation is now snappier in certain cases.
|
||
|
- For bitmap brushes, GIMP now caches hardness and disables dynamic
|
||
|
change of hardness to improve painting performance. Bitmap brushes
|
||
|
also don't get clipped anymore, when hardness is less than 100.
|
||
|
- Allow painting on transparent layers with modes other than normal.
|
||
|
- Add a specialized convolution algorithm for the hardness blur
|
||
|
to make it faster.
|
||
|
- Make the Force option insensitive for the Pencil tool.
|
||
|
- Add new "Pressure Size" dynamics.
|
||
|
|
||
|
File Formats:
|
||
|
|
||
|
- Make the default raw (DSLR) image importer configurable.
|
||
|
- Add RawTherapee plug-in to pre-process various raw (DSLR) images,
|
||
|
RawTherapee v5.2 is the minimum requirement.
|
||
|
- Add new file-raw-placeholder plug-in that registers itself for
|
||
|
loading all raw formats from file-raw/file-formats.h, but does
|
||
|
nothing except returning an error message pointing to darktable
|
||
|
and RawTherapee.
|
||
|
- Add native WebP loader/exporter with support for ICC profiles,
|
||
|
animation, metadata.
|
||
|
- The TIFF loader will not generate warnings about private tags
|
||
|
anymore.
|
||
|
- Handle linear gamma PNG files correctly, provide a combo box for
|
||
|
specifying PNG bit depth / variant at exporting time.
|
||
|
- Add support for linear burn, linear light, vivid light, pin light,
|
||
|
and hard mix layer modes in PSD (importing and exporting).
|
||
|
- Load PSD files with layers which contain additional information
|
||
|
with a length that is not divisible by 4.
|
||
|
- Add support to import/export layer color tags from/to PSD files.
|
||
|
- Optionally convert all imported (not XCF) images to 32-bit linear
|
||
|
floating point, and optionally add a little noise in order to
|
||
|
distribute the colors minimally.
|
||
|
- Optionally add alpha channel to layers of imported images
|
||
|
(configurable in Preferences > Import).
|
||
|
- Support writing PNM files with 16-bit image precision.
|
||
|
- Improve support for PCX files:
|
||
|
* saving 1bpp and 4bpp images (according to palette size).
|
||
|
* loading 2bpp, 2 planes/1bpp, 3 planes/1bpp and 4bpp images.
|
||
|
* non-Black&White monochrome PCX files (any 2 colors according to
|
||
|
the palette).
|
||
|
- Add support for exporting multi-page PDF from image layers, with
|
||
|
optional reversed order.
|
||
|
- Add RLE support for RGB565 in file-csource.
|
||
|
|
||
|
Metadata:
|
||
|
|
||
|
- Add new metadata viewer that uses Exiv2 to display Exif, XMP, IPTC,
|
||
|
and DICOM metadata (the latter is displayed on the XMP tab).
|
||
|
- Add metadata editor that supports adding/editing writing XMP, IPTC,
|
||
|
DICOM, and GPS/Exif metadata, as well as loading/exporting metadata
|
||
|
from/to XMP files.
|
||
|
|
||
|
Printing:
|
||
|
|
||
|
- Print resolution can now be reset to defaults, new values for the
|
||
|
same image is actually used now without reloading the image.
|
||
|
|
||
|
Plug-ins:
|
||
|
|
||
|
- The Screenshot plug-in now assigns either monitors profile or
|
||
|
converts to sRGB.
|
||
|
- The Screenshot plug-in can now take screenshots of a single window
|
||
|
and include the mouse pointer in the same time (if the desktop/OS
|
||
|
allows it).
|
||
|
- Port smooth-palette to GEGL.
|
||
|
- Enhance the raw (not the digital negative) files plugin:
|
||
|
introduce exporting settings and remember them across sessions,
|
||
|
make the plugin invokable non-interactively, and more.
|
||
|
- Plug-ins can now be installed into first level directories of a
|
||
|
plug-ins/ folder. This is in particular to avoid the "DLL hell"
|
||
|
with shared libraries installed by a plug-in, interfering with other
|
||
|
unrelated plug-ins. The entry point file has to be named the same as
|
||
|
the directory (minus extension).
|
||
|
|
||
|
Filters:
|
||
|
|
||
|
- Add GEGL-based filters: Neon (Edge detection), Wavelet Decompose,
|
||
|
Image Gradient, Symmetric Nearest Neighbor, Extract Component,
|
||
|
RGB Clip, Simple Linear Iterative Clustering, Waterpixels, Spiral.
|
||
|
- Add rotate/flip buttons to the Convolution Matrix filter's GUI
|
||
|
to rotate/flip the matrix.
|
||
|
- For GEGL-based filters, use a new metadata language to dynamically
|
||
|
control UI attributes based on context (e.g. auto-disable
|
||
|
unapplicable options).
|
||
|
- Allow filter actions to have hardcoded default operation settings
|
||
|
by encoding them directly in the string attached to all filter
|
||
|
actions.
|
||
|
|
||
|
Color Palettes:
|
||
|
|
||
|
- Merge Palettes command is available for multiple selected color
|
||
|
palettes now.
|
||
|
|
||
|
Assets / Resources:
|
||
|
|
||
|
- Some basic presets are available for the Crop tool now: 2x3,
|
||
|
3x4, 16:10, 16x9, and square.
|
||
|
- Documents templates have been updated and now feature popular,
|
||
|
contemporary document presets for both print and digital media.
|
||
|
|
||
|
PDB:
|
||
|
|
||
|
- Rename *-paste-as-new to *-paste-as-new-image.
|
||
|
- Add PDB API for layer blend space, compositing space, and
|
||
|
compositing mode.
|
||
|
|
||
|
Build:
|
||
|
|
||
|
- Depend on LCMS2.7+ now, because earlier LCMS2 releases caused
|
||
|
problems with certain GIMP blend modes.
|
||
|
- Depend on libpng 1.6.25+ to avoid warnings about known incorrect
|
||
|
sRGB profiles, also avoid various vulnerabilities.
|
||
|
- Depend on glib-networking now for HTTPS support.
|
||
|
- Depend on librsvg 2.40.6 which fixes rendering bugs.
|
||
|
- Add a flatpak-builder manifest.
|
||
|
|
||
|
OS-specific changes:
|
||
|
|
||
|
- Help browser launches on macOS now.
|
||
|
|
||
|
Bugs:
|
||
|
|
||
|
- Overall 204 bugs have been fixed or partially addressed since
|
||
|
GIMP 2.9.4.
|
||
|
|
||
|
Translations:
|
||
|
|
||
|
- Updated: Catalan, Chinese (Taiwan), Croatian, Czech, Danish,
|
||
|
Finnish, French, German, Greek, Hungarian, Icelandic, Italian,
|
||
|
Kazakh, Occitan, Polish, Portuguese, Russian, Scottish Gaelic,
|
||
|
Serbian, Slovak, Slovenian, Spanish, Swedish.
|
||
|
|
||
|
|
||
|
Overview of Changes from GIMP 2.9.2 to GIMP 2.9.4
|
||
|
=================================================
|
||
|
|
||
|
Core:
|
||
|
|
||
|
Color Management:
|
||
|
- add new GimpColorTransform object to create abstraction from LittleCMS
|
||
|
- now color-managed:
|
||
|
- layer/image/color palette/gradient/pattern previews
|
||
|
- Color Picker tool
|
||
|
- color buttons of GimpColorHistory
|
||
|
- GimpFgBgEditor, as used e.g. in the toolbox
|
||
|
- color selectors
|
||
|
- DND widget
|
||
|
- painting tools
|
||
|
- copying layers/paste buffer between images
|
||
|
- Colors applied to images
|
||
|
- GimpColorPanel and its color dialog (color widgets in dialogs)
|
||
|
- color areas created from menu actions
|
||
|
- color management for grayscale images, including setting preferred
|
||
|
ICC profile
|
||
|
- add fast switching between color managed display and soft-proofing
|
||
|
- add a per-image "is color managed" switch and show the image's
|
||
|
"is color managed" state in the window title string
|
||
|
- add basic support for creating images with color profiles
|
||
|
- add "Optimize" options for display and soft-proofing to optionally
|
||
|
speed-up rendering at the cost of color fidelity
|
||
|
- add Image -> Color Management -> Save Color Profile to File...
|
||
|
- improve the naming of generated ICC profiles
|
||
|
- add a shortcut to the profile chooser dialog on OS X too
|
||
|
- don't let display color management settings affect file import
|
||
|
- enable color management when a profile is assigned to the image
|
||
|
- enable color management when the image is converted from/to grayscale
|
||
|
- pass the right color profile around in gimp_selection_float()
|
||
|
- hardcode the CMYK selector's conversion parameters, as well as NTSC
|
||
|
parameters in babl/GEGL/GIMP
|
||
|
- have all previews track the monitor they are on
|
||
|
|
||
|
Core:
|
||
|
- add "Select -> Flood" select action
|
||
|
- add "Select -> Remove Holes" action
|
||
|
- add "Border style" combo to the "Select -> Border..." dialog
|
||
|
- do not request xcf compat mode when compat_toggle not sensitive
|
||
|
- initialize fontconfig in the background to be able to show a pulsing
|
||
|
progress bar when rebuilding the list of fonts (typically, the first
|
||
|
time GIMP runs)
|
||
|
- fix the Behind blending mode
|
||
|
- make Burn mode output match Gimp 2.8 (partial revert of bug 744265)
|
||
|
- improve file magic matching
|
||
|
- add a custom guide concept
|
||
|
- improve updating the statusbar messages and icons
|
||
|
|
||
|
|
||
|
GUI:
|
||
|
|
||
|
Menus:
|
||
|
- move the image-duplicate action next to image-new
|
||
|
- add Image -> Color Management -> Color Management Enabled
|
||
|
- change "Select _Custom Color..." to "_Custom Color..."
|
||
|
- change "Export" to "Export..." in the File menu
|
||
|
|
||
|
Dialogs:
|
||
|
- include recently used colors in the Dockable Colors dialog
|
||
|
- add RGB-based Luminance channel to the Histogram dialog
|
||
|
- fix remembering the order of dockable dialogs
|
||
|
|
||
|
Preferences:
|
||
|
- reorder the prefs categories tree and rename some pages
|
||
|
- move "Snap Distance" to the prefs dialog's "Snapping" page
|
||
|
- add configuration for undo preview size
|
||
|
- clean-up Preferences -> Color Management
|
||
|
- add "Shortcut [some modifier] + Mousewheel" for changing pen size
|
||
|
|
||
|
Themes:
|
||
|
- rename theme "Default" into "System"
|
||
|
- add new GUI themes: Lighter, Light, Gray, Dark, Darker
|
||
|
|
||
|
Icons:
|
||
|
- add icon theme selection and make the icon theme path configurable in prefs
|
||
|
- preserve 2.8 pixel-perfect icon theme under the name "Legacy"
|
||
|
- add new symbolic icon theme for GIMP
|
||
|
- add a scalable icon theme and a configure option --enable-vector-icons
|
||
|
|
||
|
Widgets:
|
||
|
- add new GimpBufferSourceBox widget and use it in GimpOperationTool
|
||
|
|
||
|
View/Display:
|
||
|
- fix various bugs related to rotated canvas
|
||
|
- make GIMP not ignore 'Maximized' hints on startup in Windows
|
||
|
- enable a pulsing progress bar in the splash
|
||
|
- make new images jump around much less
|
||
|
- fix image position when entering/leaving fullscreen mode
|
||
|
- make layer boundary re-drawn correctly on scrolling
|
||
|
- make images not appear completely black when images dockable is visible
|
||
|
- have all previews track the monitor they are on
|
||
|
|
||
|
|
||
|
Tools:
|
||
|
|
||
|
Fuzzy Select:
|
||
|
- add "Diagonal neighbors" option
|
||
|
|
||
|
Foreground Select:
|
||
|
- fix ghost brush outline
|
||
|
|
||
|
Bucket Fill:
|
||
|
- add "Diagonal neighbors" option
|
||
|
|
||
|
Posterize:
|
||
|
- turn the posterize tool into an ordinary GEGL filter
|
||
|
- remove posterize from Tools -> Colors
|
||
|
|
||
|
Desaturate:
|
||
|
- turn the Desaturate tool into a normal GEGL filter
|
||
|
- move "Desaturate" to Colors -> Desaturate
|
||
|
|
||
|
Align:
|
||
|
- add vertical offset to distribution options
|
||
|
|
||
|
Paths:
|
||
|
- improve performance
|
||
|
|
||
|
Flip:
|
||
|
- rename options to "Transform" and "Direction"
|
||
|
|
||
|
Cage Transform:
|
||
|
- fix a few performance issue
|
||
|
|
||
|
Unified Transform:
|
||
|
- make the tool not fail when currently selected layer is hidden
|
||
|
|
||
|
Text:
|
||
|
- fix text input methods to work in-place (not in an overlayed box)
|
||
|
- add background colors setting, only exposed for advanced input methods
|
||
|
|
||
|
Blend:
|
||
|
- use gegl:distance-transform in the blend tool, it has a progress now
|
||
|
- make shapeburst work with the new interactive gradient code
|
||
|
|
||
|
All Painting Tools:
|
||
|
- add mirror symmetry
|
||
|
- remove artifacts from painting tools in Burn blending mode
|
||
|
- add shortcut actions for changing spacing, hardness, and force
|
||
|
|
||
|
MyPaint:
|
||
|
- dramatically improve performance of the tool and enable it by default
|
||
|
- add Colorize mode
|
||
|
- add a toggle to change between erase & paint mode
|
||
|
- add a brush selector to the MyPaint brush options
|
||
|
- add a dockable dialog to choose a brush, with tagging
|
||
|
- read tags from MyPaint brushes
|
||
|
- improve blend math
|
||
|
- allow plug-ins to register procedures in the <MyPaintBrushes> menu
|
||
|
|
||
|
Smudge:
|
||
|
- fix the clipping of out-of-gamut channel values
|
||
|
- fix the handling of layers with alpha channels
|
||
|
|
||
|
Ink:
|
||
|
- the range of angle is now [-PI..PI]
|
||
|
|
||
|
|
||
|
Plug-ins/GEGL Filters:
|
||
|
|
||
|
Preview:
|
||
|
- add a "split preview" feature to GEGL ops
|
||
|
- allow to switch the split preview between horizontal and vertical
|
||
|
- allow to swap the before/after position
|
||
|
|
||
|
Filters:
|
||
|
- update the "Recently used" menu with GEGL filters
|
||
|
- replace Selective Gaussian Blur with the GEGL version
|
||
|
- add gegl:saturation as Colors -> Saturation
|
||
|
- add gegl:high-pass as Filters > Enhance > High Pass
|
||
|
- add new gegl:gegl filter that executes a custom processing chain
|
||
|
- port Tile and Pagecurl plug-ins to GEGL
|
||
|
- refactor the screenshot plug-in into backend and front-ends, one
|
||
|
per X.org, Wayland, Windows, OS X
|
||
|
- add Monochrome option to the GEGL version of Channel Mixer
|
||
|
- bring dialog titles and help IDs to GEGL filter dialogs
|
||
|
|
||
|
File Plug-Ins:
|
||
|
- add darktable plug-in to pre-process various raw images
|
||
|
- port file-gif-save and file-tiff to GIO
|
||
|
- TIFF support:
|
||
|
- make libtiff a hard dependency
|
||
|
- merge the file-tiff-load and file-tiff-save plug-ins
|
||
|
- fix various tiff exporting bugs
|
||
|
- EXR support:
|
||
|
- read comment, Exif, and XMP data from EXR files
|
||
|
- use GIMP's internal profile when loading EXR
|
||
|
- PSD support:
|
||
|
- fix the loading of files with adjustment or fill layers
|
||
|
- fix the reading of layer group structure
|
||
|
- fix the raw image loader
|
||
|
- fix the layer groups support in OpenRaster
|
||
|
- code cleanup in file-bmp
|
||
|
- fix the exporting of KISS - CELL (*.cel) images
|
||
|
- resurrect the email plugin
|
||
|
- use GIO to figure if a file is hidden
|
||
|
|
||
|
PyGimp:
|
||
|
- update pyconsole code
|
||
|
- add binding for GimpImageType
|
||
|
- add GimpColorConfig object
|
||
|
- add type definition for GimpColorManaged
|
||
|
- make GimpParasite type known to the code generator
|
||
|
- require Pycairo in configure, link gimpui against pycairo
|
||
|
- fix the application of paintbrush size in Python scripts
|
||
|
|
||
|
Script-Fu:
|
||
|
- make regex matching return character indexes
|
||
|
- fix the hanging of Script-fu on machines with 64-bit longs
|
||
|
- update tinyscheme code from upstream
|
||
|
|
||
|
|
||
|
PDB:
|
||
|
|
||
|
- Bug 759104 - Allow coordinates of sample points to be accessed from scripts
|
||
|
|
||
|
|
||
|
Build:
|
||
|
|
||
|
build/win:
|
||
|
- Start building libmypaint.
|
||
|
- Add pcre and upgrade glib2 to 2.48.1
|
||
|
- Upgrade exiv2 to 0.25
|
||
|
- Clear DISPLAY before building
|
||
|
- Disable webkitgtk
|
||
|
|
||
|
|
||
|
OS-specific changes:
|
||
|
|
||
|
Windows:
|
||
|
- Add support for generating crash backtraces using Dr. MingW
|
||
|
|
||
|
|
||
|
Overview of Changes from GIMP 2.8.0 to GIMP 2.9.2
|
||
|
=================================================
|
||
|
|
||
|
|
||
|
Core:
|
||
|
|
||
|
The core got completely ported to GEGL, listing all changes involved
|
||
|
would be too much, therefore we summarize the changes in app/ per
|
||
|
source subdirectory:
|
||
|
|
||
|
base
|
||
|
composite
|
||
|
paint-funcs:
|
||
|
- Remove these directories, they contained the old pixel
|
||
|
manipulation functions
|
||
|
|
||
|
config:
|
||
|
- Remove GimpBaseConfig, add GimpGeglConfig
|
||
|
- Add config options for new features
|
||
|
|
||
|
core:
|
||
|
- Add some things that used to live in base/, like the temp-buf,
|
||
|
boundary and histogram code
|
||
|
- Port all functions to GEGL and higher bit depths
|
||
|
- Keep the image around as GEGL graph, all other compositing is gone
|
||
|
- Add non-destructive drawable filters, but use them only for previews
|
||
|
- Implement the floating selection as drawable filter
|
||
|
- Implement GimpImageMap using drawable filters
|
||
|
- Move batch processing to gimp-batch.[ch]
|
||
|
- Run batch commands in an already running GIMP instance
|
||
|
- Ported almost everything from filenames/FILE/fd to GFile/GIO
|
||
|
- Be smarter about migrating old user config files
|
||
|
- Move many object struct members to private structs
|
||
|
|
||
|
file:
|
||
|
- Support GIO-ported file load/save procs, handle remote files generically
|
||
|
|
||
|
- Add content locking to items to prevent them from being edited
|
||
|
- Add position locking to items to prevent them from being translated
|
||
|
- Implement all color management in the core
|
||
|
- Add an automatic palette of recently used colors
|
||
|
- Implement metadata handling in the core
|
||
|
|
||
|
gegl:
|
||
|
- Now contains utility functions and abstractions to work with
|
||
|
GEGL more easily
|
||
|
- Move all operations to the new operations/ directory
|
||
|
|
||
|
operations:
|
||
|
- New directory containing all GIMP-internal GEGL operations
|
||
|
and their config objects (if any)
|
||
|
- Add a correct version of the overlay layer mode
|
||
|
- Add LCH layer modes
|
||
|
|
||
|
paint:
|
||
|
- Port all paint cores to Gegl
|
||
|
- Add MyPaint brush paint core
|
||
|
|
||
|
pdb:
|
||
|
- Add compat procedures that work like the removed plug-ins
|
||
|
- Use the new GimpValueArray, GValueArray got deprecated
|
||
|
|
||
|
plug-in:
|
||
|
- Allow plug-ins to access image data at full bit depth
|
||
|
- Add a compat mode so unported plug-ins always get 8-bit data
|
||
|
|
||
|
text:
|
||
|
- Port text rendering to GEGL
|
||
|
- Use HarfBuzz to inspect fonts for creating an example string
|
||
|
|
||
|
xcf:
|
||
|
- Add zlib compression to XCF loading/saving
|
||
|
|
||
|
|
||
|
GUI:
|
||
|
|
||
|
- Add GUI to handle the new high bit depths and conversion between them
|
||
|
- Add new action group "filters" which can run arbitrary GEGL ops
|
||
|
- Add lots of actions invoking GEGL ops that replace removed plug-ins
|
||
|
- Preview all GEGL ops live on the canvas, using drawable filters
|
||
|
- Mostly switch from using stock-ids to icon-names
|
||
|
- Turn all stock icons into named icons and add an icon theme
|
||
|
- Allow selecting colors from an image's colormap
|
||
|
- Add "Show in file manager" to everything that has a filename
|
||
|
- Add an action search dialog to find actions by keyword and execute them
|
||
|
- Split the save dialog into subclasses for load, save and export
|
||
|
- Implement various color management dialogs that were in the lcms plug-in
|
||
|
- Make sure windows appear on the correct monitor
|
||
|
- Simplify and reduce the actions that modify paint tool behavior
|
||
|
- Add canvas rotation and flipping
|
||
|
- Allow zooming to the selection
|
||
|
- Make the image tab position configurable in single window mode
|
||
|
- Add separate snapping settings for fullscreen mode
|
||
|
- Remove bitmaps cursors and only support RGBA cursors
|
||
|
- Color manage drawable and image thumbnails
|
||
|
- Add more format string options for the image title
|
||
|
- Use the external gtkosxapplication package instead of included code
|
||
|
- Add a generic GimpPopup class and use it instead of duplicating code
|
||
|
- Make the generated GUI of GEGL ops much better
|
||
|
- Allow to implement custom GUI for gegl ops, and do that in some cases
|
||
|
- Add GimpDial, GimpPolar and GimpCircle to be used for angle and hue picking
|
||
|
|
||
|
|
||
|
Tools:
|
||
|
|
||
|
- Add an "experimental playground" for unfinished tools
|
||
|
- (experimental) Add a tool that paints with MyPaint brushes
|
||
|
- (experimental) Add an n-point deformation tool
|
||
|
- (experimental) Add a transform tool with a variable # of handles
|
||
|
- (experimental) Add a seamless clone tool
|
||
|
- Add a unified transform tool that allows rotating, scaling, perspective
|
||
|
- Add a warp tool as replacement for the IWarp plug-in
|
||
|
- Allow tool dialogs to be embedded on the canvas generically
|
||
|
- Add much more options to painting, like the ability to lock
|
||
|
tool options to brush defaults, and to zoom the brush with the canvas
|
||
|
- Make the blend tool work interactively in realtime
|
||
|
- Add undo/redo to many tools (using the normal shortcuts)
|
||
|
|
||
|
|
||
|
Libgimp:
|
||
|
|
||
|
- Deprecate the entire old pixel manipulation API
|
||
|
- Add API to get a drawable's buffer, the rest can be done with GEGL
|
||
|
- Add high bit depth support when using the new buffer API
|
||
|
- Make many enum value names sane and deprecate the old names
|
||
|
- Many core enums moved here instead of proxying them via PDB generation
|
||
|
- Add API to stroke vector outlines, with all core properties
|
||
|
- Add more context API that affects other procedures
|
||
|
- Deprecate API with weird names, and add new API with less arguments
|
||
|
- Add metadata and color management API, utility functions and widgets
|
||
|
- Split GimpPickButton into per-platform backends and fix it on OS X
|
||
|
|
||
|
|
||
|
Plug-ins:
|
||
|
|
||
|
- Remove lots of plug-ins that are now implemented as GEGL ops
|
||
|
- Remove the lcms plug-in, this is now done in the core/libgimp
|
||
|
- Remove the metadata plug-ins, this is now done in the core/libgimp
|
||
|
- Remove the file-uri plug-in, this is now done in the core using GIO
|
||
|
- Port many file plug-ins to GIO
|
||
|
- Port many plug-ins that are not strictly filters to GEGL
|
||
|
|
||
|
|
||
|
Source and build system:
|
||
|
|
||
|
- Don't use INCLUDES in Makefile.am, use AM_CPPFLAGS instead
|
||
|
|
||
|
|
||
|
General:
|
||
|
|
||
|
- Lots and lots of bug fixes
|
||
|
- Translation updates
|