2013-08-14 11 views
10

Ich habe eine cmyk pdf, die ich versuche, in eine RGB JPEG oder PNG-Datei zu konvertieren, aber die Farben bleiben ziemlich nah an der CMYK-Version (im Vergleich zu wie Photoshop tut es)imagemagick konvertieren CMYK pdf in RGB jpeg oder PNG und preserve Farben

Ich versuche den folgenden Befehl, aber die Farben ändern sich drastisch von einer roten Farbe zu fast hellen Neon rot und so weiter.

Hier ist der Befehl

convert cmykpdf.pdf +profile icc -profile AdobeRGB1998.icc -colorspace sRGB jpegtesting.jpg 

Irgendwelche Ideen? oder Gedanken darüber, wie man das macht. Ich versuchte, es als PNG auch zu speichern und das selbe Problem tritt auf und hat versucht, sRGB zu ändern, nur RGB

ANMERKUNG: Es muss nicht notwendigerweise RGB jpeg sein kann sogar CMYK jpeg sein, aber ich brauche es nur, um in der angezeigt zu werden richtig Browser und ich weiß, Safari nicht cmyk JPEG-Dateien nicht korrekt angezeigt

Mein Ziel ist es, gerade in den Browser ein img anzuzeigen, die die richtige Farbe und richtige Auflösung nichts pixilated

+0

Es gibt eine Menge von Voodoo mit der Umwandlung von RGB zu CMYK beteiligt. Photoshop ist der Goldstandard in diesem Bereich, ich würde nicht erwarten, dass ein kostenloses Dienstprogramm näher kommt. –

Antwort

4

Sie zeigt könnten versuchen, dieses:

convert -negate -colorspace RGB srcfile.jpg outputfile.jpg 

Lassen Sie mich wissen, ob es funktioniert!

+1

Funktioniert nicht - Ausgabe ist invertiert. – Refiner

+1

Ops .. sorry .. versuchen, "-negate" zu entfernen – Mackelito

+1

Leider, ob 'negate' benötigt wird, scheint etwas zufällig zu sein. – Synchro

14

Die Lösung ist ziemlich einfach, es gibt nichts Voodoo oder etwas Besonderes über Photoshop CMYK zu RGB heutzutage. Imagemagick verwendet LCMS Color Engine, die ihre Arbeit gut macht.

Aber zuerst müssen Sie delegates.xml Datei in IM-Verzeichnis bearbeiten. Suchen Sie die Zeile mit delegate decode="ps:cmyk" und legen -dUseCIEColor=false am Ende, so sieht es aus, dass wie:

<delegate decode="ps:cmyk" restrain="True" command="&quot;@[email protected]&quot; -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dEPSCrop -dAlignToPixels=0 -dGridFitTT=2 &quot;-sDEVICE=pamcmyk32&quot; -dTextAlphaBits=%u -dGraphicsAlphaBits=%u &quot;-r%s&quot; %s &quot;-sOutputFile=%s&quot; -dUseCIEColor=false &quot;-f%s&quot; &quot;-f%s&quot;"/> 

Es ist notwendig, weil sonst Ghostscript (vor pam Bild zu ImageMagick zurückkehrt) wird durchführen CMYK nach CMYK-Konvertierung (DeviceCMYK vorausgesetzt werden CIEbased CMYK), und das wollen Sie wahrscheinlich nicht, da sich die Farben erheblich verschieben werden.

Dann versuchen Sie diesen Befehl ein:

convert -density 144 cmyk.pdf -profile USWebCoatedSWOP.icc -resample 72 -profile "sRGB Color Space Profile.icm" -quality 100 out.jpg 

Hier führen wir cmyk.pdf (eher temporäre pam Bild, das GS IM zurückgibt), CMYK-Profil zuweisen (wie Sie in Photoshop zu tun, wenn Sie ein öffnen Datei oder mach es explizit - also wähle Profil, das dir am besten CMYK beschreibt), konvertiere es in sRGB-Profil (weil ich glaube nicht, dass du AdobeRGB als Farbraum von Bildern für das Internet willst) und speichere nach jpeg. Reduzieren Sie den Qualitätsparameter nach Bedarf.

Ein weiterer Trick ist hier zusätzliches manuelles Anti-Aliasing - beachten Sie die Zwischenauflösung von 144 dpi und die endgültigen 72 dpi. Weil ich nicht glaube, dass Ghostscript's Anti-Aliasing mit -dGraphicsAlphaBits=4 mit Photoshop's Anti-Aliasing vergleichbar ist.

Das Ergebnis dieses Befehls sieht genau das gleiche wie in Photoshop konvertiert.

+0

Es wäre toll zu beachten, wo haben Sie die ICC-und ICM-Dateien –

+0

Dadurch bekomme ich lcms: Fehler # 12288; Beschädigtes Speicherprofil Irgendwelche Ideen? –

+0

@Air, jetzt bei Ubuntu 14.04 (früher war es ein paar XP) und mit meinen Testdateien, es funktioniert, wie ich schrieb. Hast du immer noch Probleme? ICC-Profile sind "Standard". Bei der CMYK-Quelle sollten Sie auswählen, was die beabsichtigten Druckbedingungen am besten beschreibt, z. 'USWebCoatedSWOP.icc' kann von der Adobe-Website abgerufen werden, d. H. Zuerst [google result] (http://www.adobe.com/support/downloads/detail.jsp?ftpID=4077). 'sRGB.icc' ist ein RGB-Standard und sollte z. B. bereits installiert sein. in '/ usr/share/color/icc/colord'. Was die Fehler angeht, werden sowohl "IM" als auch "GS" beide aktiv entwickelt. Welche Versionen verwenden Sie? – user2846289

1

auf früheren Antworten Basierend ich es endlich geschafft, natürliche Farben aus einem CMYK pdf zu einem RGB zu halten einfach mit png:

convert -colorspace sRGB cmyk.pdf rbg.png