Skip to main content

Examples

PDFViewer Documentation Showcase.
Each sample project can be used as a singe project

For more information about this examples see the Documentation and the API Reference.

NameDescription
PDF Viewer - SimpleSimple example for PDF viewerDownload
PDF Viewer - Dynamic control loadingDynamic load of Nubexx or SAP PDFViewerDownload
PDF Viewer - WatermarkPDFViewer with watermark overlayDownload

Simple usage

<mvc:View
controllerName="com.nbx.PDFViewer.Example.Simple.Page"
xmlns:mvc="sap.ui.core.mvc"
xmlns="sap.m"
xmlns:nbx.PDFViewer="com.nbx.pdfviewer"
height="100%">

<FlexBox direction="Column" class="sapUiSmallMargin" height="100%">
<FlexBox>
<OverflowToolbar>
<Button text="Valid PDF file" press="onCorrectPathClick" />
<Button text="Invalid PDF file" press="onIncorrectPathClick" />
<Button text="Toggle Print-Button" press="onTogglePrintButton" />
<Button text="Toggle Download-Button" press="onToggleDownloadButton" />
</OverflowToolbar>
</FlexBox>

<nbx.PDFViewer:PDFViewer id="idPDFViewer" source="{/Source}" title="{/Title}" height="{/Height}">
<nbx.PDFViewer:pdfViewerOptions>
<nbx.PDFViewer:Option name="allowOverrideProtectedApiSettings" value="true" />
<nbx.PDFViewer:Option name="toolbarShowSignedFlag" value="true" />
<nbx.PDFViewer:Option name="askForFileNameOnDownload" value="true" />
</nbx.PDFViewer:pdfViewerOptions>

<nbx.PDFViewer:layoutData>
<FlexItemData growFactor="1" />
</nbx.PDFViewer:layoutData>
</nbx.PDFViewer:PDFViewer>
</FlexBox>

</mvc:View>

Dynamic control loading

<mvc:View
controllerName="com.nbx.PDFViewer.Example.Dynamic.Page"
xmlns:mvc="sap.ui.core.mvc"
xmlns="sap.m"
height="100%">

<FlexBox direction="Column" class="sapUiSmallMargin" height="100%">
<FlexBox>
<SegmentedButton id="idSegmentedButton" class="sapUiSmallMarginBottom"
selectionChange="onSegmentedButtonSelectionChange">
<items>
<SegmentedButtonItem text="Nubexx PDFViewer" key="nbx" />
<SegmentedButtonItem text="SAP PDFViewer" key="sap" />
</items>
</SegmentedButton>
</FlexBox>
<PDFViewer id="idPDFViewer" source="{/Source}" isTrustedSource="true" title="{/Title}">
<layoutData>
<FlexItemData growFactor="1" />
</layoutData>
</PDFViewer>
</FlexBox>
</mvc:View>

Watermark

<mvc:View
controllerName="com.nbx.PDFViewer.Example.Watermark.Page"
xmlns:mvc="sap.ui.core.mvc"
xmlns="sap.m"
xmlns:nbx.PDFViewer="com.nbx.pdfviewer"
height="100%">

<FlexBox direction="Column" class="sapUiSmallMargin" height="100%">
<FlexBox>
<OverflowToolbar>
<Button text="Toggle Watermark" press="onToggleWatermark" />
</OverflowToolbar>
</FlexBox>

<nbx.PDFViewer:PDFViewer id="idPDFViewer" source="{/Source}" title="{/Title}"
showWatermark="{/ShowWatermark}" showDownloadButton="false">

<nbx.PDFViewer:pdfViewerOptions>
<nbx.PDFViewer:Option name="allowOverrideProtectedApiSettings" value="true" />
<nbx.PDFViewer:Option name="defaultZoomValue" value="page-fit" />
</nbx.PDFViewer:pdfViewerOptions>

<nbx.PDFViewer:watermark>
<nbx.PDFViewer:Watermark.Text text="{/WatermarkText}" color="rgba(0, 0, 0, 0.25)"
positionHorizontal="57" positionVertical="50"
alignHorizontal="Center" alignVertical="Middle" rotate="-45"
outlineColor="rgba(255, 255, 255, 0.5)" outlineWidth="1"
fontSize="15%" fontWeight="bold"
/>
<nbx.PDFViewer:Watermark.Image src="{/WatermarkImage}" opacity="0.5" width="25"
positionHorizontal="5" positionVertical="5"
alignHorizontal="Left" alignVertical="Top"
/>
</nbx.PDFViewer:watermark>

<nbx.PDFViewer:layoutData>
<FlexItemData growFactor="1" />
</nbx.PDFViewer:layoutData>
</nbx.PDFViewer:PDFViewer>
</FlexBox>
</mvc:View>