TotalPDFPrinterX: Server Batch PDF Printer powered by ActiveXで印刷タスクを効率化します。
Windows
2000/2003/Vista
7/8/10/11
and
2012/2016/2019/2022 Server
and
Docker/Citrix/Wine
Total PDF Printer X は、Windows サーバー上で PDF ファイルを物理プリンターやネットワークプリンターへバッチ印刷するサーバーサイド SDK です — ヘッドレスで動作し、印刷パイプラインで Acrobat、Foxit、その他いかなる PDF ビューアも開きません。完全サイレント動作で、GUI もダイアログもポップアップもありません。Total PDF Printer X にはコマンドラインバイナリと ActiveX/COM インターフェースの両方が同梱されており、ASP、PHP、.NET、Python、Ruby、Java、その他あらゆる COM 対応バックエンドに組み込めます。なお、出力先引数はプリンター名であってファイルパスではありません — 出力先はディスクではなく物理プリンターまたはネットワークプリンターです。
Total PDF Printer X はサーバー印刷シナリオを完全にカバーします:
-sort)
-rn)、複数部数 (-NumCopy)、両面印刷モード(長辺綴じは -d vertical、短辺綴じは -d horizontal)
-ps A4、Letter、Legal など) およびカラーモード (-cl monochrome)
-list によるキューファイル処理
典型的な導入例: FTP のドロップ先や ERP のエクスポートフォルダーが PDF(請求書、納品書、配送ラベル、裁判所提出書類)を受信し、Folder Monitor が新規ファイルを検知するたびに、プリンター名とフラグを指定して Total PDF Printer X を呼び出します。オペレーターの介入なしに、ファイルが紙に出力されます。1 台の印刷サーバーで 1 日あたり数万ページの処理は通常運用範囲内です。
なお、Total PDF Printer X は Windows サーバー上でのみ動作します。30 日間の無料試用版(機能制限なし)で実際にお試しいただき、価格に見合う価値があることをご確認ください。
(30日間の無料試用を含む)
(のみ $450.00)
string src = @"C:\test\test1.pdf";
string printer = "HP LaserJet M404";
var prn = new PDFPrinterX();
prn.Print(src, printer, "-NumCopy 2 -d vertical -ps A4 -log c:\\test\\Printer.log");
if (!string.IsNullOrEmpty(prn.ErrorMessage))
throw new Exception(prn.ErrorMessage);
public static class Function1
{
[FunctionName("Function1")]
public static async Task Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
StringBuilder sbLogs = new StringBuilder();
sbLogs.AppendLine("started...");
try
{
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.CreateNoWindow = true;
startInfo.UseShellExecute = false;
var assemblyDirectoryPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
assemblyDirectoryPath = assemblyDirectoryPath.Substring(0, assemblyDirectoryPath.Length - 4);
var executablePath = $@"{assemblyDirectoryPath}\Printer\PDFPrinterX.exe";
sbLogs.AppendLine(executablePath + "...");
var srcPath = $@"{assemblyDirectoryPath}\src\sample.pdf";
var printerName = "HP LaserJet M404";
startInfo.FileName = executablePath;
if (File.Exists(executablePath) && File.Exists(srcPath))
{
sbLogs.AppendLine("files exists...");
}
else
sbLogs.AppendLine("EXE & source files NOT exists...");
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.Arguments = $"\"{srcPath}\" -p \"{printerName}\"";
using (Process exeProcess = Process.Start(startInfo))
{
sbLogs.AppendLine($"wait...{DateTime.Now.ToString()}");
exeProcess.WaitForExit();
sbLogs.AppendLine($"complete...{DateTime.Now.ToString()}");
}
sbLogs.AppendLine("Print job submitted.");
}
catch (Exception ex)
{
sbLogs.AppendLine(ex.ToString());
}
return new OkObjectResult(sbLogs);
}
}
dim C
Set C=CreateObject("PDFPrinter.PDFPrinterX")
C.Print "c:\test\source.pdf", "HP LaserJet M404", "-NumCopy 2 -ps A4 -log c:\test\PrintPDF.log"
Response.Write C.ErrorMessage
set C = nothing
$src = "C:\\test\\test.pdf";
$printer = "My Printer Name";
$c = new COM("PDFPrinter.PDFPrinterX");
$c->Print($src, $printer, "-ps A4 -NumCopy 2");
if ($c->ErrorMessage == "") echo "OK"; else echo "fail:".$c->ErrorMessage;
require 'win32ole'
c = WIN32OLE.new('PDFPrinter.PDFPrinterX')
src = "C:\\test\\test.pdf"
printer = "HP LaserJet M404"
c.Print(src, printer, "-NumCopy 2 -d vertical -log c:\\test\\PDFPrinter.log")
if c.ErrorMessage != ""
puts c.ErrorMessage
end
import win32com.client
c = win32com.client.Dispatch("PDFPrinter.PDFPrinterX")
src = "C:\\test\\test.pdf"
printer = "HP LaserJet M404"
c.Print(src, printer, "-NumCopy 2 -d vertical -log c:\\test\\PDFPrinter.log")
if c.ErrorMessage:
print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto;
var
c: OleVariant;
begin
c := CreateOleObject('PDFPrinter.PDFPrinterX');
c.Print('c:\test\source.pdf', 'HP LaserJet M404', '-NumCopy 2 -ps A4 -log c:\test\PDFPrinter.log');
if c.ErrorMessage <> '' then
ShowMessage(c.ErrorMessage);
end;
var c = new ActiveXObject("PDFPrinter.PDFPrinterX");
c.Print("C:\\test\\source.pdf", "HP LaserJet M404", "-NumCopy 2 -ps A4");
if (c.ErrorMessage != "")
alert(c.ErrorMessage)
use Win32::OLE; my $src = "C:\\test\\test1.pdf"; my $printer = "HP LaserJet M404"; my $c = CreateObject Win32::OLE 'PDFPrinter.PDFPrinterX'; $c->Print($src, $printer, "-NumCopy 2 -log c:\\test\\PDFPrinter.log"); print $c->ErrorMessage if $c->ErrorMessage ne "";
「Scanprint Logistics は倉庫業を営み、お客様の商品を保管・配送しています。当社では Total PDF Printer X と Total Folder Monitor を併用して、お客様や ERP システムからの PDF ファイルの印刷を自動化しています。お客様は PDF ファイル(例えば請求書)を当社の FTP サーバーにアップロードし、Total PDF Printer X が印刷を行うので、出荷する商品に同梱できます。」
Frants Erikstrup
www.scanprint.dk
「Total PDF Printer と Total PDF Printer X のバージョンをインストールしましたが、問題は一切見つかりませんでした。したがって私の評価は非常に肯定的です。新バージョンの利用を始めたばかりで(以前のバージョンも使用していました)、もし疑問があれば必ずメッセージをお送りします。ありがとうございます、よろしくお願いします。」
Silverio Pattuelli
Ravenna, Italy, www.nobleagri.com
「12 拠点の倉庫があり、それぞれにラベルプリンターと納品書プリンターがあります。Total PDF Printer X と Folder Monitor の組み合わせ:プリンターごとに受信フォルダーを用意し、ERP が PDF を投入すると、数秒以内に正しいステーションに紙が出てきます。-p はフレンドリー名でプリンターを選択し、-t は注文番号を Windows キューに書き込むので、オペレーターは詰まったジョブをすぐ見つけられます。Acrobat が更新されるたびに壊れていた自作の Acrobat 自動化パイプラインを置き換えました。PDF Printer X 運用 5 年、コンバーター起因と判定できる障害はゼロです。」
Marcin Z.
Senior IT Engineer at a 3PL warehouse network
「当社の医療記録製品に Royalty-Free ライセンスで Total PDF Printer X を組み込みました。プロジェクト単位の一回払い料金は、Aspose.PDF や PDFTron が印刷経路の再配布権で要求してきた金額のごく一部でした。当社のインストーラーが ActiveX を配布・登録し、アプリは Print() を直接呼び出し、エンドユーザーには当社の UI しか見えません。32 ビット ActiveX の制約でパイプラインの作り直しに数日を要しましたが、回避策について問い合わせたときのサポートの対応は迅速でした。」
Sasha P.
Independent Software Vendor
「裁判所の提出書類は PDF で届きます。物理ケースファイル用に、案件番号の透かしとページ番号を付けて印刷しています。ドキュメント間の区切りシートのおかげで、記録係担当者の日次スタックが整理された状態に保たれます。-rn により署名ページだけが必要な場合にそれだけを印刷できます。実行間で結果が決定的に同じになるので、監査において重要です。CLI は安定しており文書も整っており、-xmllog フラグはジョブごとの機械可読出力を提供してくれて監査証跡に役立っています。」
Eleni V.
Lead Developer at a court-records office
IT teams that automate batch PDF printing on Windows servers via command line and ActiveX
Print PDF files on servers without any user interaction
IT departments deploy Total PDF PrinterX on Windows servers to print incoming PDF documents automatically. The application runs silently with no GUI or pop-up messages, printing batches of PDFs via command line on schedule — ideal for invoices, reports, and documents that need to be printed as soon as they arrive.
Batch-print thousands of PDF invoices in date order
Accounting departments print daily batches of PDF invoices, statements, and financial reports sorted by file date or time. Total PDF PrinterX adds page numbers or company watermarks to each sheet, and separator pages between documents keep the printed stack organized for distribution or mailing.
Add PDF printing to your web app via ActiveX
Software developers integrate Total PDF PrinterX via ActiveX into web applications, ERP systems, and document management platforms. Users trigger print jobs from a browser, and the server handles printing silently — no desktop software or user intervention required on the server side.
Auto-print packing slips and shipping labels from a server
Warehouses and distribution centers auto-print PDF packing slips, shipping labels, and delivery notes as orders flow in. Auto-rotate and fit-to-page options handle different document sizes without manual adjustment, and duplex-safe separator sheets prevent documents from bleeding across double-sided pages.
Print case files with watermarks and page numbering
Government agencies and legal departments batch-print PDF filings, case documents, and regulatory submissions on dedicated print servers. Add text watermarks with confidentiality notices or copyright information to every page, and stamp page numbers for organized physical records — all hands-free via command line.
Total PDF Printer X には PDFPrinterX.exe が同梱されており、スクリプト、スケジュールタスク、印刷サーバーのフック、あるいは紙への出力が必要な任意のバックエンドサービスから呼び出せるコンソールバイナリです。フラグの体系は GUI 版の PDFPrinter.exe と一致しています。すべてのオプションはコマンドライン ドキュメントを参照してください。引数の出力先はファイルパスではなくプリンター名です — 出力は物理またはネットワークのプリンターに送られ、ディスクには送られません。
最小の呼び出し方。プリンター名を省略すると、Windows が現在の既定プリンターと見なすものに送られます。
PDFPrinterX.exe "C:\docs\invoice.pdf"
-p は Windows のプリンターパネルに表示されるフレンドリ名、またはその一意な部分を受け入れます。
PDFPrinterX.exe "C:\docs\invoice.pdf" -p "HP LaserJet M404"
部分一致も使えます — -p HP は名前に "HP" を含む最初のプリンターを選びます。
長い PDF で数枚だけが必要な場合 — 表紙、署名ページ、1 つの章 — -rn で印刷範囲を制限します。
PDFPrinterX.exe "C:\docs\contract.pdf" -p "Office Printer" -rn "1-3,7,12-14"
典型的なオフィスケース:同じ文書を N 部、両面、A4 で配布します。-NumCopy は部数を設定し、-d vertical は長辺綴じの両面印刷を有効にし、-ps A4 は用紙サイズを強制します。
PDFPrinterX.exe "C:\docs\handout.pdf" -p "HP LaserJet M404" -NumCopy 25 -d vertical -ps A4
バイナリにワイルドカードを指定すると、一致する各ファイルを別個のジョブとして印刷します。生成されたレポートの夜間バッチに便利です。
PDFPrinterX.exe "C:\reports\daily\*.pdf" -p "Reports Printer" -sort name
サブフォルダを含めるには -Recurse を、ファイルごとに 1 ジョブではなくバッチ全体を 1 つのマージされた印刷ジョブとして送るには -combine を追加します。
Windows の印刷サーバー上の共有プリンターは共有名で指定します。UNC パスをそのまま -p に渡してください。
PDFPrinterX.exe "C:\docs\report.pdf" -p "\\PRINTSRV01\Accounting-HP" -t "Q3 Report" -cl monochrome
-t は Windows の印刷キューに表示されるジョブタイトルを設定するので、ジョブを見つけたりキャンセルしたりするのが容易になります。
外部のワーカーがキューファイルを書き出し、プリンターがそれを消費する場合、コマンドラインそのものにファイルパスを置きたくないでしょう。-list はプレーンテキストファイルから 1 行 1 ファイルマスクを読み込みます。
PDFPrinterX.exe -list "C:\queues\print-queue.txt" -p "Office Printer" -fo
-fo はプロンプトなしで処理を強制します。キューワーカーが印刷成功後に元ファイルの削除も期待する場合は -do と組み合わせてください。
PDFPrinterX.exe がサービスやスケジュールタスクとして動作し始めたら、何が実際に起きたかを知る唯一の信号はログです。-verbosity detail はファイルごとに 1 行を書き込み、-logmode append は実行をまたいで履歴を維持し、-xmllog はパーサーフレンドリな付随ファイルを出力します。
PDFPrinterX.exe "C:\spool\*.pdf" -p "Warehouse Label Printer" -log "C:\logs\pdfprint.log" -verbosity detail -logmode append -xmllog "C:\logs\pdfprint.xml"
更新 Fri, 01 May 2026
(のみ $450.00)
-p に渡します: -p "HP LaserJet M404"。部分一致もサポートされており、-p HP は名前に「HP」を含む最初のプリンターを選択します。Windows プリントサーバー上の共有プリンターには UNC 共有パスを使用します: -p "\\PRINTSRV01\Accounting-HP"。-p を省略すると、現在の Windows 既定のプリンターに印刷されます。new COM("PDFPrinter.PDFPrinterX")、.NET では new PDFPrinterX()、Python では win32com.client.Dispatch("PDFPrinter.PDFPrinterX")、Ruby では WIN32OLE.new('PDFPrinter.PDFPrinterX') です。COM のメソッド名は Convert ではなく Print である点にご注意ください — 出力先はファイルパスではなくプリンター名です。あるいは、PDFPrinterX.exe コマンドラインバイナリを任意のプロセス、スケジューラー、シェルスクリプトから呼び出すこともできます。-rn "1-3,7,12-14" を使用します。-NumCopy 25 で部数を設定します。-d vertical は長辺綴じ両面印刷(一般的な「書籍」綴じ)、-d horizontal は短辺綴じ両面印刷(「カレンダー」綴じ)です。-ps A4/Letter/Legal で用紙サイズを強制指定します。-cl monochrome はカラープリンターでもモノクロ出力を強制します。PDFPrinterX.exe を呼び出します。これは倉庫(納品書の自動印刷)、経理(請求書の自動印刷)、ERP 統合(エクスポートの自動印刷)における標準的なセットアップです。-list キューファイルフラグは、別プロセスが印刷キューを書き込むワーカー駆動型パイプラインに対応します。無料トライアルをダウンロードして、ファイルを数分で変換。
クレジットカードもメールアドレスも不要。