pdfcpu は Go で書かれた PDF 処理ライブラリで、暗号化をサポートしています。 API と CLI の両方を提供します。PDF 1.7 (ISO-32000) までのすべてのバージョンがサポートされています。
これは、Goで書かれた包括的なPDF処理ライブラリをゼロから構築するための取り組みです。時間の経過とともに、pdfcpuは、PDF処理機能の標準範囲と、途中で現れる可能性のある興味深いユースケースをサポートすることを目的としています。
主な焦点は、豊富なコマンドラインを介したバッチ処理とスクリプトの強力なサポートにあります。同時に、pdfcpu は、堅牢なコマンドセットを提供することで、PDF 処理を Go ベースのバックエンドシステムに簡単に統合できるようにしたいと考えています。
(より小さなコマンドセットで古いバージョンを使用)
ここで最新のバイナリを入手してください。
git clone https://github.com/pdfcpu/pdfcpu cd pdfcpu/cmd/pdfcpu go install pdfcpu version
brew install pdfcpu pdfcpu version
sudo dnf install golang-github-pdfcpu pdfcpu version
docker build -t pdfcpu . # mount current folder into container to process local files docker run -it --mount type=bind,source="$(pwd)",target=/app pdfcpu ./pdfcpu validate -mode strict /app/pdfs/a.pdf
pdfcpu cmd -vv ...
残念ながら、クラッシュは発生します:( ほとんどの場合、これはPDFライターの多様なプールと、pdfcpuによる処理を待っているさまざまなバージョンを使用する何百万ものPDFファイルが原因です。時々、これらのPDFは20年以上前に書かれています。多くの場合、検証には問題があり、パーサーにバグがある場合もあります。多くの場合、pdfcpuでリラックスした検証を使用しても機能しません。このような場合、緩和された検証を拡張する必要があり、このために私たちはあなたの助けに頼っています。クラッシュを報告することで、pdfcpu の安定性を向上させることができます。コマンドラインまたはGoバックエンドでpdfcpu操作でクラッシュした場合は、これを報告する手順は次のとおりです。
pdfcpu操作に関係なく、pdfcpuコマンドラインを使用してファイルを検証してください。
pdfcpu validate -v &> crash.log
または非常に詳細な出力を生成する
pdfcpu validate -vv &> crash.log
クラッシュを調査するために必要なものを生成します。次に、問題と投稿またはそのコンテンツを開きます。理想的には、これを再現するために共有できるテストPDFを投稿してください。hhrutter@gmail.com にメールで送信することも、Slackをご希望の場合は、Gopher Slack #pdfcpuチャンネルで連絡することもできます。
crash.log
検証中に pdfcpu で PDF を処理するとクラッシュし、Adobe Reader および Mac Preview で開くことができる場合は、緩やかな検証を拡張して修正を提供できます。問題のファイルがAdobe ReaderとMacプレビューの両方で開くことができない場合、私たちはあなたを助けることができません!
これらの素晴らしい人々に感謝します:
このプロジェクトは、コントリビューター行動規範とともにリリースされていることに注意してください。このプロジェクトに参加することにより、その条件に従うことに同意するものとします。
pdfcpuの使用は、処理しているPDFコンテンツのすべての著作権を認識し、尊重することを前提としています。これは、PDFファイル自体、そのコンテンツ、特にフォントファイルや画像などのすべての埋め込みリソースに適用されます。私たちの最愛のゴーファーを作成してくれたレニー・フレンチの功績が認められています。
アパッチ-2.0