2015-01-20 5 views
0

수정 문제가 있습니다.TideSDK로 PDF 파일 저장

저는 오프라인 데스크톱 응용 프로그램이 있습니다. 여기서는 pdf 파일을 생성하고 공개 할 때 저장해야합니다.

PDF 파일을 생성하려면 BytescoutPDF librarycreatepdf.js을 사용하십시오.

이렇게하면 저장해야하는 문서 변수가 반환됩니다. 내가 함께 노력 :

//this calls the createPDF to BytescoutPDF library 
//and returns the variable into 'doc' 
var doc = generaStaticPartBolla_2(); 

    //take the stream 
    var bolla = Ti.Filesystem.getFileStream(billPath); 

    //open in write mode 
    bolla.open(Ti.Filesystem.MODE_WRITE); 

    //write the doc file decodified in Base 64 
    bolla.write(doc.getBase64Text()); 

    //close the stream 
    bolla.close(); 

이제 생성 된 파일이 currupted된다. 이것을 열 수 없습니다. 어떻게해야합니까? 파일을 Base 64 또는 다른 형식으로 변환해야합니까?

답변

2

당신이 지금 당신의 문제를 해결했는지 모르겠지만, 오프라인 응용 프로그램, HTML에서 pdf 생성, 제 경우에는 CSS로 생성 된 PDF의 스타일 지정과 같은 요구 사항이 있습니다. 많은 솔루션을 시도한 후 주요 문제는 CSS로 스타일을 지정하는 것이 었습니다. 마지막으로 WkhtmlToPdf (http://wkhtmltopdf.org/)를 사용했습니다. 기본적으로 응용 프로그램에 바이너리 (Mac OS 및 Windows 용)를 포함시키고 플랫폼에 관해서는 Ti.Process 메서드로 실행합니다. WkhtmlToPdf는 지정된 경로에 pdf를 생성하므로이 방법으로이 pdf를 열 수 있습니다. (pdf의 경로를 설정하려면 사용자가 생성 된 pdf의 경로와 이름을 설정할 수있는 openSaveAsDialog (http://tidesdk.multipart.net/docs/user-dev/generated/#!/api/Ti.UI.UserWindow-method-openFileChooserDialog)를 사용합니다.