Imagemagick

ImageMagick 將灰度轉換為 alpha、著色、疊加

  • October 23, 2018

我有一個代表條碼的 24 位 RGB(不是RGBA)灰度圖像,我需要從命令行進行如下處理:

  • 添加 Alpha 通道
  • 將任何顏色通道轉換為 alpha (不管是哪個,它都是灰度開始的)
  • 反轉 Alpha 通道
  • 將圖像轉換為 CMYK + alpha
  • 在保留 alpha 通道的同時,用給定的純色填充整個圖像(例如 100%/87%/11%/1%)
  • 將生成的圖像覆蓋在另一個 CMYK 圖像上,在特定位置(假設距模板頂部邊緣 123 像素,距左側 321 像素)

你明白我在做什麼 - 重點只是將條碼覆蓋在模板圖像上,除了兩個圖像位於不同的顏色空間中,而且我碰巧還需要生成的條碼具有特定的顏色。我的工作流程只是一個建議,我並不關心我如何從 A 到 B。

哦,還有一件事(不確定它是否相關):假設我在模板上有一個純白色的矩形,條碼結束。如果我能夠使用 Photoshop 批處理命令代替,我會使用這個假設來丟棄整個 alpha 通道,並且會簡單地對原始圖像進行著色並在模板上使用乘法疊加它;不確定這在這種情況下是否可行。

好的,經過幾個小時的擺弄,我最終得到了一個解決方案:

convert template.tif ( barcode.png barcode.png -negate -alpha off -compose copy_opacity -composite -colorspace CMYK +level-colors "cmyk(100%, 87%, 11%, 1%)" ) -geometry +123+321 -compose over -composite output.tif

引用自:https://unix.stackexchange.com/questions/235473