GNU/Linux >> Linux の 問題 >  >> Linux

LinuxでコマンドラインからCmyk画像を生成する方法は?

私が開発したアプリケーションがあります。このアプリケーションは、imageMagicを介してテキストを含むRGBPNG画像を生成します。

convert -size 1000x1000 -density 300 xc:white -pointsize 24 \
  -fill "rgb(0,0,0)" -annotate +500+500 'Josh Test' Jtest.png

うまく機能しています。ただし、同じ画像であるCMYK出力も生成できる必要がありますが、RGBではなくCMYKで生成されます。 InkScapeはこれを行うことができません。 CMYKカラーを使用できると思いました:

convert -colorspace cmyk -density 300 xc:white -pointsize 24 \
  -fill "cmyk(0,0,0,0)" -annotate +500+500 'Josh Test' Jtest.pdf

ただし、結果の画像は100%黒ではなく、100%シアン、100%マゼンタ、100%黄色、0%黒です。実際の色はさらに悪く見えます。これは、ImageMagicがすべての描画をRGB空間で行い、CMYKに変換するためです:

描画にはRGBAカラーモデルが必要です。内部的には、画像はRGB(A)またはCMY(A)Kとして保存されます。

RGB画像を生成してCMYKに変換できません。色が正しくありません。それらはずっとCMYKでなければなりません。 LinuxでCMYKイメージを生成するにはどうすればよいですか?

承認された回答:

次のようなPythonスクリプトを保存します:

#!/usr/bin/python
from PIL import Image, ImageFont, ImageDraw
import sys

im = Image.new('CMYK', (1000,1000), (0, 0, 0, 255))

f = ImageFont.load_default()
d = ImageDraw.Draw(im)
d.text((500, 500), sys.argv[1], font = f, fill = (0, 0, 0, 0))
del d

im.save(sys.argv[2])

依存関係は、PythonとPythonイメージングライブラリです。次に、次のコマンドで画像を作成できます:

python cmyktext.py "Josh test" Jtest.pdf

cmykは減法混色であるため、(0,0,0,0)は実際には白であることを忘れないでください。もちろん、ここに記載されているように、好きなフォントを使用することもできます。


Linux
  1. Linuxコマンドラインでパスワードを生成する

  2. Linuxのコマンドラインからファイルをダウンロードする

  3. Linux コマンドラインからフォルダーをコピーするにはどうすればよいですか?

  1. Linuxgrepコマンドの使用方法

  2. Linuxでhistoryコマンドを使用する方法

  3. Linuxコマンドラインで牛を飼う

  1. Linuxコマンドラインに関する8つのヒント

  2. Linuxコマンドラインにアクセスしてください

  3. Linuxコマンドラインからソフトウェアをインストールする方法