4

XPDFs pdftotextはpdfをテキストに変換し、コマンドラインレベルで出力します。必要に応じて、TextOutputDev.ccで指定されているようにページ間にPageBreaksを挿入します。

eopLen = uMap->mapUnicode(0x0c, eop, sizeof(eop));

このUnicodeシンボルはエンコーディングに依存-enc ASCII7せず、変更されません。私は現在、データベースストレージ用にPDFファイルをいくつかのTXTページに変換および分割するためにPHPを使用するつもりです。ただし、次の関数は機能しますが、PDF全体を一度に変換する場合の2倍の時間がかかります。

for($i = 1; $i <= $pages[0]; $i++)
    $page[$i] = shell_exec('/usr/bin/pdftotext sample.pdf -f '.$i.' -l '.$i.' -');

explode(0x0c, $wholePDF)Unicode文字を区切り文字として使用するにはどうすればよいですか?現在、page [$ i]は、shell_exec()からこれらの奇妙なUnicodePageBreak文字を取得していないようです。エンコード用にいくつかのヘッダー(特にUTF-8)を試しましたが、今のところうまくいきませんでした。

4

2 に答える 2

7

0x0cはASCII文字(つまり、0から127の範囲)であり、UTF-8エンコーディングでは、マルチバイトシーケンスとしてではなく、それ自体として表されます。あなたはできるはずですexplode(chr(0x0c), $wholePDF)

于 2012-09-02T09:42:07.923 に答える
0

別のタイプに変換してから、シンボルを使用して爆発させることができると思います。

http://www.php.net/manual/en/ref.mbstring.php#74722

于 2012-09-02T09:39:22.697 に答える