• バックグラウンド :
AFP to PDF ツールを開発しています。これには、AFP (Advanced Function Processing) ファイルの PDF への変換が含まれます。
• 詳細な問題の説明 :
TIFF 画像が埋め込まれた AFP ファイルがあります。画像オブジェクトは関数セット 45 で説明されており、次のように表されます -
Image Content Begin Tile Image Encoding Parameter – TIFF LZW Begin Transparency Mask Image Encoding Parameter – G4MMR Image Data Elements End Transparency Mask Image Data Elements (IDE Size 32) – 4 bands: CMYK End Tile End Image Content
Java /iText API を使用して、このタイル画像を PDF に書き込みます。これで、G4MMR イメージを書き込むことができます。ただし、この画像に CMYK カラー バンド データ (青色) を適用することはできません。
• 試した解決策:
G4MMR 画像を書き込むコードは次のようになります –
saveAsTIFF メソッドはここにあります – http://www.jpedal.org/PDFblog/2011/08/ccitt-encoding-in-pdf-files-converting-pdf-ccitt-data-into-a-tiff/ CMYK 4 バンド イメージ カラー データをこの G4MMR イメージに適用することはできません。ByteArrayOutputStream decode = saveAsTIFF(<width>,<height>,<imageByteData>); RandomAccessFileOrArray ra=new RandomAccessFileOrArray(saveAsTIFF.toByteArray()); int pages = TiffImage.getNumberOfPages(ra); for(int i1 = 1; i1 <= pages; i1++){ img1 = TiffImage.getTiffImage(ra, i1); } img1.scaleAbsolute(256, 75); document.add(img1);
• 各コンポーネントのバージョンを含むテクノロジ スタック:
1. JDK 1.6
2. itextpdf-5.1
-- ウメッシュ・パタク