Example #1
0
def read(fp):
    """
    Reads PSD file header.
    """
    logger.debug("reading header..")
    signature = fp.read(4)
    if signature != b"8BPS":
        raise Error("This is not a PSD file")

    version = read_fmt("H", fp)[0]
    if version != 1:
        raise Error("Unsupported PSD version (%s)" % version)

    header = PsdHeader(*read_fmt("6x HIIHH", fp))

    if not ColorMode.is_known(header.color_mode):
        warnings.warn("Unknown color mode: %s" % header.color_mode)

    logger.debug(header)
    return header
Example #2
0
def read(fp):
    """
    Reads PSD file header.
    """
    logger.debug("reading header..")
    signature = fp.read(4)
    if signature != b'8BPS':
        raise Error("This is not a PSD or PSB file")

    version = read_fmt("H", fp)[0]
    if not version in (1, 2):
        raise Error("Unsupported PSD version (%s)" % version)

    header = PsdHeader(version, *read_fmt("6x HIIHH", fp))

    if not ColorMode.is_known(header.color_mode):
        warnings.warn("Unknown color mode: %s" % header.color_mode)

    logger.debug(header)
    return header