저는 24비트 RGB(아니요RGBA)는 바코드의 회색조 이미지를 나타내며 다음과 같이 처리해야 합니다.명령줄에서:
- 알파 채널 추가
- 모든 색상 채널을 알파로 변환합니다(어느 색상이든 상관없이 회색조로 시작함).
- 알파 채널 반전
- 이미지를 CMYK+알파로 변환
- 알파 채널을 유지하면서 전체 이미지를 주어진 단색으로 채웁니다(예: 100%/87%/11%/1%).
- 특정 위치의 다른 CMYK 이미지 위에 결과 이미지를 오버레이합니다(템플릿 상단 가장자리에서 123픽셀, 왼쪽에서 321픽셀이라고 가정).
제가 하는 일을 이해하셨을 것입니다. 두 이미지가 서로 다른 색상 공간에 있다는 점을 제외하고 요점은 템플릿 이미지 위에 바코드를 오버레이하는 것입니다. 그리고 결과 바코드도 특정 색상이 되어야 합니다. 내 작업 흐름은 단지 제안일 뿐이며 A에서 B로 이동하는 데는 관심이 없습니다.
아, 한 가지 더(관련성이 있는지 확실하지 않음): 바코드가 끝나는 템플릿에 단색 흰색 직사각형이 있다고 가정하는 것이 안전합니다. Photoshop 배치 명령에 액세스할 수 있다면 이 가설을 사용하여 전체 알파 채널을 삭제하고 원본 이미지에 색조를 적용한 후 템플릿의 승수로 오버레이할 것입니다.
답변1
글쎄요, 몇 시간 동안 고민한 끝에 다음과 같은 해결책을 찾았습니다.
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