2

複数の PDF ファイルのヘッダー情報を編集する必要があります。私が達成したいのは、の前にすべてのヘッダーデータを削除することです%PDF-X.Y.Z

可能な解決策として私が思いついたのは、バイナリモードで PDF を開き、各文字%PDF-X.Y.Zが見つかるまで読み取ることでした。次に、ストリームの残りの読み取りを続行し、新しいファイルに保存します。このようにして、ヘッダー情報が異なるだけで、PDFの正確なバイナリコピーが得られると思いました。

Cでこれを行う最も簡単で最良の方法は何ですか? これを行うのに役立つ利用可能なライブラリはありますか? また、この問題を解決するためのさまざまなアプローチを聞くことにも興味があります。

ありがとう。

4

2 に答える 2

3

実際には、タグの前のすべての情報を削除できますが%PDF、ファイルの末尾にある外部参照テーブルを無効にします。このテーブルには、PDF オブジェクトへのオフセット参照が含まれています。

最も簡単な方法は、前の部分を削除して%PDFカウントし、どれだけ削るか、それに応じて外部参照の値を減らすことでした。

于 2011-03-11T08:58:52.890 に答える
2

ファイルの先頭を取り除くことで本当に問題が解決すると仮定すると、必要なのは fopen、fread、fwrite、および fclose だけです。

バイナリ モードで読み取るためにファイルを開きます。魔法の %PDF 文字列が見つかるまで読んでください。バイナリ書き込み用の出力ファイルを開きます。新しい %PDF 文字列から始めて、そのファイルに書き出します。書き込みが終了したら、両方のファイルを閉じます。

于 2011-03-11T08:00:02.870 に答える