Commit Graph

189 Commits

Author SHA1 Message Date
Kleis Auke Wolthuizen 97720a1fb8
Minor doc improvements (#3236)
* doc: regenerate docbook after commit 5056f59

* cplusplus: update doc comments

Incorporates the improvements of commit ac4c2d2 and 6bb0b4d.
2022-12-23 12:33:26 +00:00
Kleis Auke Wolthuizen 489ed5c0e8
Update C++ binding and function list (#3204) 2022-11-30 00:06:06 +00:00
Kleis Auke Wolthuizen aef030e78a
cplusplus: add missing argc check in resize example (#3200) 2022-11-30 00:04:27 +00:00
Daniel Löbl 2d9c50735f
webpsave: switch to sink_disc (#3018)
* webpsave: switch to sink_disc

* fix some warnings

* distinguish between animated and single image write

* fix some formatting issues

* add missing comments

* fix webpsave_mime

* don't use sink_disc for single image webp write

* fix potential segv/double free

* update changelog

* remove leftover function declaration

* Revert "don't use sink_disc for single image webp write"

This reverts commit a75922ca93ee8987fa5e1ffc52b68e22bd6fb1fb.

* implement review feedback

* adjust to a column size of 80

* get contiguous RGB(A) buffer directly from VipsRegion

* Revert "get contiguous RGB(A) buffer directly from VipsRegion"

This reverts commit 84fc10e52fb223f0208c605dde92d3f821ceee0e.

* accumulate image data directly in frame_bytes buffer

* switch WebP back to Webp naming scheme

* rename page_index to page_number

* revise formatting
2022-09-08 14:32:13 +01:00
John Cupitt 538aa2a841
remove autotools (#2941)
* remove autotools

It seems to all work. I tested with gtk-doc enabled. I probably missed a
few things argh.

* oop, forgot m4/
2022-07-24 11:14:52 +01:00
Kleis Auke Wolthuizen 6dfb49b976
cplusplus: remove i18n include (#2890)
Since these files doesn't use any i18n features.
2022-06-26 18:59:47 +01:00
Kleis Auke Wolthuizen 26de04d147
Meson: avoid using deprecated feature (#2895) 2022-06-26 18:57:41 +01:00
Kleis Auke Wolthuizen 2cc1947177
Doxygen: use SVG for the call graph images (#2896)
Now that IE is finally gone, all the main browsers support this, which
provides higher quality and smaller sizes.
2022-06-26 18:50:34 +01:00
John Cupitt d9f31be67d configure should add meson files to make dist
add meson.build etc. to EXTRA_DIST

see https://github.com/libvips/libvips/issues/2876
2022-06-20 15:04:33 +01:00
Kleis Auke Wolthuizen 296c263099
Meson: maintain autotools compatibility on macOS (#2856)
By setting the correct compatibility/current version.
2022-06-11 22:54:43 +01:00
Kleis Auke Wolthuizen bae0342d95
Update C++ binding and function list (#2851)
* Update C++ binding and function list

Also, start with a capital letter in descriptions whenever possible.

* Ensure `dzsave_target` is generated
2022-06-10 14:43:44 +01:00
Kleis Auke Wolthuizen a96dd73648
doc: add missing files and use full paths (#2822)
* doc: add missing files and use full paths

It seems that private_headers didn't work for out-of-tree builds.
This commit makes it use full paths and adds a few missing files.

* cplusplus: use the correct `install_dir` for the Doxygen docs
2022-05-26 08:48:31 +01:00
Lovell Fuller f9ace1724e
Fix a couple of typos in help messages (#2814) 2022-05-21 09:47:51 +01:00
Kleis Auke Wolthuizen 07edfe37b1
Improve symbol visibility (#2688)
* Improve symbol visibility

* Decorate required internal symbols with VIPS_API

* Remove a couple of stray header decls

* Incorporate review comment

- Ensure symbol visibility is also set on static libraries.
- Prefer to use `cc.has_function_attribute('visibility:hidden')`.

* Don't export internal deprecated symbols

* Move deprecated symbols to vips7compat.h

* `IM_FORMAT_H` -> `VIPS_FORMAT_H`

* Move `vips_window_ref` compat stub to `vips7compat.c`

* Disable deprecation warnings internally

* `vips_image_get_kill` -> `vips_image_iskilled`

* Ensure API compatibility

* Add missing include directives

* Move `vips__init` decl to vips7compat

* Move `vips__get_sizeof_vipsobject` to vips7compat

* Fix introspection build

* Fix 2 introspection warnings

* Ensure compatibility with vipsdisp

/usr/bin/ld: tilesource.o: in function `tile_source_new_from_source':
vipsdisp/tilesource.c:1627: undefined reference to `vips__region_no_ownership'
2022-04-16 10:58:55 +01: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
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
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
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
shado23 3a45d6e842 Add support for regions in the C++ API 2022-02-25 16:19:44 +01:00
John Cupitt b9e6bda6f7 fix oxygen
see https://github.com/libvips/libvips/issues/2650#issuecomment-1050142161
2022-02-25 13:44:30 +00:00
Corentin Noël 02901436d4
Add meson build system (#2637)
Allows to use the Meson build system to build the project.
2022-02-08 15:19:36 +00:00
Lovell Fuller de199fe59c
Silence C++ missing sentinel warning (#2563) 2021-11-29 14:20:26 +00:00
Heshy Roskes d8c04011ea
Add hyperbolic functions (#2508)
* add hyperbolic functions
* add hyperbolic function tests
* changelog
* add inverse hyperbolic functions for old compilers
2021-11-02 15:05:37 +00:00
Kleis Auke Wolthuizen fc92290bb9
Try the new target API first in `VImage::write_to_buffer` (#2511)
Needed after PR #2499.
2021-11-02 13:36:27 +00:00
Kleis Auke Wolthuizen 31b54056db
cplusplus: only generate doc comments for non-deprecated args (#2505) 2021-11-01 15:21:06 +00:00
John Cupitt ab464e7b31 add clang-tidy rule
with a few rules
2021-10-29 19:04:42 +01:00
John Cupitt 4f9ea61170 Merge branch 'cl' of https://github.com/neheb/libvips into neheb-cl 2021-10-29 18:25:50 +01:00
John Cupitt 13285c7cfc Merge branch 'master' of https://github.com/indus/libvips into indus-master 2021-10-20 18:41:39 +01:00
Joshua Sager 608a7cee9b
Introduce unlimited flag, enabling unlimited text chunks in PNGs (#2419)
* Introduce unlimited flag, enabling unlimited text chunks

* remove extraneous optional flag causing GLib-GObject-CRITICAL **: 17:10:34.095: validate_and_install_class_property

* Address feedback from @jcupitt

* various compilation error fixes

* Interlace detection uses unlimited=false

* attempt to fix tests

* documentation changes, introduced MAX_PNG_TEXT_CHUNKS and bumped max to 20 (was 10)
2021-08-29 18:06:33 +01:00
Lovell Fuller 1f5d6f6bc9
Add gifsave operation, depends on cgif and libimagequant (#2381) 2021-08-22 18:11:41 +01:00
Rosen Penev fde53df4da use reserve instead of constructor
The constructor 0 initializes. reserve does not.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-07-11 17:31:17 -07:00
Rosen Penev 63f64c5055 cplusplus: fix for loop sizes
Array indeces are pointers and should use pointer sizes.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-07-11 17:31:11 -07:00
Rosen Penev 3f57c0a515 VImage: reserve vector before push_back loop
Avoids unnecessary resizes.

Found with clang-tidy's performance-inefficient-vector-operation

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-07-11 00:58:56 -07:00
Keim, Stefan f75f698ab4 Add atan2 to math2 2021-06-18 11:14:02 +02:00
John Cupitt 5cc4e07af7 better c++ intro text 2021-06-04 20:59:59 +01:00
John Cupitt b55860cce8 fix build with doxy disabled 2021-06-03 23:35:56 +01:00
John Cupitt 34356d24cf speelingz 2021-06-03 15:00:05 +01:00
Kleis Auke Wolthuizen b78812f200 Update C++ binding and function list 2021-05-12 11:36:24 +02:00
John Cupitt 50c96a1e3b update doxyfile for new version 2021-05-03 15:13:41 +01:00
Kleis Auke Wolthuizen 1a821f0360 Fix make uninstall with Doxygen 2021-04-22 11:59:16 +02:00
John Cupitt 74471ba258
Merge pull request #2212 from kleisauke/cpp-function-list-2
Update C++ binding and function list
2021-04-21 20:15:55 +01:00
Kleis Auke Wolthuizen 526cf4ec37 C++: add set/get for an array of doubles 2021-04-21 18:49:56 +02:00
Kleis Auke Wolthuizen c294835200 Update C++ binding and function list 2021-04-21 18:09:34 +02:00
John Cupitt 69fcf1b9e9
Merge branch 'master' into add-openjpeg 2021-03-27 15:22:13 +00:00
John Cupitt 9cbb4c2cd1
Merge pull request #1709 from libvips/add-libnsgif
Add libnsgif support
2021-03-27 15:10:30 +00:00
Philipp Trulson 13a4d9f7ea
Set correct description for heifsave argument 2021-03-24 22:57:06 +01:00
John Cupitt 5f0be5d3dc remove obsolete doxy tag 2021-03-20 14:02:12 +00:00
John Cupitt 003a444158 oop, we no longer need vips-operators.h 2021-03-07 15:03:13 +00:00
John Cupitt b51f4dab28 fix make dist 2021-03-07 14:59:31 +00:00
Lovell Fuller 3ad7363104 heifsave: add option to control subsample_mode
Defaults to no subsampling when Q>90 for consistency with jpegsave.

Deprecate VipsForeignJpegSubsample enum, replace with more generic
VipsForeignSubsample.
2021-01-13 10:01:34 +00:00