John Cupitt
75e6906f52
improve morph docs
2022-03-22 15:36:11 +00:00
John Cupitt
9713a71bf0
block resolutions < 0
...
since they can trigger a sanity failure in the test suite
2022-03-22 15:09:13 +00:00
John Cupitt
1b97b52318
clarify draw docs
...
see https://github.com/libvips/libvips/discussions/2733
2022-03-22 10:03:36 +00:00
John Cupitt
a77519f7c3
try to improve docs
...
see https://github.com/libvips/libvips/discussions/2733#discussioncomment-2412590
2022-03-22 09:10:34 +00:00
John Cupitt
eaf34b8f13
remove openjpeg bpp handling
...
it's deprecated
2022-03-17 15:02:29 +00:00
John Cupitt
168d7652c2
Merge branch '8.12'
2022-03-11 16:25:11 +00:00
John Cupitt
f0eb493643
fix thumbnail with cmyk output
...
see https://github.com/libvips/php-vips/issues/138
thanks AdamGaskins
2022-03-11 16:21:12 +00:00
Essem
d4eb2e82d2
cgifsave: Make loop counts more accurate ( #2709 )
...
* cgifsave: Added "noloop" option
* cgifsave: Change loop count logic
* make sure nsgifload returns the correct loop count
* Revert "make sure nsgifload returns the correct loop count"
This reverts commit 77550f097940944492d4178a783fc4e73c7a769f.
* Add fallback
2022-03-10 12:30:57 +00:00
John Cupitt
356edc3779
revise tests for new libnsgif loop behaviour
...
see https://github.com/libvips/libvips/pull/2712
2022-03-09 10:20:41 +00:00
Michael Drake
292ee9a47e
libnsgif: Update to latest upstream. ( #2712 )
2022-03-09 10:13:48 +00:00
John Cupitt
2fdab9ba70
check page size from pdfium
...
PDFium allows page width and height to be less than 1, which will cause
libvips severe indegestion.
2022-03-08 10:21:08 +00:00
John Cupitt
ede67090cb
revise resample docs
...
see https://github.com/libvips/libvips/discussions/2711
2022-03-06 11:42:27 +00:00
Michael Drake
5f7c12e474
libnsgif: Update to latest upstream. ( #2706 )
2022-03-04 08:05:36 +00:00
John Cupitt
c0de1b6169
fix dispose order in gifsave
...
Shut down cgif before we shut down the target it is writing to so that
flush in cgif has somewhere to flusgh to.
See https://github.com/libvips/libvips/discussions/2707
2022-03-03 22:41:11 +00:00
Kleis Auke Wolthuizen
330ebf3cd7
Mosaicing fixes and improvements ( #2705 )
...
* Fix segv in `vips_mosaic1`
* Fix ref handling in `rotjoin_search`
* Pass `oarea` to `vips_affine` as `VipsArrayInt` instead
* Flip X/Y positions in `vips__coeff`
* Fix `-Wunused-but-set-variable` warning
* Deprecate unused mosaicing arguments
* Remove a couple of stray header decls
2022-03-03 20:10:20 +00:00
Kleis Auke Wolthuizen
a0f9cd95e0
Ensure compatibility with nip2 ( #2704 )
...
nip2 uses the `VIPS_EXEEXT` definition.
2022-03-03 18:51:33 +00:00
Michael Drake
ac35124f59
nsgifload: Fix gif decoding issue. ( #2702 )
...
The nsgif_data_scan() call returns an error code that says
if anything was wrong with the source data.
It is not unusual for there to be bad stuff in a GIF, so we
only need to worry if we failed to find any frames.
2022-03-03 18:49:31 +00:00
John Cupitt
f65b615a17
minor nsgifload revisions
...
- add note to changelog
- remove dead code
- improve debug output
- track current page number
see https://github.com/libvips/libvips/pull/2699
2022-03-03 11:49:13 +00:00
John Cupitt
eb577606a0
revise change detection again
...
to fix debug output
2022-03-03 11:48:49 +00:00
Michael Drake
8e9fe72dea
Update libnsgif ( #2699 )
...
* libnsgif: Rename upstream README with markdown extension.
* libnsgif: Drop default frame delay patch
* libnsgif: Remove unused utils / log.h header.
* libnsgif: Rename files to match upstream.
* libnsgif: Extend update script to update local README and test/
* libnsgif: Run update script.
* libnsgif: Update buildsystem for renamed files
* nsgifload: Switch to new library header.
* nsgifload: Remove optional and unused bitmap callbacks.
* nsgifload: Update to use new libnsgif API.
2022-03-03 10:02:36 +00:00
John Cupitt
716fbf75b1
raise GIF save frame size limit
2022-03-02 18:06:44 +00:00
John Cupitt
669ea43138
improve the GIF save change detector
...
Instead if just summing PELs, scale RGBA differently. This lets us
detect changes like [255, 0, 0] to [9, 255, 0]
2022-03-02 18:03:36 +00:00
John Cupitt
de2adb99a2
better frame write loop for gif save
2022-02-28 17:20:42 +00:00
John Cupitt
3b6072437d
add new param to gifsave docs
...
also note in changelog and revise layout for 80 columns
see https://github.com/libvips/libvips/pull/2628
2022-02-28 16:38:02 +00:00
Daniel Löbl
b0f993eec8
cgifsave: avoid size issue ( #2628 )
...
* cgifsave: avoid size issue
avoid size issue by restoring the original transparency setting after quantization/dithering
* switch to per-frame alpha channel
* add option for lossy transparency
* switch lossy transparency off by default
* switch to g_malloc instead of g_malloc0
no need to 0 initialize at this point
* adapt to libvips coding conventions
* cgifsave: avoid size issue
avoid size issue by restoring the original transparency setting after quantization/dithering
* switch to per-frame alpha channel
* add option for lossy transparency
* switch lossy transparency off by default
* switch to g_malloc instead of g_malloc0
no need to 0 initialize at this point
* adapt to libvips coding conventions
* switch to official Homebrew sources for installing cgif
* bump required cgif version to v0.2.0
2022-02-28 16:19:13 +00:00
shado23
c02b69eaba
Address review feedback on VRegion ( #2684 ) ( #2696 )
...
* Add VRegion8.h to Makefile.am, meson.build, Doxyfile.in.
* Fix inaccurate function documentation.
* Add stride method to VRegion.
2022-02-28 16:17:40 +00:00
John Cupitt
3073ee90b7
Improve edge handling for mapim ( #2681 )
...
* almost there
* smol changes
* getting close now
segv on the test suite, annoyingly
* argh still not quite thert
* phew
2022-02-28 09:12:09 +00:00
John Cupitt
9d841e848f
more init check to libvips base class
...
helps introspection run correctly if there's no vips_init()
2022-02-27 18:48:37 +00:00
Kleis Auke Wolthuizen
f11b58ff6c
Remove VIPS_EXEEXT
and VIPS_SONAME
definitions ( #2694 )
...
And the corresponding `soname.h` header.
2022-02-27 15:27:37 +00:00
Kleis Auke Wolthuizen
0337c09700
Cleanup gettext handling ( #2695 )
...
Use GLib's i18n support instead of copying and pasting that
logic into its own header. This deprecates the vips/intl.h
header in favour of glib/gi18n.h.
2022-02-27 15:27:28 +00:00
Kleis Auke Wolthuizen
517089fb4b
Meson: don't install deprecated headers when -Ddeprecated=false
( #2693 )
2022-02-27 13:44:09 +00:00
John Cupitt
7d1956974e
Merge branch 'master' of github.com:libvips/libvips
2022-02-27 13:43:13 +00:00
Kleis Auke Wolthuizen
65fbcd351b
Add missing funcs to public C API ( #2692 )
2022-02-27 13:42:17 +00:00
Kleis Auke Wolthuizen
50a74ceeec
Mark some functions and variables as static ( #2691 )
...
These are only used in the same file, and not exported.
2022-02-27 13:41:39 +00:00
Kleis Auke Wolthuizen
dcfac75f06
Meson: ensure NIfTI can be found ( #2689 )
...
* Meson: ensure NIfTI can be found
* Incorporate review comment
2022-02-27 13:40:11 +00:00
Lovell Fuller
6639b90f22
window: delay setting ref count ( #2690 )
...
fixes an assert fail in window_free
2022-02-27 09:50:04 +00:00
Kleis Auke Wolthuizen
802dabc6aa
Meson: ensure -Dpng=disabled
does not disable WebP load/save ( #2686 )
2022-02-25 19:04:07 +00:00
Kleis Auke Wolthuizen
a67d637a3a
Meson: fix building with -Dspng=enabled
( #2685 )
...
And prefer to search for `spng.pc` first, since that one is
generated by Meson.
2022-02-25 15:41:21 +00:00
shado23
3a45d6e842
Add support for regions in the C++ API
2022-02-25 16:19:44 +01:00
John Cupitt
e1ad26b782
Merge branch 'master' of github.com:libvips/libvips
2022-02-25 13:45:06 +00:00
John Cupitt
b9e6bda6f7
fix oxygen
...
see https://github.com/libvips/libvips/issues/2650#issuecomment-1050142161
2022-02-25 13:44:30 +00:00
John Cupitt
4196a0e73a
set some -Ds depending on the release type ( #2682 )
...
* set some -Ds depending on the release type
libvips uses g_assert() quite a bit to check things like pointer bounds,
and this can have a large performance impact.
This PR turns off g_assert() (plus some other things) in release mode,
and enables leak checking (and some other things) in debug mode.
I'm not sure if this is the best way to implement this kind of thing.
Does meson have a more offical path for this?
* incorporate comments
* link asserts and cast checks to optimization level
2022-02-25 12:52:18 +00:00
Kleis Auke Wolthuizen
a8b48e1442
Add missing annotations to #endif directives ( #2678 )
2022-02-23 11:55:40 +00:00
John Cupitt
5ff96da873
add note on heifload unlimited to changelog
2022-02-23 10:35:46 +00:00
Lovell Fuller
4ca4b07654
heifload: add unlimited option, default to false ( #2677 )
2022-02-23 10:34:07 +00:00
Kleis Auke Wolthuizen
1e4cd2d5c2
Fix building with -Dmodules=disabled ( #2676 )
...
* Fix building with -Dmodules=disabled
* Reformat line [skip ci]
2022-02-23 10:32:02 +00:00
Kleis Auke Wolthuizen
d80185060d
Various improvements to the build systems ( #2675 )
...
* Meson: remove space before colon
Since key-value pairs in Python are usually delimited as
colon+space instead of space+colon+space.
* Meson: disable modules by default when building static libraries
Corresponds to autotools. See: #2323 .
* Meson: make modules a feature option
Corresponds to autotools, where modules are built
automatically if enabled and supported.
* Meson: specify minimum required GLib version
* Meson: fix indentation
* Remove unused function checks
* Simplify GLib configure checks
* Meson: ensure modules doesn't include enumtypes sources
Since that would cause duplicate symbols.
(`soname_header` can also be safely removed here,
since that is already included in `libvips_headers_dep`)
2022-02-22 14:33:42 +00:00
John Cupitt
c5f2fea8bf
fix a gcc warning with clang pragmas
2022-02-22 10:06:43 +00:00
Michael Drake
b05515b0c5
Update libnsgif from upstream ( #2674 )
...
* libnsgif: Remove patch artifact.
* libnsgif: Update from upstream.
2022-02-21 20:07:20 +00:00
John Cupitt
49cae56e1e
stray "im_" prefix
2022-02-20 17:07:29 +00:00