New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

react-read-pdf2

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-read-pdf2

a mobile-friendly PDF Reader in browser for React

latest
Source
npmnpm
Version
2.0.9-beta
Version published
Maintainers
1
Created
Source

React-read-pdf

Chinese Document

a mobile-friendly PDF Reader in browser for React 16.x

Features

  • Simple: It is very easy to use
  • Mobile-friendly: Support all mobile terminal devices including mobile,pad and others

Browser Support

  • IE 10+
  • Firefox 3.6+
  • Chrome 6+
  • Safari 6+
  • Opera 11.5+
  • iOS Safari 6.1+
  • Android Browser 3+

Quick Start

1. Import react-read-pdf into your react.js project.

(You should import react firt,The version of react must be more than 16.x)

Using build tools:

npm install --save react-read-pdf

Using PDFReader in PC:

import React from 'react';
import { PDFReader } from 'react-read-pdf';

Using MobilePDFReader in mobile terminal devices:

import React from 'react';
import { MobilePDFReader } from 'react-read-pdf';

2. Now you have it. The simplest usage:

import { MobilePDFReader } from 'react-read-pdf';
export default class Test extends Component{
  render(){
    return <div style={{overflow:'scroll',height:600}}>
            <MobilePDFReader url="http://localhost:3000/test.pdf"/>
           </div>
  }
}
import ReactDOM from 'react-dom';
import Test from './test'
ReactDOM.render(<Test />, document.getElementById('root'));

It supports all mobile terminal devices including mobile,pad and others,the next image is a lively example in iphoneX

Documentation

react-read-pdf mainly consists of two different components. PDFReader and MobilePDFReader.

🌱 PDFReader

import { PDFReader } from 'react-read-pdf'

...
<PDFReader url={"http://localhost:3000/test.pdf"} ...>

Props in PDFReader Component

Props nameTypeDescription
urlstring | objectif url is a string, it represents absolute address or relative address of PDF files. if url is a object, you can see this url object type for details
datastringbinary-like data of PDF.For example,in javascript, you can use the method "atob" to convert base64 encoded PDF to binary-like data.
pagenumberdefault value is 1 ,decides that which page to show in PDF file.
scalenumberdecides the viewport in render
widthnumberdecides the width of viewport
showAllPagebooleandefault value is false , if it is true , it will render all pages of the pdf file. if it is false ,it will only show the "currentPage" according to the page props's value.
onDocumentCompletefunctionafter load the PDF file, in this function ,you can get some informations of the PDF file you can see this function type for details

url the url property of PDFReader

Type:

  • string : it represents absolute address or relative address of PDF files
  • object :

Properties:

Property NametypeDescription
urlstringit represents absolute address or relative address of PDF files
withCredentialsbooleanis allow requests to carry cookie or not

onDocumentComplete the onDocumentComplete property of PDFReader

Type:

  • function(totalPage)

onDocumentComplete's type is a function, the fisrt default parameter is totalPage of the PDF file

Notes

The url of props can be string or object.

The following two ways are the same.

One is :

 <MobilePDFReader url="http://localhost:3000/test.pdf"/>

the other is :

 <MobilePDFReader url={url:"http://localhost:3000/test.pdf"}/>

🌱 MobilePDFReader

import { MobilePDFReader } from 'react-read-pdf'

...
<MobilePDFReader url={"http://localhost:3000/test.pdf"} ...>

Props in MobilePDFReader Component

Props nameTypeDescription
urlstring | objectit represents absolute address or relative address of PDF files.
pagenumberdefault value is 1 ,decides that which page to show in PDF file.
scale'auto' | numberdefaut value is 'auto', react-react-pdf use pdfjs-viewer,so if the scale is 'auto' , it can Adaptive mobile device .This property decides the viewport in render
minScalenumberdefaut value is 0.25, decides the minimum value of scale
maxScalenumberdefaut value is 10, decides the max value of scale
isShowHeaderbooleandefaut value is true, in order to show lively example.'react-react-pdf' added default style to special header, you can remove this style ,if you change this value to false
isShowFooterbooleandefaut value is true, in order to show lively example.'react-react-pdf' added default style to special footer, you can remove this style ,if you change this value to false
onDocumentCompletefunctionafter load the PDF file, in this function ,you can get some informations of the PDF file you can see this function type for details

onDocumentComplete the onDocumentComplete property of MobilePDFReader

Type:

  • function(totalPage,title,otherObj)

Properties:

Property NametypeDescription
totalPagenumberthe totalPage of the PDF file
titletitlethe title of the PDF file
otherObjobjectother coding information of the PDF file

Notes

I strongly recommend you to set initial value of scale is 'auto',the default is 'auto' too

Development

Installation

  • Clone/download repo
  • yarn install (or npm install for npm)

Usage

Development

yarn run start-dev

  • Build app continuously (HMR enabled)
  • App served @ http://localhost:8080

Production

yarn run start-prod

  • Build app once (HMR disabled)
  • App served @ http://localhost:3000

All commands

CommandDescription
yarn run start-devBuild app continuously (HMR enabled) and serve @ http://localhost:8080
yarn run start-prodBuild app once (HMR disabled) and serve @ http://localhost:3000
yarn run buildBuild app to /dist/
yarn run testRun tests
yarn run lintRun Typescript and SASS linter
yarn run lint:tsRun Typescript linter
yarn run lint:sassRun SASS linter
yarn run start(alias of yarn run start-dev)

Note: replace yarn with npm if you use npm.

License

MIT License

Keywords

react

FAQs

Package last updated on 31 Dec 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts