PDFとの格闘で、CIDからUnicodeへのマップを作る
- 2013年 1月22日
引き続き、PDFと格闘中。
PDFの内部データ触るには、CGPDF系の関数を使えばいい。その辺りは、iOSが提供してくれるので、ありがたく使わせてもらう。
そこまではいいんだけど、PDFから取得できるテキストデータは、CIDの形になっている。表示するだけならいいんだけど、コピーや検索するには、これをUnicodeに変換しないといけない。CIDからUnicodeへの変換が、ない。だいたいみんな、ここでひっかかる。
たぶん、Appleは持っているはず。PDFでコピーできるから。OS Xでは、PDF Kitを使えばテキスト取得できる。でも、iOSではない。
ないものは作ったれー!ということで、CIDからUnicodeへのマップを作っております。非常に原始的に、Adobe-Japanの仕様書を見て、対応するUnicodeの値を調べて、テキストエディタで記入する。
こんな方法しかないのかー!?やってみると、縦書き文字なんかもあるから、機械的にできないところもある。手でやるしかないのかー。
しかし、これさえ出来上がれば、PDFのコントロールは完全に我が手に。なるはず。