Krótkie pytanie: Mam pliki SVG w kolorach CMYK, określone zgodnie ze specyfikacją SVG . Chcę umieścić to w programie do projektowania - w dowolnym programie do projektowania - aby sfinalizować projekt i przygotować go do wydruku. Jednak nie mogę znaleźć niczego, co faktycznie zwraca uwagę na kolory CMYK w SVG (w każdym razie nie w programie Illustrator ani Inkscape).
Kolory są skomplikowane i niełatwo je po prostu przekonwertować: wyobraź sobie setki odcieni generowanych dynamicznie, jako odcienie i mieszanki CMYK zgodnie z wytycznymi marki, które muszą być odpowiednie.
Tło: Coś, co staje się coraz bardziej powszechne, to projektowanie grafiki opartej na danych, które są generowane z danych przy użyciu javascript i SVG, a następnie publikowanie jednego wariantu dla Internetu za pomocą javascript i SVG, na przykład przez D3 (lub przez Raphael / D34Raphael dla obsługi IE) , a następnie przy użyciu tego samego kodu do wygenerowania wariantu wydruku, który jest gotowy w programie Illustrator (lub Inkscape) i wysłany do drukarek lub osób zajmujących się układaniem jako plik PDF.
Oto przykład z blogu graficznego New York Times omawiającego ten przepływ pracy. Poniższa grafika została zakodowana dla Internetu, następnie plik SVG został skopiowany z przeglądarki do programu Illustrator, a następnie sfinalizowany jako grafika drukowana (dla nich kolory są proste, więc nie mają mojego problemu, mogą po prostu przekonwertować z RGB) :
SVG może określać kolory CMYK (dla każdego kodera SVG tam dostępna jest następująca składnia:) <circle fill="#CD853F device-cmyk(0.11, 0.48, 0.83, 0.00)"/>
. Ale większość oprogramowania do projektowania ignoruje to. Widziałem rozmowy w społeczności Inkscape dotyczące myślenia o wsparciu CMYK SVG i coś skomplikowanego z udziałem Scribusa („InDesign typu open source”), ale nie udało mi się dostać do pracy (być może źle zrozumiałem Scribusa - edycja: ten artykuł sugeruje, że Scribus może importować CMYK SVG, jeśli zdefiniuje go jako profil kolorów ICC ... jeszcze nie całkiem go wyczuwa, ale wygląda obiecująco).
Mogę więc utworzyć kod, który generuje wizualizacje RGB SVG w „trybie sieciowym”, a CMYK SVG w „trybie drukowania”, dynamicznie generując kolory, które są w sam raz. Problem polega na tym, że nie mogę nic zrobić z tymi plikami CMYK SVG - Illustrator i Inkscape traktują je tylko jako czarne.
Czy istnieje jakiś program graficzny, wtyczki lub metoda, która może podjąć SVG obraz z kształtami CMYK i przekształcić ją w dowolnym formacie wektorowym ( ai
, pdf
, eps
...), gdzie oprogramowanie do projektowania wysłucha kolorów CMYK?
Oto prosty plik SVG z tekstem w kolorach określonych w CMYK. Po prostu skopiuj, wklej i zapisz jako plik .svg.
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="176.18px"
height="111.59px" viewBox="0 0 176.18 111.59" enable-background="new 0 0 176.18 111.59" xml:space="preserve">
<switch>
<g>
<text transform="matrix(1 0 0 1 31.5986 34.522)" fill="#dddddd device-cmyk(0.00, 0.00, 0.00, 0.60)" font-family="'MyriadPro-Regular'" font-size="12">TEST FILE...</text>
<text transform="matrix(1 0 0 1 31.5986 59.3633)" fill="#dddddd device-cmyk(0.00, 0.85, 0.65, 0.00)" font-family="'MyriadPro-Regular'" font-size="12">This should be red</text>
<text transform="matrix(1 0 0 1 31.5986 84.2041)" fill="#dddddd device-cmyk(0.90, 0.55, 0.00, 0.00)" font-family="'MyriadPro-Regular'" font-size="12">This should be blue</text>
</g>
</switch>
</svg>
źródło
Odpowiedzi:
To wydaje się działać:
File > Document Setup
tegoColour Management
i ustaw wszystko, co dotyczy CMYKGeneric CMYK profile
- powinny to być trzy miejsca: kolory, solidne kształty i druk.Upewnij się, że pliki SVG określają kolory CMYK w następujący sposób:
fill="#ffffff icc-color(Generic-CMYK-profile, 1.00, 0.50, 0.00, 0.25)"
(gdzie 1,00 = 100%)fill
atrybut bezpośrednio, a jeśli to nie zadziała, spróbuj użyć niestandardowego atrybutu SVG, np.data-fill="#223fa3 icc-color..."
Znajdź i zamień go w pliku tekstowym.element.node.setAttribute( 'fill', '#223fa3 icc-color...' );
-.attr('fill','')
Wydaje się , że Raphael nie stosuje się do rzeczywistego elementu. Zaktualizuj także,.attr('fill')
jeśli kod będzie musiał to przeczytać później. To samo dotyczystroke
. Działa tylko w trybie SVG, oczywiście ...File > Import > Get vector
Wynik: grafika CMYK w programie Illustrator, pasująca do SVG, z kolorami CMYK określonymi w SVG.
Ostrzeżenie: obsługa SVG przez Scribus jest bardzo ryzykowna. W szczególności:
Czasami może być konieczne wymieszanie elementów z oryginalnego pliku SVG (np. Tekstu) z wersją zapisaną w Scribusie. Jeśli ktoś zna lepszy sposób niż Scribus, udostępnij!
Jeśli potrzebujesz określonych profili kolorów, możesz zainstalować więcej profili kolorów w Scribusie i określić je w swoim pliku SVG, ale nie jestem pewien szczegółów. Ten wcześniej powiązany artykuł może być dobrym miejscem na początek.
źródło