HTML para PDF
09/10/2009
0
Alguem conhece alguma DLL ou algum EXE que pegue um arquivo HTML e converta para PDF.
Se possivel alguma DLL que receba um string com um endereço do arquivo HTML e gere um arquivo PDF.
Se não for pedir demais, hehehe, que seja FREE.
Muito obrigado.
MDV
Marcos Dias Vendramini
marcosvendramini.webng.com
Mdv
Posts
09/10/2009
Facc
Uma, que uso, é a PDFCreator.
09/10/2009
Mdv
Por esse motivo eu precisaria de uma DLL ou de um EXE que eu possa chamar para que o mesmo converta.
09/10/2009
Steve_narancic
ShellExecute(handle, ´print´, ´c:\teste.htm´, nil, nil, SW_SHOWNORMAL);
09/10/2009
Steve_narancic
ShellExecute(handle, ´print´, ´c:\teste.htm´, nil, nil, SW_SHOWNORMAL);
Viajei, não me liguei que vc queria converter em pdf....
02/09/2021
Wellington Verzola
Alguem conhece alguma DLL ou algum EXE que pegue um arquivo HTML e converta para PDF.
Se possivel alguma DLL que receba um string com um endereço do arquivo HTML e gere um arquivo PDF.
Se não for pedir demais, hehehe, que seja FREE.
Muito obrigado.
MDV
Marcos Dias Vendramini
marcosvendramini.webng.com
Use isso.
class function FactureUtils.ShellExecuteAndWait(const Operacao, NomeArquivo, Parametros, Diretorio: string; TipoExibicao: Word; Aguardar: Boolean; Landscape: Boolean): Longint; const MSG_CONVERSOR = 'Não foi possível converter o arquivo para PDF pois o conversor ''wkhtmltopdf.exe'' não foi encontrado na pasta do sistema.'; var OperacaoFoiExecutada: Boolean; Info: TShellExecuteInfo; parametrosTemp: string; begin if not FileExists(NomeArquivo) then raise Exception.Create(MSG_CONVERSOR); FillChar(Info, SizeOf(Info), Chr(0)); Info.cbSize := SizeOf(Info); Info.fMask := SEE_MASK_NOCLOSEPROCESS; Info.lpVerb := PChar(Operacao); Info.lpFile := PChar(NomeArquivo); if Landscape then parametrosTemp := ' -O landscape ' + Parametros else parametrosTemp := Parametros; Info.lpParameters := PChar(parametrosTemp); Info.lpDirectory := PChar(Diretorio); Info.nShow := TipoExibicao; OperacaoFoiExecutada := Boolean(ShellExecuteEx(@Info)); if OperacaoFoiExecutada then begin if Aguardar then begin while WaitForSingleObject(Info.hProcess, 100) = WAIT_TIMEOUT do Application.ProcessMessages; OperacaoFoiExecutada := GetExitCodeProcess(Info.hProcess, DWORD(Result)); end else begin Result := 0; end; end; if not OperacaoFoiExecutada then begin Result := -1; raise Exception.Create(MSG_CONVERSOR); end; end;
E use esse executável - wkhtmltopdf.exe
você acha ele aqui.
https://wkhtmltopdf.org/downloads.html
Clique aqui para fazer login e interagir na Comunidade :)