
同じ 16 ページの文書を 50 部印刷し、各文書にシリアル番号をスタンプしたいと考えています。Ricoh/Lanier 多機能プリンタで印刷しています。現在は、次lpr
のような線で印刷してホッチキスで留めています。
lpr -P <printer> -# 50 -o StapleLocation=UpperLeft file.pdf
したがって、他のオプションを組み合わせることでこれを達成できることを期待していました。
私は調査して、透かしを入れるためのさまざまなオプションを見つけました同じ各文書に「ドラフト」や「機密」などのテキストを記載します。ただし、各コピーの上部に異なる番号を透かしで入れたり、スタンプしたりしたいと思います。
PyPDF を使用して複数のファイルを作成するプログラムを作成できます。各ファイルはソース ファイルから開始され、その上にカスタム テキストがスタンプされます。ただし、16 ページのファイルを 50 個印刷するには、1 つのファイルを 50 回印刷するよりもはるかに時間がかかります。アドバイスをいただければ幸いです。
答え1
理想的な世界では、これを可能にするすべての概念が言語内に存在するため、プリンタ内のインタープリタによって実行される小さな PostScript を記述してこれを実行できるはずです。
PostScript オペレータはcurrentsystemparams
、プリンタからPageCount
「製造以降に正常に処理されたページ数」を表す整数を含む情報を取得できます。これは、PostScript コードがページ出力に追加できる一意のシリアル番号として使用できます。
あるいは、オペレータを使用して、コードは「VM 内のオブジェクトに永続的な変更を加える」ことができますがstartjob
、これにはプリンタ管理者のパスワードが必要です。この手法を使用すると、小さな非印刷ジョブをプリンタに送信してグローバル カウンタを初期化できます。その後、後続のジョブでこれにアクセスして、取得、使用、更新することができます。
ただし、コピー部数を設定する場合、PostScript は各ページをラスタライズするために 1 回だけ実行され、その後は各コピーに対して同一のページが印刷されるため、これらの手法はどちらもおそらく機能しません。
引用は古いPostScript言語リファレンスからのものですpdf。
答え2
一部のプリンターには透かし印刷オプションがあり、新しいドキュメントを生成せずにドライバー オプションとして有効にすることができます (つまり、プリンターのラスタライザーはページの上部に追加の透かしを追加するだけです)。ただし、ここで必要なのはそれではないようです。
したがって、ここで何をしても (cups フィルターや PPD を徹底的にハッキングしたり、ドキュメントを生成したり)、プリンターは 800 ページをラスタライズする必要があります。これは実際にはどうしようもありません。したがって、PyPDF のアプローチは私には適切であるように思われます。
(私はpdfpages
パッケージのLaTeXを使用しました\includepdf
。
\newcounter{serialnr}{10000}%
\includepdf[pagecommand={\thispagestyle{empty}\arabic{serialnr}]{pdffile.pdf}%
\stepcounter{serialnr}%
\includepdf[pagecommand={\thispagestyle{empty}\arabic{serialnr}]{pdffile.pdf}%
(\pgffor
これが簡単になります)
答え3
タイトルページだけにシリアル番号を印刷するだけでよい場合は、
- ドキュメントを と に分割し
p01.pdf
ますp02-16.pdf
。 - を50部印刷します
p02-16.pdf
。 p01.pdf
異なるシリアル番号を持つ 50 種類のバリエーションを作成し、印刷するプログラムを作成します。- 手動でシャッフルします。
手動でシャッフルするのに時間がかかりすぎる場合は、ループ スクリプトを作成するという方法もあります。
do 50 times:
begin
make a copy of p01.pdf with a unique serial number, and print it
print p02-16.pdf
end
これは、「16 ページのファイル 50 個を印刷する」ソリューションよりも速くない可能性があります。
もちろん、両面印刷する場合は、ドキュメントを と に分割する必要がありp01-02.pdf
ますp03-16.pdf
。