현재 여러 PDF를 병합하고 PDF/A (1B)를 만들려고합니다.PDFBox - PDF/A 변환 중 여러 색상 프로파일 포함
현재 우리는 컬러 프로파일을 수정하려고 할 때 문제가 있습니다. 우리가받는 PDF에는 포함 된 색상 프로파일이 없기 때문에 PDFBox의 병합 기능 중에는 OutputIntents가 병합되지 않습니다. 그래서 마지막 단계에서 우리는 컬러 프로파일을 추가하려고합니다.
색상 프로파일을 추가하지 않으면 RGB 및 CMYK에 대해 유효성 검사 문제가 발생합니다. 두 색상 프로파일을 모두 PDDocumentCatalog에 추가하면 첫 번째 프로파일에 대한 유효성 검사 문제 만 사라집니다. 따라서 RGB를 먼저 추가하면 CMYK 유효성 검사 문제 만 발생하며 반대의 경우도 마찬가지입니다.
public void convertToPDFA(PDDocument doc, String file){
PDMetadata metadata = new PDMetadata(doc);
PDDocumentCatalog cat = doc.getDocumentCatalog();
cat.setMetadata(metadata);
// do metadata stuff, just removed it for now
InputStream colorProfile = PDFService.class.getResourceAsStream("/pdfa/sRGB Color Space Profile.icm");
PDOutputIntent oi = new PDOutputIntent(doc, colorProfile);
oi.setInfo("sRGB IEC61966-2.1");
oi.setOutputCondition("sRGB IEC61966-2.1");
oi.setOutputConditionIdentifier("sRGB IEC61966-2.1");
oi.setRegistryName("http://www.color.org");
cat.addOutputIntent(oi);
이것은 또한 CMYK 또 다른 * .ICM 컬러 프로파일을 추가 RGB의 코드이다 : 우리는 컬러 정보를 추가 할 때 여기
코드의 일부이다. 그래서 색상 프로파일이 좋을 것 같습니다. 왜냐하면 우리가 먼저 추가 한 것에 의존하기 때문에 유효성 검사 문제는 사라졌습니다.나를 위해 그것은 두 가지 색상 프로파일이 모두 허용되는 작은 것이 누락 된 것처럼 느껴지거나 하나의 색상 프로파일 만 PDF/A를 만들 수 있습니까?
미리 감사와 종류 만 단일 출력 의도가 허용
http://www.pdfa.org/2011/08/pdfa-and-colors/ "해결책 2 : 출력 의도 (OutputIntent) 모든 장치 색상의 특성화는 * 단일 * ICC 프로파일을 사용하여 구현됩니다 (전체 문서에 유효 함). " –