Total PDF Converter X is the right solution to convert PDF files to other formats on web-servers.
Windows
2000/2003/Vista/7/8/10/11
and
2012/2016/2019/2022 Server
and
Docker/Citrix/Wine
Total PDF Converter X (SDK) is a PDF software development kit to convert PDF to DOC, RTF, XLS, HTML, EPS, PS, TXT, CSV or images (BMP, JPEG, GIF, WMF, EMF, PNG, TIFF) on web-servers. Use it to add the ability to convert PDF files into your own applications. Total PDF ConverterX (SDK) can be integrated into both server and desktop/client applications. Buying Total PDF Converter development kit you get both command line tool and ActiveX. It has no GUI or any interrupting messages.
Different settings are offered for each type of conversion. Total PDF ConverterX can process multi-page PDF files in 2 ways: either convert PDF into one target file or extract every page and convert them to the target format. The program can also combine several PDF files into one image.
Using Total PDF ConverterX for enhancing your existing apps requires minimum efforts. All features are already implemented in the code, and you need only to pick necessary parts and paste them into your application code with slight adjustments. Hundreds of our clients successfully implemented PDF converting options to their applications. Get your copy now - both command line converter and ActiveX are included into the download.
(includes 30 day FREE trial)
(only $550.00)
string src="C:\\test\\Source.PDF"; string dest="C:\\test\\Dest.TIFF"; PDFConverterX Cnv = new PDFConverterX(); Cnv.Convert(src, dest, "-c TIFF -log c:\\test\\PDF.log"); MessageBox.Show("Convert complete!"); //Working with Forms Cnv.LoadFromFile(src); Cnv.SetFormFieldValue(0, "Test Name"); Cnv.SaveToFile(src);
Download .NET PDF Covnerter example
public static class Function1 { [FunctionName("Function1")] public static async TaskRun( [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 msgPath = $@"{assemblyDirectoryPath}\MSG\MSG.pdf"; var outPath = Path.GetTempFileName() + ".tiff"; startInfo.FileName = executablePath; if (File.Exists(outPath)) { File.Delete(outPath); } if (File.Exists(executablePath) && File.Exists(msgPath)) { sbLogs.AppendLine("files exists..."); } else sbLogs.AppendLine("EXE & MSG files NOT exists..."); startInfo.WindowStyle = ProcessWindowStyle.Hidden; startInfo.Arguments = $"{msgPath} {outPath}"; using (Process exeProcess = Process.Start(startInfo)) { sbLogs.AppendLine($"wait...{DateTime.Now.ToString()}"); exeProcess.WaitForExit(); sbLogs.AppendLine($"complete...{DateTime.Now.ToString()}"); } int sleepCounter = 10; while(!File.Exists(outPath) && sleepCounter > 0) { System.Threading.Thread.Sleep(1000); sbLogs.AppendLine("sleep..."); sleepCounter--; } if (File.Exists(outPath)) sbLogs.AppendLine("Conversion complete successfully."); } catch (Exception ex) { sbLogs.AppendLine(ex.ToString()); } return new OkObjectResult(sbLogs); } }
#include <windows.h> static const CLSID CLSID_PDFConverterX = {0x6B411E7E, 0x9503,0x4793,{0xA2, 0x87, 0x1F, 0x3B, 0xA8, 0x78, 0xB9, 0x1C}}; static const IID IID_IPDFConverterX = {0xEF633BED, 0xC414,0x49B0,{0x91, 0xFB, 0xC3, 0x9C, 0x3F, 0xE0, 0x08, 0x0D}}; #undef INTERFACE #define INTERFACE IPDFConverterX DECLARE_INTERFACE_(IPDFConverterX, IDispatch) { STDMETHOD(QueryInterface)(THIS_ REFIID, PVOID*) PURE; STDMETHOD(Convert)(THIS_ LPCTSTR, LPCTSTR, LPCTSTR) PURE; STDMETHOD(About)(THIS) PURE; //const SourceFile: WideString; const DestFile: WideString; const Params: WideString; safecall; }; typedef HRESULT (__stdcall *hDllGetClassObjectFunc) (REFCLSID, REFIID, void **); int main () { HRESULT hr; if (CoInitialize(NULL)) { printf ("Error in CoInitialize."); return -1; } LPCTSTR lpFileName = "PDFConverter.dll"; HMODULE hModule; hModule = LoadLibrary (lpFileName); printf ("hModule: %d\n", hModule); if (hModule == 0) { printf ("Error in LoadLibrary."); return -1; } hDllGetClassObjectFunc hDllGetClassObject = NULL; hDllGetClassObject = (hDllGetClassObjectFunc) GetProcAddress (hModule, "DllGetClassObject"); if (hDllGetClassObject == 0) { printf ("Error in GetProcAddress."); return -1; } IClassFactory *pCF = NULL; hr = hDllGetClassObject (&CLSID_PDFConverterX, &IID_IClassFactory, (void **)&pCF); /* Can't load with different ID */ printf ("hr hDllGetClassObject: %d\n", hr); if (!SUCCEEDED (hr)) { printf ("Error in hDllGetClassObject."); return -1; } IPDFConverterX *pIN; hr = pCF->lpVtbl->CreateInstance (pCF, 0, &IID_IPDFConverterX, (void **)&pIN); printf ("hr CreateInstance: %d\n", hr); if (!SUCCEEDED (hr)) { printf ("Error in hDllGetClassObject."); return -1; } hr = pCF->lpVtbl->Release (pCF); printf ("hr Release: %d\n", hr); if (!SUCCEEDED (hr)) { printf ("Error in Release."); return -1; } hr = pIN->lpVtbl->About (pIN); printf ("hr About: %d\n", hr); if (!SUCCEEDED (hr)) { printf ("Error in About."); return -1; } hr = pIN->lpVtbl->Convert (pIN, "test.pdf", "test.html","-cHTML"); printf ("hr Convert: %d\n", hr); if (!SUCCEEDED (hr)) { printf ("Error in Convert."); return -1; } return 0; }
dim C Set C=CreateObject("PDFConverter.PDFConverterX") C.Convert "c:\source.PDF", "c:\dest.HTML", "-cHTML -log c:\pdf.log" set C = nothing
dim C Set C=CreateObject("PDFConverter.PDFConverterX") Response.Clear Response.AddHeader "Content-Type", "binary/octet-stream" Rresponse.AddHeader "Content-Disposition", "attachment; filename=test.TIFF" Response.BinaryWrite c.ConvertToStream("C:\www\ASP\Source.PDF", "C:\www\ASP", "-cTIFF -log c:\PDF.log") set C = nothing
$src="C:\\test.pdf"; $dest="C:\\test.tiff"; if (file_exists($dest)) unlink($dest); $c= new COM("PDFConverter.PDFConverterX"); $c->convert($src,$dest, "-c TIFF -log c:\doc.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.tiff"; c.convert(src,dest, "-c TIFF -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.tiff"; c.convert(src, dest, "-c TIFF -log c:\\test\\PDF.log"); if not os.path.exists(file_path): print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto; var c: OleVariant; begin c:=CreateOleObject('PDFConverter.PDFConverterX'); C.Convert('c:\test\source.pdf', 'c:\test\dest.tiff', '-c TIFF -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.tiff", "-c TIFF"); if (c.ErrorMessage!="") alert(c.ErrorMessage)
use Win32::OLE; my $src="C:\\test\\test.pdf"; my $dest="C:\\test\\test.tiff"; my $c = CreateObject Win32::OLE 'PDFConverter.PDFConverterX'; $c->convert($src,$dest, "-c TIFF -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 would have any problem I will certainly contact you."
Sofiane Hamri
"Thank you very much for all your help. The Total PDF ConverterX is working great. This was a much needed fix when one of your competitor's product would hang when ran 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
Updated Thu, 16 May 2024
(only $550.00)
|
|
|