react-pdf-js 的使用

A React component to wrap PDF.js

Install

yarn add react-pdf-jsornpm install react-pdf-js

Demo

http://mikecousins.github.io/react-pdf-js/
在此 demo 中可實現(xiàn)翻頁的功能
實現(xiàn)的代碼如下 :

import React from 'react';
import PDF from 'react-pdf-js';

class MyPdfViewer extends React.Component {
  state = {};

  onDocumentComplete = (pages) => {
    this.setState({ page: 1, pages });
  }

  handlePrevious = () => {
    this.setState({ page: this.state.page - 1 });
  }

  handleNext = () => {
    this.setState({ page: this.state.page + 1 });
  }

  renderPagination = (page, pages) => {
    let previousButton = <li className="previous" onClick={this.handlePrevious}><a href="#"><i className="fa fa-arrow-left"></i> Previous</a></li>;
    if (page === 1) {
      previousButton = <li className="previous disabled"><a href="#"><i className="fa fa-arrow-left"></i> Previous</a></li>;
    }
    let nextButton = <li className="next" onClick={this.handleNext}><a href="#">Next <i className="fa fa-arrow-right"></i></a></li>;
    if (page === pages) {
      nextButton = <li className="next disabled"><a href="#">Next <i className="fa fa-arrow-right"></i></a></li>;
    }
    return (
      <nav>
        <ul className="pager">
          {previousButton}
          {nextButton}
        </ul>
      </nav>
      );
  }

  render() {
    let pagination = null;
    if (this.state.pages) {
      pagination = this.renderPagination(this.state.page, this.state.pages);
    }
    return (
      <div>
        <PDF
          file="test.pdf"
          onDocumentComplete={this.onDocumentComplete}
          page={this.state.page}
        />
        {pagination}
      </div>
    )
  }
}

export default MyPdfViewer;

example

github react-pdf-js

import React from 'react';
import PDF from 'react-pdf-js';

class Demo extends React.Component {
      render() {
    return (
      <div>
        <PDF
          file="http://.../xxx.pdf"
        />
      </div>
    )
  }
}

export default Demo;

note

使用 react-pdf-js 實現(xiàn)pdf 的展示阀溶,使用的 canvas 不隨可視窗口的大小變化而變化妓羊,可使用 width 設(shè)置寬度芯丧。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蝴簇,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蜂绎,老刑警劉巖栅表,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異师枣,居然都是意外死亡怪瓶,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進(jìn)店門践美,熙熙樓的掌柜王于貴愁眉苦臉地迎上來洗贰,“玉大人,你說我怎么就攤上這事陨倡×沧蹋” “怎么了?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵兴革,是天一觀的道長绎晃。 經(jīng)常有香客問我,道長杂曲,這世上最難降的妖魔是什么庶艾? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮解阅,結(jié)果婚禮上落竹,老公的妹妹穿的比我還像新娘。我一直安慰自己货抄,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布朱转。 她就那樣靜靜地躺著蟹地,像睡著了一般。 火紅的嫁衣襯著肌膚如雪藤为。 梳的紋絲不亂的頭發(fā)上怪与,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天,我揣著相機(jī)與錄音缅疟,去河邊找鬼分别。 笑死,一個胖子當(dāng)著我的面吹牛存淫,可吹牛的內(nèi)容都是我干的耘斩。 我是一名探鬼主播,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼桅咆,長吁一口氣:“原來是場噩夢啊……” “哼括授!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤荚虚,失蹤者是張志新(化名)和其女友劉穎薛夜,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體版述,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡梯澜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了渴析。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片晚伙。...
    茶點故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖檬某,靈堂內(nèi)的尸體忽然破棺而出撬腾,到底是詐尸還是另有隱情,我是刑警寧澤恢恼,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布民傻,位于F島的核電站,受9級特大地震影響场斑,放射性物質(zhì)發(fā)生泄漏漓踢。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一漏隐、第九天 我趴在偏房一處隱蔽的房頂上張望喧半。 院中可真熱鬧,春花似錦青责、人聲如沸挺据。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽扁耐。三九已至,卻和暖如春产阱,著一層夾襖步出監(jiān)牢的瞬間婉称,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工构蹬, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留王暗,地道東北人。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓庄敛,卻偏偏與公主長得像俗壹,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子铐姚,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內(nèi)容

  • 1策肝、通過CocoaPods安裝項目名稱項目信息 AFNetworking網(wǎng)絡(luò)請求組件 FMDB本地數(shù)據(jù)庫組件 SD...
    陽明先生_x閱讀 15,968評論 3 119
  • 今日體驗:提前為了客戶考慮肛捍,首先解決客戶問題,更好的服務(wù)為客戶建立維修項目之众,更好的服務(wù)
    京心達(dá)奧迪組王剛閱讀 113評論 0 0
  • |一周練習(xí)回顧 不知不覺拙毫,刻意訓(xùn)練營又推進(jìn)了一周,這周主要練習(xí)的是背誦棺禾。坦率地講缀蹄,本周練習(xí)的有些心不在焉”焐簦客觀原因...
    老王大胡子閱讀 144評論 0 0
  • 其實不應(yīng)感嘆時光的流逝缺前,時間本應(yīng)被重新定義,因為日月變換悬襟,因為孩子的成長所以覺得日子在向前流逝衅码,只有集中了精力方可...
    易元熙閱讀 86評論 0 0
  • 這是個特別的數(shù)字,里面有彩色的青蔥歲月脊岳,宛如生命里的陽光逝段,它穿透了整個黑暗的世界,劃過一群流星雨割捅,...
    擺渡嬌娘閱讀 642評論 0 0