나는 핵심에 이미지에 텍스트를 추가하는 작업을하고 있습니다. 예를 들어 배경 이미지 (B)와 포인트 크기 및 글꼴 (A) 두 가지가 함께 합성되어 (C) 다음을 생성합니다. (C) : .NET에서 CMYK ColorSpace를 사용하여 이미지에 텍스트를 추가하는 방법 4
최종 결과는 이러한 이미지로 인쇄되므로 배경이 CMYK 색상 공간을 사용하고 있습니다. 전체 프로세스를 CMYK 내에서 유지해야하거나 인쇄 할 때 색상이 잘못 보입니다. (참고 : 우수한 article on Color Spaces and .NET on CodeProject) 나는 이러한 이미지를 함께 합성의 여러 가지 방법으로 시도
:
- 을 System.Drawing 암시 RGB
- System.Windows.Media.Imaging에 모든 것을 변환 - 아니 합성 방법
- System.XAML/WPF - 매우 유망하지만 RenderTargetBitmap은 PixelFormats.Cmyk32에서 작동하지 않습니다 (ArgumentException 발생).
나는 보았다하지만 가격이 높은 시작까지 지속될 것으로 타사 상업 구성 요소를 시도하지 않은 :
- Graphics Mill
- Atalasoft DotImage (~ US $ 1800 12/2010의) (2010 년 12 월 기준 ~ 3300 달러)
.NET 4에서 가능합니까?
편집 : 다른 사람이 약간 다른 무언가를 그냥 Windows.System.Media.Imaging
여기 CMYK로로드 할 수 있다는 것을 모든 형식을 변환 할 내가 사용한 코드입니다 수 있기 때문에 :
var bitmapConverter = new FormatConvertedBitmap();
bitmapConverter.BeginInit();
bitmapConverter.Source = sourceImage;
bitmapConverter.DestinationFormat = PixelFormats.Cmyk32;
bitmapConverter.EndInit();
하면 명확히하려면 위의 코드는 이미지 소스를 CMYK32 (투명도 없음)로 변환하지만 특정 클래스를 사용하는 경우 (즉, RenderTargetBitmap
을 전달하면 위의 ImageSource가 예외를 throw합니다).
게시 해 주셔서 감사합니다. .NET을 사용하여 비트 맵 형식을 변환하기위한 몇 가지 리소스를 찾아 보았습니다 (Google 사용자를위한 코드 샘플을 게시 함). 원본 이미지의 인쇄 이미지 품질에 중요합니다. CMYK 형식으로 유지됩니다. –
Atlasoft DotImage를 살펴 보았습니다. "Pro"버전은 내가하고 싶은 일을하는 것처럼 보이지만, 대략 US $ 3000입니다. –
RGB/CMYK 변환은 되돌릴 수 없으므로 일부 색상 정보가 손실됩니다. –