Total PDF Converter X to właściwe rozwiązanie do konwersji plików PDF na inne formaty na serwerach webowych.
Windows
2000/2003/Vista/7/8/10/11
and
2012/2016/2019/2022 Server
and
Docker/Citrix/Wine
Total PDF Converter X (SDK) to zestaw do tworzenia oprogramowania PDF służący do konwertowania PDF na DOC, RTF, XLS, HTML, EPS, PS, TXT, CSV lub obrazy (BMP, JPEG, GIF, WMF, EMF, PNG, TIFF) na serwerach internetowych. Użyj go, aby dodać możliwość konwersji plików PDF do własnych aplikacji. Total PDF ConverterX (SDK) można zintegrować zarówno z aplikacjami serwerowymi, jak i desktopowymi/klienckimi. Kupując zestaw do tworzenia Total PDF Converter, otrzymujesz zarówno narzędzie wiersza poleceń, jak i ActiveX. Nie ma on interfejsu GUI ani żadnych nieprzerwanych komunikatów.
Dla każdego rodzaju konwersji oferowane są różne ustawienia. Total PDF ConverterX może przetwarzać wielostronicowe pliki PDF na 2 sposoby: albo konwertować PDF na jeden plik docelowy, albo wyodrębnić każdą stronę i konwertować ją na format docelowy. Program może również łączyć kilka plików PDF w jeden obraz.
Używanie Total PDF ConverterX do ulepszania istniejących aplikacji wymaga minimalnego wysiłku. Wszystkie funkcje są już zaimplementowane w kodzie, więc wystarczy tylko wybrać potrzebne części i wkleić je do kodu aplikacji z niewielkimi modyfikacjami. Setki naszych klientów z powodzeniem wdrożyły opcje konwersji PDF do swoich aplikacji. Pobierz swoją kopię teraz - zarówno konwerter wiersza poleceń, jak i ActiveX są zawarte w pobraniu.
(zawiera 30-dniowy DARMOWY okres próbny)
(tylko $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("Konwersja zakończona!"); //Praca z formularzami Cnv.LoadFromFile(src); Cnv.SetFormFieldValue(0, "Test Name"); Cnv.SaveToFile(src);
Pobierz przykład konwertera PDF dla .NET
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("rozpoczęto..."); 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("pliki istnieją..."); } else sbLogs.AppendLine("Pliki EXE & MSG NIE istnieją..."); startInfo.WindowStyle = ProcessWindowStyle.Hidden; startInfo.Arguments = $"{msgPath} {outPath}"; using (Process exeProcess = Process.Start(startInfo)) { sbLogs.AppendLine($"oczekiwanie...{DateTime.Now.ToString()}"); exeProcess.WaitForExit(); sbLogs.AppendLine($"zakończono...{DateTime.Now.ToString()}"); } int sleepCounter = 10; while(!File.Exists(outPath) && sleepCounter > 0) { System.Threading.Thread.Sleep(1000); sbLogs.AppendLine("uśpienie..."); sleepCounter--; } if (File.Exists(outPath)) sbLogs.AppendLine("Konwersja zakończona pomyślnie."); } 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 ("Błąd w CoInitialize."); return -1; } LPCTSTR lpFileName = "PDFConverter.dll"; HMODULE hModule; hModule = LoadLibrary (lpFileName); printf ("hModule: %d\n", hModule); if (hModule == 0) { printf ("Błąd w LoadLibrary."); return -1; } hDllGetClassObjectFunc hDllGetClassObject = NULL; hDllGetClassObject = (hDllGetClassObjectFunc) GetProcAddress (hModule, "DllGetClassObject"); if (hDllGetClassObject == 0) { printf ("Błąd w 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 ("Błąd w 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 ("Błąd w hDllGetClassObject."); return -1; } hr = pCF->lpVtbl->Release (pCF); printf ("hr Release: %d\n", hr); if (!SUCCEEDED (hr)) { printf ("Błąd w Release."); return -1; } hr = pIN->lpVtbl->About (pIN); printf ("hr About: %d\n", hr); if (!SUCCEEDED (hr)) { printf ("Błąd w About."); return -1; } hr = pIN->lpVtbl->Convert (pIN, "test.pdf", "test.html","-cHTML"); printf ("hr Convert: %d\n", hr); if (!SUCCEEDED (hr)) { printf ("Błąd w 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 "błąd:" . $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;
"Dotychczas narzędzie wykonuje zadanie poprawnie, to znaczy konwertuje pliki PDF na pliki Excel za pomocą wiersza poleceń w zadaniu zaplanowanym w systemie Windows. Jeśli będę miał jakiekolwiek problemy, z pewnością się z Wami skontaktuję."
Sofiane Hamri
"Bardzo dziękuję za całą Waszą pomoc. Total PDF ConverterX działa świetnie. To była bardzo potrzebna poprawka, gdy produkt jednego z Waszych konkurentów zawieszał się podczas uruchamiania z usługi Windows. Wasza współpraca i szybka reakcja była prawdziwym ratunkiem w umożliwieniu nam dotrzymania terminów naszych klientów."
Michael J. Balmer, Lead Integration Engineer
www.QuestDiagnostics.com
Zaktualizowano Thu, 16 May 2024
(tylko $550.00)
|
|
|