@@ -3,19 +3,8 @@ var pdfviewer = new ej.pdfviewer.PdfViewer({
33 serviceUrl : 'https://services.syncfusion.com/js/production/api/pdfviewer'
44} ) ;
55ej . pdfviewer . PdfViewer . Inject ( ej . pdfviewer . TextSelection , ej . pdfviewer . TextSearch , ej . pdfviewer . Print , ej . pdfviewer . Navigation , ej . pdfviewer . Toolbar ,
6- ej . pdfviewer . Magnification , ej . pdfviewer . Annotation , ej . pdfviewer . FormDesigner , ej . pdfviewer . FormFields , ej . pdfviewer . PageOrganizer ) ;
7- pdfviewer . appendTo ( '#PdfViewer' ) ;
8- var pageSizes = [ ] ;
9- pdfviewer . ajaxRequestSuccess = function ( args ) {
10- if ( args . action === 'Load' ) {
11- let objLength = Object . keys ( args . data . pageSizes ) . length ;
12- for ( var x = 0 ; x < objLength ; x ++ ) {
13- var pageSize = args . data . pageSizes [ x ] ;
14- pageSizes . push ( pageSize ) ;
15- }
16- }
17- } ;
18-
6+ ej . pdfviewer . Magnification , ej . pdfviewer . Annotation , ej . pdfviewer . FormDesigner , ej . pdfviewer . FormFields , ej . pdfviewer . PageOrganizer ) ;
7+ pdfviewer . appendTo ( '#PdfViewer' ) ;
198
209pdfviewer . exportSuccess = function ( args ) {
2110 console . log ( args . exportData ) ;
@@ -30,17 +19,12 @@ pdfviewer.exportSuccess = function (args) {
3019 shapeAnnotationData . map ( data => {
3120 if ( data && data . rect && parseInt ( data . rect . width ) ) {
3221
33- //var pageHeight=parseInt(data.rect.height);
34- var pageHeight = pageSizes [ parseInt ( data . page ) ] . Height
22+ var pageHeight = pdfviewer . getPageInfo ( pdfviewer . currentPageNumber ) . height ;
3523
3624 // Converting PDF Library values into PDF Viewer values.
3725 var rect = {
3826 x : ( parseInt ( data . rect . x ) * 96 ) / 72 ,
39-
40- // Converting pageHeight from pixels(PDF Viewer) to points(PDF Library) for accurate positioning
41- // The conversion factor of 72/96 is used to change pixel values to points
42- y : ( parseInt ( pageHeight ) * 72 / 96 - parseInt ( data . rect . height ) ) * 96 / 72 ,
43-
27+ y : ( parseInt ( pageHeight ) - parseInt ( data . rect . height ) ) * 96 / 72 ,
4428 width : ( parseInt ( data . rect . width ) - parseInt ( data . rect . x ) ) * 96 / 72 ,
4529 height : ( parseInt ( data . rect . height ) - parseInt ( data . rect . y ) ) * 96 / 72 ,
4630 } ;
@@ -51,11 +35,11 @@ pdfviewer.exportSuccess = function (args) {
5135 const [ endX , endY ] = data . end . split ( ',' ) . map ( Number ) ;
5236
5337 // Convert to PDF Viewer coordinates
54- const pageHeight = pageSizes [ parseInt ( data . page ) ] . Height ;
38+ var pageHeight = pdfviewer . getPageInfo ( pdfviewer . currentPageNumber ) . height ;
5539 const pdfStartX = ( startX * 96 ) / 72 ;
56- const pdfStartY = ( parseInt ( pageHeight ) * 72 / 96 - startY ) * 96 / 72 ;
40+ const pdfStartY = ( parseInt ( pageHeight ) - startY ) * 96 / 72 ;
5741 const pdfEndX = ( endX * 96 ) / 72 ;
58- const pdfEndY = ( parseInt ( pageHeight ) * 72 / 96 - endY ) * 96 / 72 ;
42+ const pdfEndY = ( parseInt ( pageHeight ) - endY ) * 96 / 72 ;
5943
6044 rect = {
6145 x : Math . min ( pdfStartX , pdfEndX ) ,
@@ -64,7 +48,8 @@ pdfviewer.exportSuccess = function (args) {
6448 height : Math . abs ( pdfEndY - pdfStartY ) ,
6549 } ;
6650 }
67- if ( rect != null && data . type != 'Text' ) {
51+
52+ if ( rect != null && data . type != 'Text' ) {
6853 console . log ( data . name ) ;
6954 console . log ( rect ) ;
7055 console . log ( "-------------------------" ) ;
@@ -76,6 +61,7 @@ pdfviewer.exportSuccess = function (args) {
7661 } ) ;
7762} ;
7863
64+ // Function to convert Blob URL to object
7965function convertBlobURLToObject ( blobURL ) {
8066 return fetch ( blobURL )
8167 . then ( ( response ) => response . blob ( ) )
0 commit comments