PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 25 → Windev Mobile - Ler Pdf direto no Android
Windev Mobile - Ler Pdf direto no Android
Débuté par amarildo, 07 sep. 2015 10:18 - 3 réponses
Membre enregistré
535 messages
Popularité : +14 (14 votes)
Posté le 07 septembre 2015 - 10:18
http://windevdesenvolvimento.blogspot.com.br/2015/09/windev-mobile-29-pdf-ler-pdf-direto-do.html

No Blog , explico passo a passo como fiz para achar a solucao para ler um pdf, direto
no aparelho do android.
Posso usar simplesmente Shellexecute("Arquivo Pdf ")
ou
fazer como esse exemplo . que abre o pdf direto no aparelho.

http://repository.windev.com/resource.awp…
Nesse link é onde encontrei a solucao

1. Botao Ler Pdf

strMonpdf est une chaîne ="http://www.matosinformatica.com.br/DownloadAtualiza%C3%A7%C3%B5es/listaserv.pdf"
mostra_pdf("HTML1",strMonpdf)


2. Procedure Mostra_pdf

Procedure mostra_pdf(s_nome_html is string,sNome_pdf is string)
modeSVG is boolean=True
fDelete(CompleteDir(fRepExe())+"TMPPDF_*.pdf") //fSupprime(ComplèteRep(fRepExe())+"TMPPDF_*.pdf")
nomfic is string="TMPPDF_"+DateSys()+HeureSys()+sNome_pdf+".pdf"
tmpPDf is string=CompleteDir(fRepExe())+""+nomfic // est une chaîne
SI EnModeAndroid() ET PAS EnModeTest ALORS
//est-ce que les ressources de gestion pdf sont bien présentes ?
SI PAS fFichierExiste(ComplèteRep(fRepExe())+"viewersvg.html") OU PAS fFichierExiste(ComplèteRep(fRepExe())+"viewersvg.js") ALORS
fExtraitRessource("WD_pdfjs2.zip",fRepExe())
SI fFichierExiste(ComplèteRep(fRepExe())+"WD_pdfjs2.zip") ALORS
//decompactage de la ressource
myarch est un entier=zipOuvre("archpdf",ComplèteRep(fRepExe())+"WD_pdfjs2.zip")
SI myarch=0 ALORS
zipExtraitTout("archpdf",ComplèteRep(fRepExe()))
zipFerme("archpdf")
FIN
FIN
FIN
SI PAS fFichierExiste(ComplèteRep(fRepExe())+"viewersvg.html") OU PAS fFichierExiste(ComplèteRep(fRepExe())+"viewersvg.js") ALORS
//aucun display possible, les ressources sont absentes.
//retour
FIN
activerjavascript(s_nome_html)
FIN
SI Gauche(sNome_pdf,4)="http" ALORS
//1 recuperer le fichier en local avant ouverture
SI HTTPRequête(sNome_pdf) ALORS
fSauveTexte(tmpPDf,HTTPDonneRésultat(httpRésultat))
FIN
SINON
fCopieFichier(sNome_pdf,tmpPDf)
FIN

bLocalDebug est un booléen=Vrai
SI EnModeTest() ALORS
//{nomchamp,indchamp}=strMonpdf
//test avec localhost
//si localDebug alors
//fCopieFichier(ComplèteRep(fRepExe())+"web\viewersvg.html","c:\wamp\www\pdfjstest\web\viewersvg.html")
//fCopieFichier(ComplèteRep(fRepExe())+"web\viewersvg.js","c:\wamp\www\pdfjstest\web\viewersvg.js")
//nomfic est une chaine="test.pdf"+datesys+heuresys
//
//fCopieFichier(tmpPDf,"c:\wamp\www\pdfjstest\web\"+nomfic)
//
//testurl est une chaine="http://localhost/pdfjstest/"+"web/viewersvg.html?url="+"./"+nomfic+"&ti="+datesys+heuresys
// //{nomchamp,indChamp}=testurl
// LanceAppliAssociée(testurl)
{s_nome_html,indChamp}=sNome_pdf
SINON

myurl est une chaîne
SI modeSVG ALORS
myurl="file://"+ComplèteRep(fRepExe)+"viewersvg.html?url="+"./"+nomfic+"&ti="+DateSys+HeureSys
SINON
myurl="file://"+ComplèteRep(fRepExe)+"viewer.html?url="+"./"+nomfic+"&ti="+DateSys+HeureSys
FIN

{s_nome_html,indChamp}=myurl
FIN


3. Comandos Java
import android.webkit.WebView;
PUBLIC static void activerjavascript(string nomchamp)
{
WebView mywebview=(WebView) getView(nomchamp);
mywebview.getSettings().setJavaScriptEnabled(True);
}
Membre enregistré
535 messages
Popularité : +14 (14 votes)
Posté le 07 septembre 2015 - 10:20
Abaixo o Video

Membre enregistré
535 messages
Popularité : +14 (14 votes)
Posté le 07 septembre 2015 - 11:47
http://windevdesenvolvimento.blogspot.com.br/2015/09/windev-mobile-30-pdf-ler-pdf-direto-do.html

Nessa aula continuanando sobre pdf, faltou eu acrescentar um arquivo zip que veio
junto com o exemplo



//Click BTn_LerPdf
strMonpdf est une chaîne ="http://www.amarildomatos.com.br/clientes_arquivos/Contrato.pdf"
mostra_pdf("HTML1",strMonpdf,intModeSVG)
//aqui foi acrescentado

Procedure mostra_pdf(s_nome_html is string,sNome_pdf is string,modeSVG=Vrai)
// recoloquei aqui
Membre enregistré
3 657 messages
Popularité : +175 (223 votes)
Posté le 10 septembre 2015 - 08:30
:merci:

--
Adriano Jose Boller
______________________________________________
Consultor e Representante Oficial da
PcSoft no Brasil
+55 (41) 9949 1800
adrianoboller@gmail.com
______________________________________________