From 4f0c02607e87b41d0529b906ec1f1c17bf1fdb1a Mon Sep 17 00:00:00 2001
From: j-t-1 <120829237+j-t-1@users.noreply.github.com>
Date: Mon, 13 Jan 2025 09:30:26 +0000
Subject: [PATCH 1/2] STY: Add two abbreviations for an inline image object

CCF and DCT appended to function decode_stream_data.
---
 pypdf/filters.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pypdf/filters.py b/pypdf/filters.py
index f7d29611e..7f68748c5 100644
--- a/pypdf/filters.py
+++ b/pypdf/filters.py
@@ -656,10 +656,10 @@ def decode_stream_data(stream: Any) -> bytes:
             data = FlateDecode.decode(data, params)
         elif filter_name in (FT.RUN_LENGTH_DECODE, FTA.RL):
             data = RunLengthDecode.decode(data)
-        elif filter_name == FT.CCITT_FAX_DECODE:
+        elif filter_name in (FT.CCITT_FAX_DECODE, FTA.CCF):
             height = stream.get(IA.HEIGHT, ())
             data = CCITTFaxDecode.decode(data, params, height)
-        elif filter_name == FT.DCT_DECODE:
+        elif filter_name in (FT.DCT_DECODE, FTA.DCT):
             data = DCTDecode.decode(data)
         elif filter_name == FT.JPX_DECODE:
             data = JPXDecode.decode(data)

From 414a96053cee62e9a1edfa7e7a26c5473ff6d824 Mon Sep 17 00:00:00 2001
From: j-t-1 <120829237+j-t-1@users.noreply.github.com>
Date: Fri, 18 Apr 2025 10:07:34 +0100
Subject: [PATCH 2/2] STY: Add two abbreviations for an inline image object

CCF and DCT appended to function decode_stream_data.
---
 tests/test_filters.py | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/tests/test_filters.py b/tests/test_filters.py
index 395f52cb2..c48fee84d 100644
--- a/tests/test_filters.py
+++ b/tests/test_filters.py
@@ -246,6 +246,30 @@ def test_ccitt_fax_decode():
     )
 
 
+def test_ccitt_fax_decode_and_ccf():
+    data = RESOURCE_ROOT.joinpath("imagemagick-CCITTFaxDecode.pdf").read_bytes()
+    reader = PdfReader(BytesIO(data))
+    image1 = reader.pages[0].images[0].data
+
+    data = data.replace(b"/CCITTFaxDecode", b"/CCF")
+    reader = PdfReader(BytesIO(data))
+    image2 = reader.pages[0].images[0].data
+
+    assert image1 == image2
+
+
+def test_dct_decode_and_dct():
+    data = RESOURCE_ROOT.joinpath("jpeg.pdf").read_bytes()
+    reader = PdfReader(BytesIO(data))
+    image1 = reader.pages[0].images[0].data
+
+    data = data.replace(b"/DCTDecode", b"/DCT")
+    reader = PdfReader(BytesIO(data))
+    image2 = reader.pages[0].images[0].data
+
+    assert image1 == image2
+
+
 @pytest.mark.enable_socket
 def test_decompress_zlib_error(caplog):
     reader = PdfReader(BytesIO(get_data_from_url(name="tika-952445.pdf")))