Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

TIFF CMYK ICC Profile Color Rendering Issue

Aperta
#3,198 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
48/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
csharp

Direzione di ricerca

Start by running the provided DecoderOptions reproduction with cmyk_image.tiff and compare the three attached TIFFs in the same color-managed viewer. Trace ImageSharp's TIFF ICC profile handling for ColorProfileHandling.Preserve and Convert; done means the generated images visually match the original as expected.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

needs triage
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

Lingua principale
C#
Stelle
8k
Fork
899
Merge medio
1g 5h
PR unite (30g)
7

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di SixLabors/ImageSharp

Tutte le issue di SixLabors/ImageSharp

Issue simili

Altre issue su C#

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.