자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
Firemonkey Firemonkey의 Webbrowser에서 로컬 Pdf 파일 읽기
2018.06.22 10:41
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
안드로이드 갤탭 10.1에서 사용할 앱입니다.
Ftp로 Pdf파일을 다운로드하여 Firemonkey의 Webbrowser에서 보여주기 위한 소스를 아래와 같이 작성하였습니다.
어디가 문제인지 화면에 PDF파일이 보이지 않습니다. 도움 부탁드립니다.
procedure TForm1.Button1Click(Sender: TObject);
var
Data : TMemoryStream;
begin
idFtp.Host := '210.218.83.98';
idFtp.Username := 'anonymous';
IdFtp.Username := 'swsupporter1032';
IdFtp.Password := 'swsupporter2301';
IdFtp.NATKeepAlive.UseKeepAlive := True;
IdFtp.NATKeepAlive.IdleTimeMS := 1000;
IdFtp.NATKeepAlive.IntervalMS := 1000;
Idftp.Port := 8398;
IdFtp.TransferType := ftBinary;
Idftp.Connect;
Data := TMemoryStream.Create;
IdFtp.Get('test1.pdf',Data,True);
Data.Position := 0;
Data.SaveToFile(TPath.GetSharedDownloadsPath()+System.Sysutils.PathDelim+'test1.pdf');
WebBrowser1.Navigate('file:/'+TPath.GetSharedDownloadsPath()+System.Sysutils.PathDelim+'test1.pdf');
FreeAndNil(Data);
end;
FMX Webbrowser 가이드에 보면 로컬 파일을 보여주기 위해서는 'file://'을 붙여서 Navigate를 실행하라고 안내되어 있는데 시킨대로 해도 되지 않으니 답답합니다. TPath.GetSharedDownloadsPath함수를 써서 저장하니 /Storage/emulated/0/Download폴더에 저장된다고 함. 기기상에서 보면 << 내장메모리/Download >>폴더에 저장되어 있음
도와주세요..
Firemonkey Firemonkey의 Webbrowser에서 로컬 Pdf 파일 읽기
2018.06.22 10:41
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
안드로이드 갤탭 10.1에서 사용할 앱입니다.
Ftp로 Pdf파일을 다운로드하여 Firemonkey의 Webbrowser에서 보여주기 위한 소스를 아래와 같이 작성하였습니다.
어디가 문제인지 화면에 PDF파일이 보이지 않습니다. 도움 부탁드립니다.
procedure TForm1.Button1Click(Sender: TObject);
var
Data : TMemoryStream;
begin
idFtp.Host := '210.218.83.98';
idFtp.Username := 'anonymous';
IdFtp.Username := 'swsupporter1032';
IdFtp.Password := 'swsupporter2301';
IdFtp.NATKeepAlive.UseKeepAlive := True;
IdFtp.NATKeepAlive.IdleTimeMS := 1000;
IdFtp.NATKeepAlive.IntervalMS := 1000;
Idftp.Port := 8398;
IdFtp.TransferType := ftBinary;
Idftp.Connect;
Data := TMemoryStream.Create;
IdFtp.Get('test1.pdf',Data,True);
Data.Position := 0;
Data.SaveToFile(TPath.GetSharedDownloadsPath()+System.Sysutils.PathDelim+'test1.pdf');
WebBrowser1.Navigate('file:/'+TPath.GetSharedDownloadsPath()+System.Sysutils.PathDelim+'test1.pdf');
FreeAndNil(Data);
end;
FMX Webbrowser 가이드에 보면 로컬 파일을 보여주기 위해서는 'file://'을 붙여서 Navigate를 실행하라고 안내되어 있는데 시킨대로 해도 되지 않으니 답답합니다. TPath.GetSharedDownloadsPath함수를 써서 저장하니 /Storage/emulated/0/Download폴더에 저장된다고 함. 기기상에서 보면 << 내장메모리/Download >>폴더에 저장되어 있음
도와주세요..
filename := TPath.Combine(TPath.GetDocumentsPath, 'file.pdf');
WebBrowser1.Navigate('file://' + filename);
위의 방식은 일반적으로 도큐먼트 폳아니 경우이고..
fileName := TPath.GetSharedDownloadsPath + PathDelim + 'test.pdf';
위의 코드는 다운로드 폴더인 경우 맞습니다.
다운로드시 폴더를 도튜먼트로 지정하여 한 번 테스트 해보시기 바랍니다.
다른 방법도 참조해 보시기 바랍니다.
http://www.delphipages.com/forum/showthread.php?t=119665