From 17b4e6917a30fb8303684e584f7ab4ecb053e259 Mon Sep 17 00:00:00 2001 From: Eugenio Romano Date: Thu, 23 Jun 2016 15:18:59 +0100 Subject: [PATCH 1/6] toggle page fit --- .../ng2-alfresco-viewer/src/pdfViewer.component.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts index 9b74006079..7bca51dca6 100644 --- a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts +++ b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts @@ -190,10 +190,14 @@ export class PdfViewerComponent { } /** - * Method triggered when the page is resized + * toggle the fit page pdf */ pageFit() { - this.scalePage('page-fit'); + if (this.currentScaleMode !== 'page-fit') { + this.scalePage('page-fit'); + } else { + this.scalePage('auto'); + } } /** From c05ff0560e92491160aa4ec9fd19804e9660f809 Mon Sep 17 00:00:00 2001 From: Eugenio Romano Date: Thu, 23 Jun 2016 15:47:06 +0100 Subject: [PATCH 2/6] zoom in and zoom out buttons --- .../src/pdfViewer.component.css | 1 + .../src/pdfViewer.component.html | 6 ++++ .../src/pdfViewer.component.ts | 29 +++++++++++++++++++ 3 files changed, 36 insertions(+) diff --git a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.css b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.css index d7df165db3..651f8496ce 100644 --- a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.css +++ b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.css @@ -1,4 +1,5 @@ .viewer-pdf-container { + overflow: auto; background: #3E3E3E; } diff --git a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.html b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.html index 91edb01582..dc7a61dacd 100644 --- a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.html +++ b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.html @@ -35,5 +35,11 @@
zoom_out_map
+
+ zoom_in +
+
+ zoom_out +
diff --git a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts index 7bca51dca6..380596bec8 100644 --- a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts +++ b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts @@ -45,6 +45,9 @@ export class PdfViewerComponent { currentScale: number; MAX_AUTO_SCALE: number = 1.25; + DEFAULT_SCALE_DELTA: number = 1.1; + MIN_SCALE: number = 0.25; + MAX_SCALE: number = 10.0; ngOnChanges(changes) { if (!this.urlFile) { @@ -200,6 +203,32 @@ export class PdfViewerComponent { } } + /** + * zoom in page pdf + */ + zoomIn(ticks) { + let newScale = this.currentScale; + do { + newScale = (newScale * this.DEFAULT_SCALE_DELTA).toFixed(2); + newScale = Math.ceil(newScale * 10) / 10; + newScale = Math.min(this.MAX_SCALE, newScale); + } while (--ticks > 0 && newScale < this.MAX_SCALE); + this.setScaleUpdatePages(newScale); + } + + /** + * zoom out page pdf + */ + zoomOut(ticks) { + let newScale = this.currentScale; + do { + newScale = (newScale / this.DEFAULT_SCALE_DELTA).toFixed(2); + newScale = Math.floor(newScale * 10) / 10; + newScale = Math.max(this.MIN_SCALE, newScale); + } while (--ticks > 0 && newScale > this.MIN_SCALE); + this.setScaleUpdatePages(newScale); + } + /** * load the previous page */ From 4891e4ae2e93bf3fa5cee3403d8ba2250240c94d Mon Sep 17 00:00:00 2001 From: Eugenio Romano Date: Thu, 23 Jun 2016 15:48:33 +0100 Subject: [PATCH 3/6] fix id --- .../ng2-alfresco-viewer/src/pdfViewer.component.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.html b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.html index dc7a61dacd..8d2007d9e1 100644 --- a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.html +++ b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.html @@ -35,10 +35,10 @@
zoom_out_map
-
+
zoom_in
-
+
zoom_out
From 0e000b147b62ca612de6d2a5ed982a38360acfed Mon Sep 17 00:00:00 2001 From: Eugenio Romano Date: Thu, 23 Jun 2016 15:54:43 +0100 Subject: [PATCH 4/6] fix problem fit page after zoom --- ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts index 380596bec8..b8fd8e200c 100644 --- a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts +++ b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts @@ -213,6 +213,7 @@ export class PdfViewerComponent { newScale = Math.ceil(newScale * 10) / 10; newScale = Math.min(this.MAX_SCALE, newScale); } while (--ticks > 0 && newScale < this.MAX_SCALE); + this.currentScaleMode = 'auto'; this.setScaleUpdatePages(newScale); } @@ -226,6 +227,7 @@ export class PdfViewerComponent { newScale = Math.floor(newScale * 10) / 10; newScale = Math.max(this.MIN_SCALE, newScale); } while (--ticks > 0 && newScale > this.MIN_SCALE); + this.currentScaleMode = 'auto'; this.setScaleUpdatePages(newScale); } From d267d1812aba8a5dbce420eca883aa671b871b35 Mon Sep 17 00:00:00 2001 From: Eugenio Romano Date: Mon, 27 Jun 2016 11:43:38 +0100 Subject: [PATCH 5/6] fix jsdoc --- .../src/pdfViewer.component.ts | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts index b8fd8e200c..e1f23068f4 100644 --- a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts +++ b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts @@ -77,6 +77,7 @@ export class PdfViewerComponent { /** * return the PDFJS global object (exist to facilitate the mock of PDFJS in the test) + * * @returns {PDFJS} */ getPDFJS() { @@ -101,6 +102,7 @@ export class PdfViewerComponent { /** * Method to scale the page current support implementation + * * @param {string} scaleMode - new scale mode */ scalePage(scaleMode) { @@ -150,6 +152,7 @@ export class PdfViewerComponent { /** * Update all the pages with the newScale scale + * * @param {number} newScale - new scale page */ setScaleUpdatePages(newScale: number) { @@ -169,6 +172,8 @@ export class PdfViewerComponent { * * @param {number} oldScale - old scale page * @param {number} newScale - new scale page + * + * @returns {boolean} */ isSameScale(oldScale: number, newScale: number) { return (newScale === oldScale); @@ -180,6 +185,8 @@ export class PdfViewerComponent { * * @param {number} width * @param {number} height + * + * @returns {boolean} */ isLandscape(width: number, height: number) { return (width > height); @@ -205,8 +212,10 @@ export class PdfViewerComponent { /** * zoom in page pdf + * + * @param {number} ticks */ - zoomIn(ticks) { + zoomIn(ticks: number) { let newScale = this.currentScale; do { newScale = (newScale * this.DEFAULT_SCALE_DELTA).toFixed(2); @@ -219,8 +228,10 @@ export class PdfViewerComponent { /** * zoom out page pdf + * + * @param {number} ticks */ - zoomOut(ticks) { + zoomOut(ticks: number) { let newScale = this.currentScale; do { newScale = (newScale / this.DEFAULT_SCALE_DELTA).toFixed(2); From 0e4433c998c470af869f878bbc397f5900184c97 Mon Sep 17 00:00:00 2001 From: Eugenio Romano Date: Mon, 27 Jun 2016 11:50:20 +0100 Subject: [PATCH 6/6] fix conversion issue --- ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts index e1f23068f4..da272d8104 100644 --- a/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts +++ b/ng2-components/ng2-alfresco-viewer/src/pdfViewer.component.ts @@ -216,7 +216,7 @@ export class PdfViewerComponent { * @param {number} ticks */ zoomIn(ticks: number) { - let newScale = this.currentScale; + let newScale: any = this.currentScale; do { newScale = (newScale * this.DEFAULT_SCALE_DELTA).toFixed(2); newScale = Math.ceil(newScale * 10) / 10; @@ -232,7 +232,7 @@ export class PdfViewerComponent { * @param {number} ticks */ zoomOut(ticks: number) { - let newScale = this.currentScale; + let newScale: any = this.currentScale; do { newScale = (newScale / this.DEFAULT_SCALE_DELTA).toFixed(2); newScale = Math.floor(newScale * 10) / 10;