Commit Graph

7483 Commits

Author SHA1 Message Date
Michael Drake 26c83999cc lzw: Split out output writing. 2021-04-18 17:50:42 +01:00
Michael Drake 92d53337d8 lzw: Rename minimum_code_size to match what it's called in spec. 2021-04-18 17:50:42 +01:00
Michael Drake ac2d57c288 lzw: Slight simplification of clear code handling. 2021-04-18 17:50:42 +01:00
Michael Drake eb07e204e7 lzw: Avoid code size increment check when dictionary is full. 2021-04-18 17:50:42 +01:00
Michael Drake 1714cf6c3a lzw: Split out dictionary augmentation. 2021-04-18 17:50:42 +01:00
Michael Drake 47a441f86b lzw: Create #define for number of dictionary entry slots. 2021-04-18 17:50:42 +01:00
Michael Drake f66e20e017 lzw: Simplify new code handling.
The tiny overhead of an extra time through the output loop
is worth the simpler code.
2021-04-18 17:50:42 +01:00
John Cupitt b1abb2d824 comment spelling 2021-04-15 12:55:14 +01:00
John Cupitt 2a51cf23a3 better Q computation
stolen from cjxl.cc
2021-04-14 17:34:30 +01:00
John Cupitt c48a82d937 cleanups 2021-04-14 16:39:57 +01:00
John Cupitt 4483a2edbc Merge branch 'master' into add-jxl 2021-04-14 15:08:46 +01:00
John Cupitt f4046a95f1 more dbg output for jxlsave 2021-04-14 12:50:09 +01:00
John Cupitt 633d35f4ae add Q param to jxl save
for convenience
2021-04-14 12:29:38 +01:00
John Cupitt 21c565d5d6 improve comment 2021-04-14 11:32:08 +01:00
John Cupitt da6fe210b4
Merge pull request #2195 from libvips/text-colour-rendering
Text colour rendering
2021-04-13 08:42:14 +01:00
John Cupitt cc04449dc5 remove extraeous "brew upgrade" 2021-04-12 20:40:00 +01:00
John Cupitt 31fe274626 fix mono rendering
always render RGBA, then in mono mode just use the alpha
2021-04-12 17:29:54 +01:00
John Cupitt b27a10c547 ask brew to update/upgrade
might help CI failures on macOS
2021-04-12 16:55:01 +01:00
John Cupitt b4fe2c7b8b Note pagocairo dep in README 2021-04-12 16:52:14 +01:00
John Cupitt 985a3e2282 reenable fontfile 2021-04-12 15:46:56 +01:00
John Cupitt f53959b824 switch font rendering to pangocairo
to make colour font rendering work
2021-04-12 15:11:18 +01:00
John Cupitt 8412b8233c start adding colour text rendering
try eg.

	vips text x.png 😀 --rgba --dpi 300

But it's not working :( need to tyweak something else?
2021-04-12 10:59:50 +01:00
John Cupitt db22eb4d4f add p3.icm to makefile.am
and fix make dist
2021-04-08 10:53:15 +01:00
John Cupitt a2147d64be
Merge pull request #2190 from lovell/add-icc-profile-p3
colour: add a fallback for the increasingly-common P3 profile
2021-04-08 09:42:37 +01:00
Lovell Fuller d56a47829b colour: add a fallback for the increasingly-common P3 profile
Uses the CC0-licensed 'magic' compatibility profile from
https://github.com/saucecontrol/Compact-ICC-Profiles#display-p3
2021-04-07 21:44:33 +01:00
John Cupitt 930078a6f9 note jp2k support in README 2021-04-03 18:50:18 +01:00
John Cupitt 209f2c5144 tidy up 2021-04-03 18:40:21 +01:00
John Cupitt 70078e3774 add jxl encoder options
though they don't seem to affect file size, curiously
2021-04-03 18:11:38 +01:00
John Cupitt 55e634a0d2 add support for native jxl decode
map jxl native formats to libvips iamge formats
2021-04-03 17:50:47 +01:00
John Cupitt 234c468489 comment fix 2021-04-03 16:32:23 +01:00
John Cupitt b82ca537e7 set basic jxl image metadata from vips 2021-04-03 16:32:02 +01:00
John Cupitt e93d0ab83c jxlsave works
at a basic level, anyway
2021-04-03 15:03:43 +01:00
John Cupitt f726edb7f7 remove stray bitmap_create call
missed this one in the delay gif alloc patch
2021-04-03 12:28:41 +01:00
John Cupitt 10a0c5a4bb start adding jxlsave 2021-04-03 11:57:11 +01:00
John Cupitt 9b8f308d9e jxl load sort-of works 2021-04-02 18:35:35 +01:00
John Cupitt 07e73475c1 make a patch for the libnsgif alloc delay 2021-04-02 12:00:50 +01:00
John Cupitt 9e10f4bf0f Merge branch 'libnsgif-delay-alloc' 2021-04-02 11:59:44 +01:00
John Cupitt c8363d4e61
Merge pull request #2179 from lovell/nsgifload-limit-dimensions
nsgifload: enforce maximum GIF dimensions of 16383
2021-04-02 11:44:30 +01:00
Lovell Fuller 701dcc7500 nsgifload: enforce maximum GIF dimensions of 16383
The GIF spec allows dimensions up to 65535 (16-bit unsigned),
but this equates to 17GB/frame.

A common task is to convert animated GIF to animated WebP,
and the latter supports dimensions up to 16383 (14-bit unsigned),
so that seems like a sensible limit and equates to 1GB/frame.

Also makes the error message consistent with other loaders.
2021-04-01 19:26:32 +01:00
John Cupitt 8734eb3c8a header works 2021-04-01 17:06:51 +01:00
John Cupitt 950606406f compiles 2021-04-01 16:54:42 +01:00
John Cupitt 9bdf5e8cda try delaying libnsgif alloc until read frame
gives the caller a chance to detect memory bombs
2021-04-01 12:53:57 +01:00
John Cupitt 2a249a3049 load header done 2021-04-01 12:33:36 +01:00
John Cupitt c7f69718da start adding jxl 2021-04-01 09:21:41 +01:00
John Cupitt 005360dba7 add support for lcms black point compensation
Add a --black-point-compensation flag.

See https://github.com/libvips/libvips/discussions/2169
2021-03-29 12:41:02 +01:00
John Cupitt e4453f8b18 update libnsgif
pick up a couple of patches
2021-03-29 11:56:58 +01:00
John Cupitt 9f15567f2c fix fuzzer error
see https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=32638
2021-03-29 09:19:14 +01:00
John Cupitt 77ccd04cbe
Merge pull request #2168 from lovell/nsgifload-sanity-check-dimensions
nsgifload: check dimensions before memory allocation
2021-03-28 22:42:29 +01:00
Lovell Fuller 744e42edd1 nsgifload: check dimensions before memory allocation
GIF dimensions are 16-bit unsigned
Initialise memory to zero as image may be truncated
2021-03-28 19:59:21 +01:00
John Cupitt 0054c7dafa add some more gifload tests 2021-03-28 13:49:34 +01:00