From a77b6c470a9d312d4e88506e53b67ca6b7aecce9 Mon Sep 17 00:00:00 2001 From: Nico Weber Date: Thu, 8 Jun 2023 18:25:21 -0400 Subject: [PATCH] WebP: Add test image for vertical image filtering I opened smolkling.webp in Photoshop, added a layer mask with a vertical gradient, replaced the leftmost column with completely transparent pixels (because the leftmost column is vertically predicted with the horizontal filter too), and saved it as webp. That wasn't enough to get a horizontal filter for the ALPH chunk though, so I also ran cwebp \ -alpha_filter best \ smolkling.webp \ -o Tests/LibGfx/test-inputs/smolkling-vertical-alpha.webp That did the trick. --- .../test-inputs/smolkling-vertical-alpha.webp | Bin 0 -> 17418 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 Tests/LibGfx/test-inputs/smolkling-vertical-alpha.webp diff --git a/Tests/LibGfx/test-inputs/smolkling-vertical-alpha.webp b/Tests/LibGfx/test-inputs/smolkling-vertical-alpha.webp new file mode 100644 index 0000000000000000000000000000000000000000..72f1cf79e2077f9532fdfea745d389d2c8a4b1cb GIT binary patch literal 17418 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