Convert PDF to DOC, XLS, HTML, TIFF, JPEG, CSV on Windows servers — without Adobe Acrobat.
Windows
2000/2003/Vista
7/8/10/11
and
2012/2016 / 2019/2022 Server
and
Docker / Citrix / Wine
Total PDF Converter X is a server-side SDK that converts PDF files to DOC, RTF, XLS, HTML, XHTML, EPS, PS, TXT, CSV, BMP, JPEG, GIF, WMF, EMF, PNG, and TIFF — without Adobe Acrobat, Foxit, or any external PDF library on the server. It runs silent: no GUI, no dialogs, no popups. Total PDF Converter X ships with both a command-line binary and an ActiveX/COM interface, so it drops into ASP, PHP, .NET, Python, Ruby, Java, and any other COM-aware backend.
Output coverage splits into three tracks:
Total PDF Converter X handles the full server-side scenario: password-protected PDFs (pass -Pass "wb-pwd"), batch combining (multiple PDFs into one output document or one image), per-page extraction (split a multi-page PDF into N single-page files), folder mask + recursion (-Recurse -kfs) for whole-tree processing, queue-file driven runs (-list), and pairing with Total Folder Monitor for hot-folder auto-conversion on file arrival.
Multithreaded engine processes batches at maximum speed. Compatible with IIS, Docker, Citrix, and Wine. Try it for free (30 days trial period, no limitations) and find out that it is really worth its money.
Some of the currently supported file format conversions:
|
|
|
(includes 30 day FREE trial)
(only $550.00)
string src = @"C:\test\Source.pdf";
string dest = @"C:\test\Dest.docx";
var cnv = new PDFConverterX();
cnv.Convert(src, dest, "-cDOC -log c:\\test\\PDF.log");
if (!string.IsNullOrEmpty(cnv.ErrorMessage))
throw new Exception(cnv.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}\Converter\PDFConverterX.exe";
sbLogs.AppendLine(executablePath + "...");
var srcPath = $@"{assemblyDirectoryPath}\src\sample.pdf";
var outPath = Path.GetTempFileName() + ".docx";
startInfo.FileName = executablePath;
if (File.Exists(outPath))
{
File.Delete(outPath);
}
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}\" \"{outPath}\" -cDOC";
using (Process exeProcess = Process.Start(startInfo))
{
sbLogs.AppendLine($"wait...{DateTime.Now.ToString()}");
exeProcess.WaitForExit();
sbLogs.AppendLine($"complete...{DateTime.Now.ToString()}");
}
sbLogs.AppendLine("Conversion complete.");
}
catch (Exception ex)
{
sbLogs.AppendLine(ex.ToString());
}
return new OkObjectResult(sbLogs);
}
}
dim C
Set C=CreateObject("PDFConverter.PDFConverterX")
C.Convert "c:\test\source.pdf", "c:\test\dest.docx", "-cDOC -log c:\test\PDF.log"
Response.Write C.ErrorMessage
set C = nothing
dim C
Set C=CreateObject("PDFConverter.PDFConverterX")
Response.Clear
Response.AddHeader "Content-Type", "binary/octet-stream"
Response.AddHeader "Content-Disposition", "attachment; filename=test.docx"
Response.BinaryWrite C.ConvertToStream("C:\www\ASP\Source.pdf", "C:\www\ASP", "-cDOC -log c:\html.log")
set C = nothing
$src="C:\\test\\test.pdf";
$dest="C:\\test\\test.docx";
if (file_exists($dest)) unlink($dest);
$c= new COM("PDFConverter.PDFConverterX");
$c->convert($src,$dest, "-cDOC -log c:\\test\\PDF.log");
if (file_exists($dest)) echo "OK"; else echo "fail:".$c->ErrorMessage;
require 'win32ole'
c = WIN32OLE.new('PDFConverter.PDFConverterX')
src = "C:\\test\\test.pdf"
dest = "C:\\test\\test.docx"
c.convert(src, dest, "-cDOC -log c:\\test\\PDF.log")
if not File.exist?(dest)
puts c.ErrorMessage
end
import win32com.client
import os.path
c = win32com.client.Dispatch("PDFConverter.PDFConverterX")
src = "C:\\test\\test.pdf"
dest = "C:\\test\\test.docx"
c.convert(src, dest, "-cDOC -log c:\\test\\PDF.log")
if not os.path.exists(dest):
print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto;
var
c: OleVariant;
begin
c := CreateOleObject('PDFConverter.PDFConverterX');
c.Convert('c:\test\source.pdf', 'c:\test\dest.docx', '-cDOC -log c:\test\PDF.log');
if c.ErrorMessage <> '' then
ShowMessage(c.ErrorMessage);
end;
var c = new ActiveXObject("PDFConverter.PDFConverterX");
c.Convert("C:\\test\\source.pdf", "C:\\test\\dest.docx", "-cDOC");
if (c.ErrorMessage != "")
alert(c.ErrorMessage)
use Win32::OLE; my $src = "C:\\test\\test.pdf"; my $dest = "C:\\test\\test.docx"; my $c = CreateObject Win32::OLE 'PDFConverter.PDFConverterX'; $c->convert($src, $dest, "-cDOC -log c:\\test\\PDF.log"); print $c->ErrorMessage if -e $dest;
"Up to now, the tool is doing the job correctly, that is converting PDF files to Excel files using command line within a Windows scheduled task. If I have any problem I will certainly contact you."
Sofiane Hamri
Independent Developer
"Thank you very much for all your help. Total PDF Converter X is working great. This was a much-needed fix when one of your competitor's products would hang when run from a Windows service. Your cooperation and prompt response has been a real life saver in allowing us to meet our customer's deadlines."
Michael J. Balmer
Lead Integration Engineer, www.QuestDiagnostics.com
"Customers send us PDF invoices in dozens of vendor templates; we extract line items into XLS for the accounting system. Total PDF Converter X with -cXLS plus -FirstRowIsHeader produces clean spreadsheets where competitors gave us garbled merged cells. Throughput around 200 invoices per minute on our hardware. Five years in production. We replaced an Acrobat-automation pipeline that hung on every malformed PDF; the built-in parser handles the same files without complaint."
Aleksei P.
Senior Backend Developer at an invoice-processing platform
"Customer-supplied PDF productions arrive password-protected with case-specific passwords. Total PDF Converter X with -Pass unlocks them in the same call as the conversion, so our pipeline does not need a separate decryption step. -cExtract produces one PNG per page for the review tool's thumbnail strip. Headless on Windows Server Core, no Acrobat, no licensing surprises across four years of production use."
Yaiza R.
DevOps Engineer at a legal e-discovery platform
"Bundled Total PDF Converter X into our document-management product under the Royalty-Free License. The one-time per-project fee was a fraction of what Aspose.PDF or PDFTron wanted on a per-developer subscription. Our installer ships and registers the ActiveX, our app calls it directly, end users see only our UI. The 32-bit ActiveX limitation cost us a couple of days of pipeline rework, but support was responsive when we asked about workarounds."
Mateusz B.
Independent Software Vendor
Total PDF ConverterX ships with PDFConverterX.exe, a console binary you can drive from scripts, scheduled tasks, CI runners, or any backend service. The flag set matches the GUI PDFConverter.exe; for the full reference see the command-line documentation. The recipes below cover the cases we hear about most often from SDK customers.
The smallest possible call — one source file, one output, one target format. Ideal when you need an editable Word document out of an incoming PDF.
PDFConverterX.exe "C:\pdfs\report.pdf" "C:\out\report.doc" -cDOC
Financial statements, invoices and reports often arrive as PDF but need to land in Excel. Point the converter at a folder mask and let it process every file.
PDFConverterX.exe "C:\pdfs\*.pdf" "C:\out\" -cXLS
For full-text search indexing, NLP pipelines, or piping content into another tool. -e inserts a form-feed character between pages so you can split the result back into pages later.
PDFConverterX.exe "C:\pdfs\*.pdf" "C:\out\" -cTXT -e
Thumbnails, preview images, or input for OCR — rasterize each page at print-quality DPI. -s writes one image per page; the template controls the file naming.
PDFConverterX.exe "C:\pdfs\brochure.pdf" "C:\out\" -cPNG -dpi 300 -s -t "[Name].page#.png"
Swap -cPNG for -cJPG and add -jq 85 to control JPEG quality.
Pull only the pages you actually need — for example, an executive summary on pages 1 to 3 of a long report.
PDFConverterX.exe "C:\pdfs\report.pdf" "C:\out\summary.pdf" -cPDF -p "1-3"
Page lists also accept individual numbers and combinations, e.g. -p "1,3,5-7,10".
Convert a folder of PDFs into HTML pages so they can be served directly by a web stack, indexed by search engines, or embedded into a CMS.
PDFConverterX.exe "C:\pdfs\*.pdf" "C:\www\docs\" -cHTML
Document repositories rarely live in one flat folder. -Recurse walks subdirectories; -kfs recreates the same tree on the output side instead of flattening everything into one bucket.
PDFConverterX.exe "C:\archive\*.pdf" "C:\out\archive\" -cDOC -Recurse -kfs
For document archival systems that expect a single TIFF per case file. -combine merges all sources into one output; -tc G4FAX picks the standard B/W fax compression accepted by every viewer.
PDFConverterX.exe "C:\pdfs\case123\*.pdf" "C:\archive\case123.tif" -cTIF -combine -tc G4FAX -dpi 300
Once PDFConverterX.exe runs as a service or scheduled job, the only way to know what happened is the log. -verbosity detail writes one line per file; -logmode append keeps history across runs.
PDFConverterX.exe "C:\pdfs\*.pdf" "C:\out\" -cDOC -log "C:\logs\pdfconv.log" -verbosity detail -logmode append
When a worker writes a queue file and the converter consumes it, you don't want to encode the file paths into the command line itself. -list reads file masks (one per line) from a text file.
PDFConverterX.exe -list "C:\queues\batch.txt" "C:\out\" -cRTF
For workflows that require legally binding signed PDFs — contracts, invoices, regulated documents. Provide your .pfx certificate, its password, and optional metadata about the signing event.
PDFConverterX.exe "C:\pdfs\contract.pdf" "C:\out\contract-signed.pdf" -cPDF -PFXFile "C:\certs\company.pfx" -PFXPass "secret" -SignLoc "Wilmington, DE" -SignRes "Approved"
Developers and IT teams that integrate PDF conversion into server applications via ActiveX and command line
Add PDF-to-DOC and PDF-to-image conversion to your web app
Web developers integrate Total PDF ConverterX via ActiveX into ASP, PHP, or .NET applications. Users upload PDF files through a browser, the server converts them to DOC, XLS, HTML, or images silently with no GUI, and delivers the result — ready-to-use sample code is included to speed up integration.
Convert PDFs automatically within document management systems
Document management and enterprise content platforms use Total PDF ConverterX to convert uploaded PDFs to TIFF for archival, to text for full-text indexing, or to images for preview thumbnails. The SDK plugs into existing workflows with minimal code changes and handles password-protected PDFs when credentials are supplied.
Convert thousands of PDFs on servers without user interaction
Enterprise IT teams run Total PDF ConverterX via command line in scheduled batch jobs. Incoming PDFs are converted to DOC for editing, CSV for data extraction, or EPS for prepress — all unattended. Multi-page PDFs can be split into individual page files or combined into a single output document per folder.
Convert PDF files to TIFF, JPEG, and EPS for print workflows
Print shops and prepress departments convert PDF files to high-quality TIFF, JPEG, or EPS images on production servers. Control paper orientation, output quality, and image size per job. Process multi-page PDFs as individual page images or combine several PDFs into one multi-page TIFF for imposition.
Embed PDF conversion into your desktop or server software
Software vendors embed Total PDF ConverterX into their own products to add PDF export capabilities without building a conversion engine from scratch. The ActiveX interface provides all conversion features through simple API calls, and hundreds of developers have already integrated it into commercial applications.
Updated Fri, 01 May 2026
(only $550.00)
-Pass "workbook-pwd" to unlock), encrypted PDFs (40-bit, 128-bit, 256-bit AES), embedded fonts, vector graphics, raster images, and tables. Output covers DOC, DOCX, RTF, XLS, CSV, HTML, XHTML, TXT, EPS, PS, JPEG, PNG, BMP, GIF, TIFF (single or multi-page), WMF, EMF.new COM("PDFConverter.PDFConverterX") in PHP, new PDFConverterX() in .NET, win32com.client.Dispatch("PDFConverter.PDFConverterX") in Python, WIN32OLE.new('PDFConverter.PDFConverterX') in Ruby. Alternatively, the PDFConverterX.exe command-line binary can be invoked from any process, scheduler, or shell script. Direct streaming via ConvertToStream is also available for ASP/PHP web responses.-cExtract writes each PDF page as a separate output file (great for thumbnails or per-page review), while default behavior produces one output file per input PDF. -combine merges multiple input PDFs into a single output document or a single multi-page TIFF. -rn "1-3,7" picks specific pages. -sort name controls input order when combining a folder of files.-cXLS extracts tabular data from PDF into Excel format, preserving column structure where the source PDF has detectable tables. -cCSV writes the same data with custom delimiters (-separator ";" for European locales, -comma '"' for quote character). Combined with -FirstRowIsHeader, this turns scanned reports and statement PDFs into spreadsheet-ready data without manual cleanup.Updated Fri, 01 May 2026
(only $550.00)
|
|
|
Download free trial and convert your files in minutes.
No credit card or email required.