about summary refs log tree commit diff
path: root/.venv/lib/python3.12/site-packages/docx/image/constants.py
diff options
context:
space:
mode:
authorS. Solomon Darnell2025-03-28 21:52:21 -0500
committerS. Solomon Darnell2025-03-28 21:52:21 -0500
commit4a52a71956a8d46fcb7294ac71734504bb09bcc2 (patch)
treeee3dc5af3b6313e921cd920906356f5d4febc4ed /.venv/lib/python3.12/site-packages/docx/image/constants.py
parentcc961e04ba734dd72309fb548a2f97d67d578813 (diff)
downloadgn-ai-master.tar.gz
two version of R2R are here HEAD master
Diffstat (limited to '.venv/lib/python3.12/site-packages/docx/image/constants.py')
-rw-r--r--.venv/lib/python3.12/site-packages/docx/image/constants.py172
1 files changed, 172 insertions, 0 deletions
diff --git a/.venv/lib/python3.12/site-packages/docx/image/constants.py b/.venv/lib/python3.12/site-packages/docx/image/constants.py
new file mode 100644
index 00000000..729a828b
--- /dev/null
+++ b/.venv/lib/python3.12/site-packages/docx/image/constants.py
@@ -0,0 +1,172 @@
+"""Constants specific the the image sub-package."""
+
+
+class JPEG_MARKER_CODE:
+    """JPEG marker codes."""
+
+    TEM = b"\x01"
+    DHT = b"\xC4"
+    DAC = b"\xCC"
+    JPG = b"\xC8"
+
+    SOF0 = b"\xC0"
+    SOF1 = b"\xC1"
+    SOF2 = b"\xC2"
+    SOF3 = b"\xC3"
+    SOF5 = b"\xC5"
+    SOF6 = b"\xC6"
+    SOF7 = b"\xC7"
+    SOF9 = b"\xC9"
+    SOFA = b"\xCA"
+    SOFB = b"\xCB"
+    SOFD = b"\xCD"
+    SOFE = b"\xCE"
+    SOFF = b"\xCF"
+
+    RST0 = b"\xD0"
+    RST1 = b"\xD1"
+    RST2 = b"\xD2"
+    RST3 = b"\xD3"
+    RST4 = b"\xD4"
+    RST5 = b"\xD5"
+    RST6 = b"\xD6"
+    RST7 = b"\xD7"
+
+    SOI = b"\xD8"
+    EOI = b"\xD9"
+    SOS = b"\xDA"
+    DQT = b"\xDB"  # Define Quantization Table(s)
+    DNL = b"\xDC"
+    DRI = b"\xDD"
+    DHP = b"\xDE"
+    EXP = b"\xDF"
+
+    APP0 = b"\xE0"
+    APP1 = b"\xE1"
+    APP2 = b"\xE2"
+    APP3 = b"\xE3"
+    APP4 = b"\xE4"
+    APP5 = b"\xE5"
+    APP6 = b"\xE6"
+    APP7 = b"\xE7"
+    APP8 = b"\xE8"
+    APP9 = b"\xE9"
+    APPA = b"\xEA"
+    APPB = b"\xEB"
+    APPC = b"\xEC"
+    APPD = b"\xED"
+    APPE = b"\xEE"
+    APPF = b"\xEF"
+
+    STANDALONE_MARKERS = (TEM, SOI, EOI, RST0, RST1, RST2, RST3, RST4, RST5, RST6, RST7)
+
+    SOF_MARKER_CODES = (
+        SOF0,
+        SOF1,
+        SOF2,
+        SOF3,
+        SOF5,
+        SOF6,
+        SOF7,
+        SOF9,
+        SOFA,
+        SOFB,
+        SOFD,
+        SOFE,
+        SOFF,
+    )
+
+    marker_names = {
+        b"\x00": "UNKNOWN",
+        b"\xC0": "SOF0",
+        b"\xC2": "SOF2",
+        b"\xC4": "DHT",
+        b"\xDA": "SOS",  # start of scan
+        b"\xD8": "SOI",  # start of image
+        b"\xD9": "EOI",  # end of image
+        b"\xDB": "DQT",
+        b"\xE0": "APP0",
+        b"\xE1": "APP1",
+        b"\xE2": "APP2",
+        b"\xED": "APP13",
+        b"\xEE": "APP14",
+    }
+
+    @classmethod
+    def is_standalone(cls, marker_code):
+        return marker_code in cls.STANDALONE_MARKERS
+
+
+class MIME_TYPE:
+    """Image content types."""
+
+    BMP = "image/bmp"
+    GIF = "image/gif"
+    JPEG = "image/jpeg"
+    PNG = "image/png"
+    TIFF = "image/tiff"
+
+
+class PNG_CHUNK_TYPE:
+    """PNG chunk type names."""
+
+    IHDR = "IHDR"
+    pHYs = "pHYs"
+    IEND = "IEND"
+
+
+class TIFF_FLD_TYPE:
+    """Tag codes for TIFF Image File Directory (IFD) entries."""
+
+    BYTE = 1
+    ASCII = 2
+    SHORT = 3
+    LONG = 4
+    RATIONAL = 5
+
+    field_type_names = {
+        1: "BYTE",
+        2: "ASCII char",
+        3: "SHORT",
+        4: "LONG",
+        5: "RATIONAL",
+    }
+
+
+TIFF_FLD = TIFF_FLD_TYPE
+
+
+class TIFF_TAG:
+    """Tag codes for TIFF Image File Directory (IFD) entries."""
+
+    IMAGE_WIDTH = 0x0100
+    IMAGE_LENGTH = 0x0101
+    X_RESOLUTION = 0x011A
+    Y_RESOLUTION = 0x011B
+    RESOLUTION_UNIT = 0x0128
+
+    tag_names = {
+        0x00FE: "NewSubfileType",
+        0x0100: "ImageWidth",
+        0x0101: "ImageLength",
+        0x0102: "BitsPerSample",
+        0x0103: "Compression",
+        0x0106: "PhotometricInterpretation",
+        0x010E: "ImageDescription",
+        0x010F: "Make",
+        0x0110: "Model",
+        0x0111: "StripOffsets",
+        0x0112: "Orientation",
+        0x0115: "SamplesPerPixel",
+        0x0117: "StripByteCounts",
+        0x011A: "XResolution",
+        0x011B: "YResolution",
+        0x011C: "PlanarConfiguration",
+        0x0128: "ResolutionUnit",
+        0x0131: "Software",
+        0x0132: "DateTime",
+        0x0213: "YCbCrPositioning",
+        0x8769: "ExifTag",
+        0x8825: "GPS IFD",
+        0xC4A5: "PrintImageMatching",
+    }