Office
 Computer >> コンピューター >  >> ソフトウェア >> Office

PDF ドキュメントを統合する方法 - チュートリアル

数日前、Plasma デスクトップのデフォルトの PDF ビューアである Okular で情報を編集する方法を紹介しました。このアクションは比較的簡単に実行できますが、秘匿化された情報を効果的に破壊するわけではなく、閲覧者から見えにくくするだけです。

今日お見せしたいのは、パズルの 2 番目の部分、つまり PDF ドキュメントのフラット化です。複数のレイヤーを持つ画像を考えて、それをすべてレイヤーなしの形式で保存します。次に、情報は単一のレイヤーに平坦化されます。垂直に積み重ねられたすべてのピクセルの値が計算され、加算/減算/その他が行われ、このアクションの単一の最終的な計算として提示されます。 PDFの構造を考えると、より複雑であることを除いて、PDFと同じです。やりましょう。

取引ツール - Ghostscript

以前に Ghostscript (gs) について聞いたことがあるかもしれません。LaTeX と LyX に関連するさまざまな記事で、私は何年にもわたってそれについて話してきました。そこで、gs エンジンを使用して、既存の「多層」PDF を処理して平坦化した PDF にします。これにより、情報が適切に編集されます。これは Linux で行います。なぜなら、Linux が他のオペレーティング システムよりもはるかに優れている点が 1 つあるとすれば、それは、ファイル フォーマット処理に関する特定の焦点を絞ったタスクです。そのため、Ghostscript はディストリビューションで利用できるはずです。インストールされていない場合は、リポジトリ アーカイブにあります。

gs -sDEVICE=pdfwrite -dPDFSETTINGS=/default -dNOPAUSE -dQUIET -dBATCH -sOutputFile=flattened.pdf input.pdf

これは魔法を行うコマンドです。 PDF ファイルに含まれている可能性のある画像の追加処理は行わないため、サイズの大幅な縮小は期待できません。結局のところ、それはここでの目的ではありません。しかし、実質的にはそれだけです。

別の方法 - ImageMagick と pdf2ps

何らかの理由で上記の方法で満足できない場合は、他に 2 つの方法を試すことができます。ただし、これらは gs を使用するよりも効果的ではないことに注意してください。したがって、以下にリストされている提案を進めるときは、そのことを覚えておいてください。

ImageMagick 変換ユーティリティを試すことができます。しかし待ってください。

convert -density 300 original.pdf flattened.pdf

デフォルトでは、Ghostscript エンジンのセキュリティ上の脆弱性により、ImageMagick は PS、PDF、EPS、XPS などのさまざまなファイルを処理しないように構成されています。そのため、ImageMagick ポリシーを編集せずに試してみると、次のエラーが表示されます:

convert-im6.q16:セキュリティ ポリシー `PDF' @ error/constitute.c/IsCoderAuthorized/408 で許可されていない操作を実行しようとしました。
convert-im6.q16:画像が定義されていません `flattened.pdf' @ error/convert.c/ConvertImageCommand/3258.

これを解決するには、次のファイルを編集する必要があります - [NUMBER] を関連するバージョンの 6 または 7 に置き換えます:

/etc/ImageMagick-[数字]/policy.xml

このファイルには、セキュリティ ポリシーのリストがあります:

...



right="none" が rights="read|write" になるように PDF 用のものを変更します。セキュリティが心配な場合は、特定のファイルをフラット化しながら一時的な変更を加えてから、より堅牢な設定に戻すことができます。

...



これで、ファイルを処理できます。通常、これは gs を直接使用するよりも時間がかかります。さらに、非常に大きなファイルを操作している場合は、メモリが不足し、変換が失敗することもあります。例:

convert-im6.q16:キャッシュ リソースが使い果たされた `flattened.pdf' @ error/cache.c/OpenPixelCache/4083 `flattened.pdf' @ error/pdf.c/WritePDFImage/2341.

ここでも、XML 構成ファイルを変更し、さまざまなポリシーでメモリ制限を増やす必要があります。ただし、システムで使用可能なメモリ リソースに対してドキュメントが大きすぎる可能性は十分にあります。提案する魔法のセットはありません:

...




<ポリシー ドメイン="resource" name="area" value="1024MB"/>

...

2 つ目のツールは、pdf2ps と ps2pdf のペアです。基本的に、PDF を PS ファイルに変換してから PDF に戻します。これにより、ドキュメントが効果的にフラット化されます。魔法のコマンドは何をしますか:

pdf2ps オリジナル.pdf - | ps2pdf - flattened.pdf

これは問題なく高速に動作しますが、デフォルトでは、積極的な圧縮により低解像度の画像になります。これは考慮に入れ、ツールのさまざまなオプションを試して、必要なドキュメントの忠実度を確実に維持する必要があります。

結論

そして、そこに行きます。これで、PDF ファイルをフラット化する方法を学習しました。これらすべてがどのように機能するかという技術的な複雑さは、この記事の範囲を超えていますが、少なくとも作業を完了するためのツールはあります。私の経験では、Ghostscript が最速かつ最も効果的でありながら、途中で最高の結果を生み出すことを示しています.

上記の他の 2 つのユーティリティ (ImageMagick と pdf2ps/ps2pdf コンボ) を試すこともできます。しかし、結果にはあまり満足できませんでした。いずれにせよ、PDF ファイルを他の人と共有する必要があり、そこに含まれる情報の断片を編集したい場合は、これを整理するための 2 つのチュートリアル プロセスが用意されています。この 2 番目のガイドで全体像が完成します。さようなら。

乾杯。


  1. KVM でストレージを管理する方法 - チュートリアル

    数日前、カーネルベースの仮想マシン (KVM) テクノロジを紹介しました。これは、VirtualBox および VMware 製品の代わりに、またはそれらと一緒に使用することを検討できる無料のオープンソースの仮想化ソリューションです。いずれにせよ、基本的な管理に手を出しましたが、ストレージとネットワークは別のチュートリアルのために残しました. 今日は、KVM でのストレージの管理に関するより詳細なガイドを提供したいと思います。これは、仮想ディスクの追加、縮小、拡張など、VirtualBox で行ったことと多少似ています。 NFS ストレージや NTFS でフォ​​ーマットされた USB 接

  2. VirtualBox でディスクのクローンを作成する方法 - チュートリアル

    ビジネスまたは娯楽で仮想化を使用している場合、VirtualBox に出くわしたことがあるかもしれません。VirtualBox は非常に強力で汎用性の高い無料のソリューションであり、デスクトップ ユーザーがオペレーティング システムを導入する際に非常に柔軟に対応できます。 また、マニアックな趣味で仮想化を楽しんでいるだけの愛好家や、仮想化のおかげで新しいオペレーティング システムの使い方を学んでいる熱心なソフトウェア愛好家以上の場合は、次のシナリオに遭遇することになります。多数の仮想マシンを展開します。 個々のインストールをいじる時間はありません。実際、マシンを 1 つずつ手動で構成す