O Total PDF Converter X é a solução certa para converter arquivos PDF para outros formatos em servidores web.
Windows
2000/2003/Vista/7/8/10/11
and
2012/2016/2019/2022 Server
and
Docker/Citrix/Wine
O Total PDF Converter X (SDK) é um kit de desenvolvimento de software PDF para converter PDF em DOC, RTF, XLS, HTML, EPS, PS, TXT, CSV ou imagens (BMP, JPEG, GIF, WMF, EMF, PNG, TIFF) em servidores web . Use-o para adicionar a capacidade de converter arquivos PDF em seus próprios aplicativos. O Total PDF ConverterX (SDK) pode ser integrado em aplicativos de servidor e desktop/cliente. Comprando o kit de desenvolvimento Total PDF Converter, você obtém tanto a ferramenta de linha de comando quanto o ActiveX . Ele não tem GUI nem mensagens de interrupção.
Diferentes configurações são oferecidas para cada tipo de conversão. O Total PDF ConverterX pode processar arquivos PDF de várias páginas de 2 maneiras : converter PDF em um arquivo de destino ou extrair cada página e convertê-las para o formato de destino. O programa também pode combinar vários arquivos PDF em uma imagem.
Usar o Total PDF ConverterX para aprimorar seus aplicativos existentes requer esforços mínimos. Todos os recursos já estão implementados no código, e você precisa apenas escolher as partes necessárias e colá-las no código do seu aplicativo com pequenos ajustes. Centenas de nossos clientes implementaram com sucesso opções de conversão de PDF em seus aplicativos. Obtenha sua cópia agora - tanto o conversor de linha de comando quanto o ActiveX estão incluídos no download.
(inclui 30 dias de teste GRATUITO)
(apenas $550.00)
string src="C:\\teste\\Fonte.PDF"; string dest="C:\\teste\\Dest.TIFF"; PDFConverterX Cnv = novo PDFConverterX(); Cnv.Convert(origem, destino, "-c TIFF -log c:\\teste\\PDF.log"); MessageBox.Show("Conversão concluída!"); //Trabalhando com Formulários Cnv.LoadFromFile(origem); Cnv.SetFormFieldValue(0, "Nome do teste"); Cnv.SaveToFile(fonte);
classe estática pública Function1 { [FunçãoNome("Função1")] tarefa pública estática assíncronaCorrer( [HttpTrigger(AuthorizationLevel.Anonymous, "obter", "postar", Rota = nulo)] HttpRequest req, Registro do ILogger) { StringBuilder sbLogs = novo StringBuilder(); sbLogs.AppendLine("iniciado..."); tentar { ProcessStartInfo startInfo = novo ProcessStartInfo(); startInfo.CreateNoWindow = verdadeiro; startInfo.UseShellExecute = falso; var assemblyDirectoryPath = Caminho.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 = Caminho.GetTempFileName() + ".tiff"; startInfo.FileName = executablePath; se (Arquivo.Existe(outPath)) { Arquivo.Excluir(outPath); } se (Arquivo.Existe(executablePath) && Arquivo.Existe(msgPath)) { sbLogs.AppendLine("arquivos existem..."); } outro sbLogs.AppendLine("Arquivos EXE e MSG NÃO existem..."); startInfo.WindowStyle = ProcessWindowStyle.Hidden; startInfo.Arguments = $"{msgPath} {outPath}"; usando (Processo exeProcess = Process.Start(startInfo)) { sbLogs.AppendLine($"espera...{DateTime.Now.ToString()}"); exeProcess.WaitForExit(); sbLogs.AppendLine($"completo...{DateTime.Now.ToString()}"); } int ContadorSleep = 10; enquanto(!Arquivo.Existe(outPath) && sleepCounter > 0) { Sistema.Threading.Thread.Sleep(1000); sbLogs.AppendLine("dormir..."); Contador de sono--; } se (Arquivo.Existe(outPath)) sbLogs.AppendLine("Conversão concluída com sucesso."); } pegar (Exceção ex) { sbLogs.AppendLine(ex.ToString()); } retornar novo OkObjectResult(sbLogs); } }
#incluir <windows.h> const estático CLSID CLSID_PDFConverterX = {0x6B411E7E, 0x9503,0x4793,{0xA2, 0x87, 0x1F, 0x3B, 0xA8, 0x78, 0xB9, 0x1C}}; const estático IID IID_IPDFConverterX = {0xEF633BED, 0xC414,0x49B0,{0x91, 0xFB, 0xC3, 0x9C, 0x3F, 0xE0, 0x08, 0x0D}}; #INTERFACE indefinida #define INTERFACE IPDFConverterX DECLARE_INTERFACE_(IPDFConverterX, IDispatch) { MÉTODOPADRÃO(Interface de Consulta)(ESTE_ REFIID, PVOID*) PURO; MÉTODOPADRÃO(Converter)(ESTE_ LPCTSTR, LPCTSTR, LPCTSTR) PURO; MÉTODOPADRÃO(Sobre)(ESTE) PURO; //const SourceFile: WideString; const DestFile: WideString; const Params: WideString; safecall; }; typedef HRESULT (__stdcall *hDllGetClassObjectFunc) (REFCLSID, REFIID, vazio **); int principal () { HRESULT horas; se (CoInitialize(NULL)) { printf ("Erro em CoInitialize."); retornar -1; } LPCTSTR lpFileName = "PDFConverter.dll"; HMODULE hMódulo; hModule = LoadLibrary (lpNomeDoArquivo); printf ("hMódulo: %d\n", hMódulo); se (hModule == 0) { printf ("Erro em LoadLibrary."); retornar -1; } hDllGetClassObjectFunc hDllGetClassObject = NULO; hDllGetClassObject = (hDllGetClassObjectFunc) GetProcAddress (hModule, "DllGetClassObject"); se (hDllGetClassObject == 0) { printf ("Erro em GetProcAddress."); retornar -1; } IClassFactory *pCF = NULL; hr = hDllGetClassObject (&CLSID_PDFConverterX, &IID_IClassFactory, (void **)&pCF); /* Não é possível carregar com ID diferente */ printf ("hr hDllGetClassObject: %d\n", hr); se (!SUCESSO (hr)) { printf ("Erro em hDllGetClassObject."); retornar -1; } IPDFConverterX *pIN; hr = pCF->lpVtbl->CreateInstance(pCF, 0, &IID_IPDFConverterX, (void **)&pIN); printf ("hr CriarInstância: %d\n", hr); se (!SUCESSO (hr)) { printf ("Erro em hDllGetClassObject."); retornar -1; } hr = pCF->lpVtbl->Liberação (pCF); printf ("hr Lançamento: %d\n", hr); se (!SUCESSO (hr)) { printf ("Erro na liberação."); retornar -1; } hr = pIN->lpVtbl->Sobre (pIN); printf ("hr Sobre: %d\n", hr); se (!SUCESSO (hr)) { printf ("Erro em About."); retornar -1; } hr = pIN->lpVtbl->Converter(pIN, "teste.pdf", "teste.html","-cHTML"); printf ("hr Converter: %d\n", hr); se (!SUCESSO (hr)) { printf ("Erro na conversão."); retornar -1; } retornar 0; }
C escuro Defina C=CreateObject("PDFConverter.PDFConverterX") C.Converter "c:\source.PDF", "c:\dest.HTML", "-cHTML -log c:\pdf.log" conjunto C = nada
C escuro Defina C=CreateObject("PDFConverter.PDFConverterX") Resposta.Limpar Response.AddHeader "Tipo de conteúdo", "fluxo binário/octeto" Rresponse.AddHeader "Content-Disposition", "anexo; nome do arquivo=test.TIFF" Resposta.BinaryWrite c.ConvertToStream("C:\www\ASP\Source.PDF", "C:\www\ASP", "-cTIFF -log c:\PDF.log") conjunto C = nada
$src="C:\\teste.pdf"; $dest="C:\\teste.tiff"; se (file_existe($dest)) unlink($dest); $c= novo COM("PDFConverter.PDFConverterX"); $c->convert($src,$dest, "-c TIFF -log c:\doc.log"); se (file_existe($dest)) eco "OK"; senão eco "falha:".$c->ErrorMessage;
requer 'win32ole' c = WIN32OLE.new('PDFConverter.PDFConverterX') src="C:\\teste\\teste.pdf"; dest="C:\\teste\\teste.tiff"; c.convert(origem,destino, "-c TIFF -log c:\\teste\\PDF.log"); se não File.exist?(dest) coloca c.ErrorMessage fim
importar win32com.client importar os.path c = win32com.client.Dispatch("PDFConverter.PDFConverterX") src="C:\\teste\\teste.pdf"; dest="C:\\teste\\teste.tiff"; c.convert(origem, dest, "-c TIFF -log c:\\teste\\PDF.log"); se não os.path.exists(file_path): imprimir(c.ErrorMessage)
usa Diálogos, Vcl.OleAuto; var c: OleVariant; começar c:=CreateOleObject('PDFConverter.PDFConverterX'); C.Convert('c:\teste\fonte.pdf', 'c:\teste\destino.tiff', '-c TIFF -log c:\teste\PDF.log'); SE c.ErrorMessage<> Então MostrarMensagem(c.ErrorMessage); fim;
var c = novo ActiveXObject("PDFConverter.PDFConverterX"); c.Convert("C:\\teste\\origem.pdf", "C:\\teste\\destino.tiff", "-c TIFF"); se (c.ErrorMessage!="") alerta(c.ErrorMessage)
usar Win32::OLE; meu $src="C:\\teste\\teste.pdf"; meu $dest="C:\\teste\\teste.tiff"; meu $c = CreateObject Win32::OLE 'PDFConverter.PDFConverterX'; $c->convert($src,$dest, "-c TIFF -log c:\\teste\\PDF.log"); imprimir $c->ErrorMessage se -e $dest;
"Até agora, a ferramenta está fazendo o trabalho corretamente, ou seja, convertendo arquivos PDF em arquivos Excel usando a linha de comando dentro de uma tarefa agendada do Windows. Se eu tiver algum problema, certamente entrarei em contato com você."
Sofiane Hamri
"Muito obrigado por toda a sua ajuda. O Total PDF ConverterX está funcionando muito bem. Essa foi uma correção muito necessária quando um dos produtos do seu concorrente travava quando executado a partir de um serviço do Windows. Sua cooperação e resposta rápida foram um verdadeiro salva-vidas ao nos permitir cumprir os prazos dos nossos clientes."
Michael J. Balmer, Engenheiro de Integração Líder
www.QuestDiagnostics.com
Atualizado Thu, 16 May 2024
(apenas $550.00)
|
|
|