Pdfviewer"

From Documentation
m ((via JWB))
m ((via JWB))
Line 11: Line 11:
 
=Employment/Purpose=
 
=Employment/Purpose=
  
The <tt>Pdfviewer</tt> component is based on Mozilla’s great work -- [https://github.com/mozilla/pdf.js PDF.js], that renders PDF documents in a browser.
+
The <code>Pdfviewer</code> component is based on Mozilla’s great work -- [https://github.com/mozilla/pdf.js PDF.js], that renders PDF documents in a browser.
  
 
=Example=
 
=Example=
Line 57: Line 57:
  
 
=Enable Fullscreen=
 
=Enable Fullscreen=
Due to a specification limitation, this method must be called while responding to a user interaction (i.g. event handlers). Therefore the component only provides a client-side method <tt>toggleFullscreen()</tt> to enable the full screen mode.
+
Due to a specification limitation, this method must be called while responding to a user interaction (i.g. event handlers). Therefore the component only provides a client-side method <code>toggleFullscreen()</code> to enable the full screen mode.
  
 
<source lang="xml" >
 
<source lang="xml" >
Line 70: Line 70:
 
! <center>Event Type</center>
 
! <center>Event Type</center>
 
|-
 
|-
| <center><tt>onPaging</tt></center>
+
| <center><code>onPaging</code></center>
 
| '''Event:''' <javadoc>org.zkoss.zul.event.PagingEvent</javadoc>
 
| '''Event:''' <javadoc>org.zkoss.zul.event.PagingEvent</javadoc>
 
Notifies one of the pages is selected by the user.
 
Notifies one of the pages is selected by the user.
 
|-
 
|-
| <center><tt>onRender</tt></center>
+
| <center><code>onRender</code></center>
 
| '''Event:''' <javadoc>org.zkoss.zk.ui.event.Event</javadoc>
 
| '''Event:''' <javadoc>org.zkoss.zk.ui.event.Event</javadoc>
 
Denotes the loading pdf file is finished rendering.
 
Denotes the loading pdf file is finished rendering.
 
|-
 
|-
| <center><tt>onZoom</tt></center>
+
| <center><code>onZoom</code></center>
 
| '''Event:''' <javadoc>org.zkoss.zkex.ui.event.ZoomEvent</javadoc>
 
| '''Event:''' <javadoc>org.zkoss.zkex.ui.event.ZoomEvent</javadoc>
 
Denotes user has changed the zoom level.
 
Denotes user has changed the zoom level.
 
|-
 
|-
| <center><tt>onRotate</tt></center>
+
| <center><code>onRotate</code></center>
 
| '''Event:''' <javadoc>org.zkoss.zkex.ui.event.RotationEvent</javadoc>
 
| '''Event:''' <javadoc>org.zkoss.zkex.ui.event.RotationEvent</javadoc>
 
Denotes user has changed the rotation angle.
 
Denotes user has changed the rotation angle.

Revision as of 14:08, 12 January 2022

Pdfviewer

  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion pe-ee.png

Since 9.0.0

Employment/Purpose

The Pdfviewer component is based on Mozilla’s great work -- PDF.js, that renders PDF documents in a browser.

Example

ZK-pdfviewer-example.png

<pdfviewer src="/pdf/sample.pdf" />

Supported Browsers

It is compatible with HTML5-supported browsers, like IE 11, Edge, Firefox, Opera, Chrome and Safari.

Customize the Toolbar

Pdfviewer accepts only one child: <toolbar>. You can customize the toolbar by adding your own toolbar. By default, the position of the toolbar is at the top. You can use CSS to do more tweaks.

<pdfviewer id="pv2">
  <toolbar>
    <toolbarbutton iconSclass="z-icon-fw z-icon-fast-backward"
                   onClick="pv2.firstPage()"/>
    <toolbarbutton iconSclass="z-icon-fw z-icon-chevron-left"
                   onClick="pv2.previousPage()"/>
    <toolbarbutton iconSclass="z-icon-fw z-icon-chevron-right"
                   onClick="pv2.nextPage()"/>
    <toolbarbutton iconSclass="z-icon-fw z-icon-fast-forward"
                   onClick="pv2.lastPage()"/>
  </toolbar>
</pdfviewer>

Zoom to Fit Page Width / Fit Page Height

Since 9.6.0

You can call setZoom("fit-page-width") or setZoom("fit-page-height") now.

Or just specify it as an initial zoom level:

<pdfviewer id="pv" src="/pdf/sample.pdf" zoom="fit-page-width" />

Cross-Origin Resource Sharing (CORS)

If you want to load a remote PDF document, please make sure the response headers contain the necessary CORS headers or it won’t be allowed to be loaded.

Enable Fullscreen

Due to a specification limitation, this method must be called while responding to a user interaction (i.g. event handlers). Therefore the component only provides a client-side method toggleFullscreen() to enable the full screen mode.

<pdfviewer id="pv" src="/pdf/sample.pdf" />
<button xmlns:w="client" w:onClick="zk.$('$pv').toggleFullscreen()" />

Supported Events

Name
Event Type
onPaging
Event: PagingEvent

Notifies one of the pages is selected by the user.

onRender
Event: Event

Denotes the loading pdf file is finished rendering.

onZoom
Event: ZoomEvent

Denotes user has changed the zoom level.

onRotate
Event: RotationEvent

Denotes user has changed the rotation angle.

Supported Children

*Toolbar

Use Cases

Version Description Example Location
     

Version History

Last Update : 2022/01/12


Version Date Content
9.0.0 October 2019 ZK-4395: Provide a pdfviewer component
9.6.0 June 2021 ZK-4917: set zoom level with fit-page-width or fit-page-height in Java



Last Update : 2022/01/12

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.