Skip to content

TIFF CMYK ICC Profile Color Rendering Issue #3198

Description

@IAMManuel

Prerequisites

  • I have written a descriptive issue title
  • I have verified that I am running the latest version of ImageSharp
  • I have verified if the problem exist in both DEBUG and RELEASE mode
  • I have searched open and closed issues to ensure it has not already been reported

ImageSharp version

4.1.2

Other ImageSharp packages and versions

  • SixLabors.ImageSharp.Drawing 3.1.0 - SixLabors.ImageSharp.Web 4.0.1

Environment (Operating system, version and so on)

Windows 11

.NET Framework version

.NET 10.0

Description

When loading a TIFF image with an embedded CMYK ICC profile using ColorProfileHandling.Preserve, the colors are rendered incorrectly and do not match the original image. The preserved version shows noticeably different colors compared to the original, while the converted version appears to produce more accurate results.

This suggests an issue with how ImageSharp handles CMYK ICC profile preservation when converting to the display color space (sRGB). The color transformation is not producing the expected visual output that matches the original image.

Steps to Reproduce

using SixLabors.ImageSharp;
using SixLabors.ImageSharp.Formats;

const string inputPath = "cmyk_image.tiff";

using (Image image = Image.Load(
    new DecoderOptions
    {
        ColorProfileHandling = ColorProfileHandling.Preserve
    },
    inputPath))
{
    image.Save("cmyk_image.preserve.tiff");
}

using (Image image = Image.Load(
    new DecoderOptions
    {
        ColorProfileHandling = ColorProfileHandling.Convert
    },
    inputPath))
{
    image.Save("cmyk_image.converted.tiff");
}

Open these files in the same color-managed image viewer:
◦ cmyk_image.tiff
◦ cmyk_image.preserve.tiff
◦ cmyk_image.converted.tiff

4.Compare both generated images with the original. Iv'e also add the images produce by the code

Expected result: Both generated images should visually match the original CMYK TIFF.

Actual result: Both generated images have noticeable color differences. The output created with Preserve differs the most from the original.

Images

cmyk_image.preserve.tiff
cmyk_image.preserve.tiff
cmyk_image.tiff
cmyk_image.tiff
cmyk_image.converted.tiff
cmyk_image.converted.tiff

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions