diff --git a/Userland/Libraries/LibPDF/Filter.cpp b/Userland/Libraries/LibPDF/Filter.cpp index 5d7da106b4..c184952be0 100644 --- a/Userland/Libraries/LibPDF/Filter.cpp +++ b/Userland/Libraries/LibPDF/Filter.cpp @@ -6,6 +6,7 @@ #include #include +#include #include #include @@ -153,10 +154,11 @@ ErrorOr Filter::decode_jbig2(ReadonlyBytes) TODO(); }; -ErrorOr Filter::decode_dct(ReadonlyBytes) +ErrorOr Filter::decode_dct(ReadonlyBytes bytes) { - // FIXME: Support dct decoding - TODO(); + Gfx::JPGImageDecoderPlugin decoder(bytes.data(), bytes.size()); + auto frame = TRY(decoder.frame(0)); + return frame.image->serialize_to_byte_buffer(); }; ErrorOr Filter::decode_jpx(ReadonlyBytes)