Comments (6)
Loading a PDF from react-pdf worked this way, could anyone help me out with this?
I'm getting a
PDFDocument: stream must have data
error whenever I try to load my PDF's<PDF file={`data:application/pdf;base64,${this.state.base64}`} onDocumentComplete={this.onDocumentComplete} onPageComplete={this.onPageComplete} page={this.state.page} />
Basically, react-pdf-js
supports base 64 string. Different from react-pdf
, it is not required to separate the data type data:application/pdf;base64
from the date string in this library. Here is an example, and it works to me.
// data.js
const pdf = `data:application/pdf;base64,JVBERi0xLjYNJeLjz9MNCjEyNCAw...`
export const getData = () => JSON.stringify(pdf)
// PdfViewer.jsx
import * as Data from '../data/pdf'
export default class PdfViewer extends React.Component {
...
render() {
return (
<div>
<PDF
file={JSON.parse(Data.getData())}
onDocumentComplete={this.onDocumentComplete}
page={this.state.page}
/>
{pagination}
</div>
)
}
}
from react-pdf-js.
Any Updates on the mentioned issue?
from react-pdf-js.
Any update on this?
I am facing this issue.
from react-pdf-js.
Another solution would be to turn the base64 string into a blob, then attach the blob to window.URL.createObjectURL
, which in turn can be passed to the file prop:
const raw = window.atob(base64);
const rawLength = raw.length;
const blobArray = new Uint8Array(new ArrayBuffer(rawLength));
for (let i = 0; i < rawLength; i++) {
blobArray[i] = raw.charCodeAt(i);
}
const blob = new Blob([blobArray], {type: 'application/pdf'});
Then
window.URL.createObjectURL(blob)
from react-pdf-js.
Seems like this one might be working? Let me know if it's not.
from react-pdf-js.
this approach is not working in iphone safari
from react-pdf-js.
Related Issues (20)
- Add possibility to load all document pages HOT 1
- Can we use it in class based components? HOT 1
- Render whole pdf file vertically and navigate between pages with scroll HOT 3
- Android browsers are not supported HOT 1
- Pdfjs-dist 'unexpected token' error with Jest HOT 5
- Can you re-build a new version to npm ? we need those last commit in , still can't us it HOT 10
- can not preview local file HOT 1
- Error when installing version 6.1.1 HOT 11
- There seems to be no page zooming function. HOT 1
- https://pdf.netlify.com HOT 1
- npm run start Error, when i use Umijs HOT 1
- Responsive Problem HOT 1
- When using Yarn installation, an error will be reported HOT 2
- Can we have download button HOT 2
- output of the PDF after rendering HOT 1
- SetScale is not working if we set the initial values to the scale HOT 1
- can we display multiple pages in once instead of put next previous page button HOT 2
- PDF Worker used CDN URL HOT 1
- When an error occurs in the url request provided, the page will report an error directly.
- Error rendering page with NextJS (14.0.3, 14.0.4 and 14.1.0) HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from react-pdf-js.