【CentOS8.2】rgb2cmykでRGBのPNGをCMYKに変換する

この記事は最新更新日から、4年以上経過しています。

rgb2cmyk というMITライセンスのフリーソフトがあったので使ってみました。

配布元

(Linux/CUI) rgb2cmyk

環境

$ cat /etc/redhat-release
CentOS Linux release 8.2.2004 (Core)

やったこと

wgetでダウンロードしてtar.bz2ファイルを解凍

$ wget http://azsky2.html.xdomain.jp/arc/rgb2cmyk-1.0.0-200428.tar.bz2
$ tar -xvf rgb2cmyk-1.0.0-200428.tar.bz2

lsで解凍したディレクトリを確認してcdで移動

$ ls -l
合計 548
drwxr-xr-x. 3 vagrant vagrant    164  4月 28 00:00 rgb2cmyk-1.0.0
-rw-rw-r--. 1 vagrant vagrant  75495  4月 28 11:48 rgb2cmyk-1.0.0-200428.tar.bz2
$ cd rgb2cmyk-1.0.0

ライブラリが不足していたのでインストール

$ sudo dnf install gcc make zlib-devel libpng-devel
$ sudo dnf install lcms2

コンパイルしようとしたらこういうエラーが出る

$ ./configure
c compiler = gcc
endian = little
create config.h
checking zlib
checking libpng
checking libtiff
checking lcms2
! 'lcms2': include file not found.
please install liblcms2-dev or liblcms2-devel or lcms2

configureファイルを見てみるとlcms2.hが足りていないと出るエラーのようだ。
下記の通りfindで仮想マシン全体を検索しても何も表示されない。(他のzlib.hとかはファイルがあった)

$ sudo find / -name 'lcms2.h'

centos8で探して見ると下記のサイトが見つかった。
標準リポジトリには入ってないのかもしれない。

Packages for Linux and Unix

書いてあるコマンドに従ってPowerToolsというリポジトリを有効化してlcms2-develをインストール。
lcms2.hがあるので今度は無事インストールできたようだ。

$ sudo dnf --enablerepo=PowerTools install lcms2-devel
$ sudo find / -name 'lcms2.h'
/usr/include/lcms2.h

rgb2cmykをコンパイルしてインストールする

$ ./configure
$ make
$ sudo make install
install -d /usr/local/bin
install rgb2cmyk /usr/local/bin
install -d /usr/local/share/doc/rgb2cmyk
install -m 644 LICENSE ReadMe ReadMe_ja /usr/local/share/doc/rgb2cmyk

インストールできたかコマンドつかってバージョン確認してみる

$ rgb2cmyk -v
rgb2cmyk ver 1.0.0
Copyright (c) 2020 Azel

「01.png」という名前のファイルを用意して「cmyk.psd」と「rgb.png」に変換してみる。
「JapanColor2001Coated.icc」のカラープロファイルは、配布元に書かれていたURLから取得。

$ ls -l
合計 696
-rw-r--r--. 1 root    root     71222  9月  1 16:36 01.png
-rw-r--r--. 1 vagrant vagrant 557168  8月 25  2008 JapanColor2001Coated.icc
drwxr-xr-x. 3 vagrant vagrant    270  9月 25 11:14 rgb2cmyk-1.0.0
-rw-rw-r--. 1 vagrant vagrant  75495  4月 28 11:48 rgb2cmyk-1.0.0-200428.tar.bz2
$ rgb2cmyk 01.png -p JapanColor2001Coated.icc -c cmyk.psd -r rgb.png
Input       : 01.png
Output-CMYK : cmyk.psd
Output-RGB  : rgb.png
RGB profile : sRGB built-in
CMYK profile: Japan Color 2001 Coated
DPI         : (src) 0 -> (dst) 0
CMYK image ok.
RGB image ok. 

変換したpsdファイルをPhotoShopで開きましたが、きちんとCMYKになっているようです。

おわり。