diff --git a/doc/tools.md b/doc/tools.md index 7843d61f..cf67db5b 100644 --- a/doc/tools.md +++ b/doc/tools.md @@ -325,6 +325,9 @@ Per-frame options (only used for subsequent images input): -lossy ............... use lossy mode -q ........... quality -m ............. method to use +-exact, -noexact ..... preserve or alter RGB values in transparent area + (default: -noexact, may cause artifacts + with lossy animations) ``` example: `img2webp -loop 2 in0.png -lossy in1.jpg -d 80 in2.tiff -o out.webp` diff --git a/examples/img2webp.c b/examples/img2webp.c index 7c657ff1..19acda98 100644 --- a/examples/img2webp.c +++ b/examples/img2webp.c @@ -63,6 +63,10 @@ static void Help(void) { printf(" -lossy ............... use lossy mode\n"); printf(" -q ........... quality\n"); printf(" -m ............. method to use\n"); + printf(" -exact, -noexact ..... preserve or alter RGB values in transparent " + "area\n" + " (default: -noexact, may cause artifacts\n" + " with lossy animations)\n"); printf("\n"); printf("example: img2webp -loop 2 in0.png -lossy in1.jpg\n" @@ -248,6 +252,10 @@ int main(int argc, const char* argv[]) { fprintf(stderr, "Invalid negative duration (%d)\n", duration); parse_error = 1; } + } else if (!strcmp(argv[c], "-exact")) { + config.exact = 1; + } else if (!strcmp(argv[c], "-noexact")) { + config.exact = 0; } else { parse_error = 1; // shouldn't be here. fprintf(stderr, "Unknown option [%s]\n", argv[c]); diff --git a/man/img2webp.1 b/man/img2webp.1 index e735fdf7..7396526c 100644 --- a/man/img2webp.1 +++ b/man/img2webp.1 @@ -1,5 +1,5 @@ .\" Hey, EMACS: -*- nroff -*- -.TH IMG2WEBP 1 "July 18, 2024" +.TH IMG2WEBP 1 "September 3, 2024" .SH NAME img2webp \- create animated WebP file from a sequence of input images. .SH SYNOPSIS @@ -88,6 +88,11 @@ Specify the compression factor between 0 and 100. The default is 75. Specify the compression method to use. This parameter controls the trade off between encoding speed and the compressed file size and quality. Possible values range from 0 to 6. Default value is 4. +.TP +.B \-exact, \-noexact +Preserve or alter RGB values in transparent area. The default is +\fB-noexact\fP, to help compressibility. Note \fB\-noexact\fP may cause +artifacts in frames compressed with \fB\-lossy\fP. .SH EXIT STATUS If there were no problems during execution, \fBimg2webp\fP exits with the value