我使用的是react-native-pdf-view庫,我無法用pdf填充PDFView。react-native-pdf-view - 如何使用base64或blob填充pdfView
我的項目是如何工作的,是我收到一個base64 PDF從服務器,我然後使用該庫react-native-fs像這樣保存到Android的文件系統:
(這工作正常)
saveFile(filename){
var base64Image = this.state.imageBase64;
// create a path you want to write to
var path = RNFS.DocumentDirectoryPath + '/' + filename;
// write the file
RNFS.writeFile(path, base64Image, 'base64').then((success) => {
console.log('FILE WRITTEN!');
this.setState(
{pdf_dirPath: path}
);
this._display_fileAttachment()
})
.catch((err) => {
console.log(err.message);
});
}
我然後嘗試填充此PDF查看:
<PDFView
ref={(pdf)=>{this.pdfView = pdf;}}
src={"path/To/base64/pdf"}
style={styles.pdf}
/>
問題
react-native-pdf-view是否必須採用文件位置,還是可以採用base64 pdf或blob。
如果它可以採用base64或blob請解釋或提供示例代碼如何做到這一點。
感謝
注:This StackOverflow question是非常相似,但我需要知道如何以何種形式保存或檢索從文件系統,以及如何填充PDF以base64。
看作爲[源代碼(HTTPS:// github上。com/cnjon/react-native-pdf-view/blob/master/RNPDFView/RNPDFView.m#L56),它似乎不接受base64,您將不得不提供一個路徑。爲了解決這個問題,我會''console.log''path/to/pdf'來確認它已經保存並且是一個很好的PDF。 –
@凱爾芬利感謝您指出。問題似乎是保存文件。看看這篇文章的更多細節。 http://stackoverflow.com/questions/38662309/how-to-save-pdf-to-android-file-system-react-native謝謝。 – Larney