From 15f0fe024d0753ae8f640565f2bf5fd0831438e5 Mon Sep 17 00:00:00 2001 From: SivaSelvan-SF Date: Mon, 9 Feb 2026 19:37:34 +0530 Subject: [PATCH 1/2] 1009098: UG updated --- .../PDF-Viewer/react/Redaction/overview.md | 5 +- .../react/Redaction/programmatic-support.md | 5 +- .../PDF/PDF-Viewer/react/Redaction/toolbar.md | 1 - .../PDF-Viewer/react/annotation/comments.md | 1 + .../PDF/PDF-Viewer/react/events.md | 98 +++++++++--------- .../getting-started-with-server-backed.md | 48 ++++----- .../PDF/PDF-Viewer/react/getting-started.md | 8 +- ...e-author-name-using-annotation-settings.md | 8 +- .../react/how-to/clear-annotation.md | 2 +- .../images/Context-Menu-Page-Operations1.png | Bin 0 -> 25178 bytes .../react/organize-pages/extract-pages.md | 2 +- .../react/organize-pages/toolbar.md | 16 ++- .../PDF/PDF-Viewer/react/text-search.md | 9 ++ .../annotation-toolbar.md | 4 +- .../toolbar-customization/custom-toolbar.md | 2 + .../form-designer-toolbar.md | 4 +- .../toolbar-customization/primary-toolbar.md | 4 +- .../react/base-cs1/app/{index.jsx => app.jsx} | 0 .../react/base-cs1/app/{index.tsx => app.tsx} | 0 .../pdfviewer/react/base-cs1/index.html | 1 + 20 files changed, 122 insertions(+), 96 deletions(-) create mode 100644 Document-Processing/PDF/PDF-Viewer/react/images/Context-Menu-Page-Operations1.png rename Document-Processing/code-snippet/pdfviewer/react/base-cs1/app/{index.jsx => app.jsx} (100%) rename Document-Processing/code-snippet/pdfviewer/react/base-cs1/app/{index.tsx => app.tsx} (100%) diff --git a/Document-Processing/PDF/PDF-Viewer/react/Redaction/overview.md b/Document-Processing/PDF/PDF-Viewer/react/Redaction/overview.md index 50cff678f..e7062848a 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/Redaction/overview.md +++ b/Document-Processing/PDF/PDF-Viewer/react/Redaction/overview.md @@ -19,7 +19,7 @@ To enable the redaction toolbar, configure the `toolbarSettings.toolbarItems` pr The following example shows how to enable the redaction toolbar: {% tabs %} -{% highlight js tabtitle="index.js" %} +{% highlight js tabtitle="app.jsx" %} import * as ReactDOM from 'react-dom/client'; import * as React from 'react'; @@ -52,8 +52,7 @@ export function App() { documentPath="https://cdn.syncfusion.com/content/pdf/pdf-succinctly.pdf" resourceUrl= "https://cdn.syncfusion.com/ej2/31.2.2/dist/ej2-pdfviewer-lib" toolbarSettings={toolbarSettings} - - style={{ 'height': '680px' }} + style={{ 'height': '680px' }} > diff --git a/Document-Processing/PDF/PDF-Viewer/react/Redaction/programmatic-support.md b/Document-Processing/PDF/PDF-Viewer/react/Redaction/programmatic-support.md index 5e0db5078..1a925cb76 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/Redaction/programmatic-support.md +++ b/Document-Processing/PDF/PDF-Viewer/react/Redaction/programmatic-support.md @@ -51,9 +51,8 @@ export function App() { documentPath="https://cdn.syncfusion.com/content/pdf/pdf-succinctly.pdf" resourceUrl= "https://cdn.syncfusion.com/ej2/31.2.2/dist/ej2-pdfviewer-lib" toolbarSettings={toolbarSettings} - - style={{ 'height': '680px' }} - > + style={{ 'height': '640px' }}> + diff --git a/Document-Processing/PDF/PDF-Viewer/react/Redaction/toolbar.md b/Document-Processing/PDF/PDF-Viewer/react/Redaction/toolbar.md index e1fdc7a06..c3c367aa5 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/Redaction/toolbar.md +++ b/Document-Processing/PDF/PDF-Viewer/react/Redaction/toolbar.md @@ -51,7 +51,6 @@ export function App() { documentPath="https://cdn.syncfusion.com/content/pdf/pdf-succinctly.pdf" resourceUrl= "https://cdn.syncfusion.com/ej2/31.2.2/dist/ej2-pdfviewer-lib" toolbarSettings={toolbarSettings} - style={{ 'height': '680px' }} > Deleting the root comment from the comment panel also deletes the associated annotation. ```html +``` ## How to check the comments added by the user Comments added to the PDF document can be read using the annotation's `comments` property. diff --git a/Document-Processing/PDF/PDF-Viewer/react/events.md b/Document-Processing/PDF/PDF-Viewer/react/events.md index a50101a04..14c1629d9 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/events.md +++ b/Document-Processing/PDF/PDF-Viewer/react/events.md @@ -77,7 +77,7 @@ The [bookmarkClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -115,7 +115,7 @@ The [toolbarClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/ Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -161,7 +161,7 @@ When it triggers Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -207,7 +207,7 @@ The [zoomChange](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#z Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -246,7 +246,7 @@ The [buttonFieldClick](https://ej2.syncfusion.com/react/documentation/api/pdfvie Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -284,7 +284,7 @@ The [commentAdd](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#c Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -322,7 +322,7 @@ The [commentDelete](https://ej2.syncfusion.com/react/documentation/api/pdfviewer Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -359,7 +359,7 @@ The [commentEdit](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/# Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -397,7 +397,7 @@ The [commentSelect](https://ej2.syncfusion.com/react/documentation/api/pdfviewer Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -435,7 +435,7 @@ The [commentStatusChanged](https://ej2.syncfusion.com/react/documentation/api/pd Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -473,7 +473,7 @@ The [created](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#crea Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -513,7 +513,7 @@ The [customContextMenuBeforeOpen](https://ej2.syncfusion.com/react/documentation Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -572,7 +572,7 @@ The [customContextMenuSelect](https://ej2.syncfusion.com/react/documentation/api Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -628,7 +628,7 @@ The [documentLoad](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/ Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -666,7 +666,7 @@ The [documentLoadFailed](https://ej2.syncfusion.com/react/documentation/api/pdfv Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -703,7 +703,7 @@ The [documentUnload](https://ej2.syncfusion.com/react/documentation/api/pdfviewe Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -741,7 +741,7 @@ The [downloadEnd](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/# Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -779,7 +779,7 @@ The [downloadStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -817,7 +817,7 @@ The [exportFailed](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/ Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -856,7 +856,7 @@ The [exportStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/# Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -894,7 +894,7 @@ The [exportSuccess](https://ej2.syncfusion.com/react/documentation/api/pdfviewer Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -932,7 +932,7 @@ The [extractTextCompleted](https://ej2.syncfusion.com/react/documentation/api/pd Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -970,7 +970,7 @@ The [hyperlinkClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewe Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1008,7 +1008,7 @@ The [hyperlinkMouseOver](https://ej2.syncfusion.com/react/documentation/api/pdfv Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -1047,7 +1047,7 @@ The [importFailed](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/ Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -1086,7 +1086,7 @@ The [importStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/# Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1124,7 +1124,7 @@ The [importSuccess](https://ej2.syncfusion.com/react/documentation/api/pdfviewer Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1169,7 +1169,7 @@ Refer to [Keyboard interaction](./accessibility#keyboard-interaction) for detail Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1222,7 +1222,7 @@ The [moveSignature](https://ej2.syncfusion.com/react/documentation/api/pdfviewer Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1260,7 +1260,7 @@ The [pageChange](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#p Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1298,7 +1298,7 @@ The [pageClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#pa Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1336,7 +1336,7 @@ The [pageMouseover](https://ej2.syncfusion.com/react/documentation/api/pdfviewer Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1374,7 +1374,7 @@ The [pageOrganizerSaveAs](https://ej2.syncfusion.com/react/documentation/api/pdf Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1412,7 +1412,7 @@ The [pageRenderComplete](https://ej2.syncfusion.com/react/documentation/api/pdfv Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1450,7 +1450,7 @@ The [pageRenderInitiate](https://ej2.syncfusion.com/react/documentation/api/pdfv Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1488,7 +1488,7 @@ The [printEnd](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#pri Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1526,7 +1526,7 @@ The [printStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#p Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1564,7 +1564,7 @@ The [removeSignature](https://ej2.syncfusion.com/react/documentation/api/pdfview Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1602,7 +1602,7 @@ The [resizeSignature](https://ej2.syncfusion.com/react/documentation/api/pdfview Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1640,7 +1640,7 @@ The [resourcesLoaded](https://ej2.syncfusion.com/react/documentation/api/pdfview Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1678,7 +1678,7 @@ The [signaturePropertiesChange](https://ej2.syncfusion.com/react/documentation/a Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1716,7 +1716,7 @@ The [signatureSelect](https://ej2.syncfusion.com/react/documentation/api/pdfview Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1754,7 +1754,7 @@ The [signatureUnselect](https://ej2.syncfusion.com/react/documentation/api/pdfvi Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1792,7 +1792,7 @@ The [textSearchComplete](https://ej2.syncfusion.com/react/documentation/api/pdfv Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1830,7 +1830,7 @@ The [textSearchHighlight](https://ej2.syncfusion.com/react/documentation/api/pdf Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1868,7 +1868,7 @@ The [textSearchStart](https://ej2.syncfusion.com/react/documentation/api/pdfview Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1906,7 +1906,7 @@ The [textSelectionEnd](https://ej2.syncfusion.com/react/documentation/api/pdfvie Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1944,7 +1944,7 @@ The [textSelectionStart](https://ej2.syncfusion.com/react/documentation/api/pdfv Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, Annotation, FormDesigner, FormFields, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -1982,7 +1982,7 @@ The [thumbnailClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewe Example: {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; diff --git a/Document-Processing/PDF/PDF-Viewer/react/getting-started-with-server-backed.md b/Document-Processing/PDF/PDF-Viewer/react/getting-started-with-server-backed.md index d9fd3e5f4..ef300f665 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/getting-started-with-server-backed.md +++ b/Document-Processing/PDF/PDF-Viewer/react/getting-started-with-server-backed.md @@ -20,30 +20,29 @@ To get started with Syncfusion® React UI co ## Setup for Local Development -1. Create a new React app [`create-react-app`](https://github.com/facebook/create-react-app) and install it using the following command. +To easily set up a React application, use `create-vite-app`, which provides a faster development environment, smaller bundle sizes, and optimized builds compared to traditional tools like `create-react-app`. For detailed steps, refer to the Vite [installation instructions](https://vitejs.dev/guide/). Vite sets up your environment using JavaScript and optimizes your application for production. -```bash -npm install -g create-react-app -``` - -2. To setup basic `React` sample use following commands. - -{% tabs %} -{% highlight js tabtitle="JSX" %} +> **Note:** To create a React application using `create-react-app`, refer to this [documentation](https://ej2.syncfusion.com/react/documentation/getting-started/create-app) for more details. -create-react-app quickstart -cd quickstart -npm install +To create a new React application, run the following command. -{% endhighlight %} -{% highlight js tabtitle="TSX" %} +```bash +npm create vite@latest my-app +``` +To set-up a React application in TypeScript environment, run the following command. -npx create-react-app quickstart --template cra-template-typescript -cd quickstart -npm install +```bash +npm create vite@latest my-app -- --template react-ts +cd my-app +npm run dev +``` +To set-up a React application in JavaScript environment, run the following command. -{% endhighlight %} -{% endtabs %} +```bash +npm create vite@latest my-app -- --template react +cd my-app +npm run dev +``` ## Adding Syncfusion® packages @@ -58,7 +57,7 @@ N> The following changes applies to React version 18 and above. ## Adding PDF Viewer component and the CSS reference -* Add an HTML div element to act as the PDF Viewer element `public/index.html` using the following code. +* Add an HTML div element to act as the PDF Viewer element `index.html` using the following code. ``` @@ -73,6 +72,7 @@ N> The following changes applies to React version 18 and above.
Loading....
+
@@ -173,11 +173,11 @@ $env:NODE_OPTIONS = "--openssl-legacy-provider" Output will be appears as follows. {% tabs %} -{% highlight js tabtitle="index.jsx" %} -{% include code-snippet/pdfviewer/react/base-cs1/app/index.jsx %} +{% highlight js tabtitle="app.jsx" %} +{% include code-snippet/pdfviewer/react/base-cs1/app/app.jsx %} {% endhighlight %} -{% highlight ts tabtitle="index.tsx" %} -{% include code-snippet/pdfviewer/react/base-cs1/app/index.tsx %} +{% highlight ts tabtitle="app.tsx" %} +{% include code-snippet/pdfviewer/react/base-cs1/app/app.tsx %} {% endhighlight %} {% highlight html tabtitle="index.html" %} {% include code-snippet/pdfviewer/react/base-cs1/index.html %} diff --git a/Document-Processing/PDF/PDF-Viewer/react/getting-started.md b/Document-Processing/PDF/PDF-Viewer/react/getting-started.md index 2bda29aea..9d77bbcd8 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/getting-started.md +++ b/Document-Processing/PDF/PDF-Viewer/react/getting-started.md @@ -69,7 +69,7 @@ N> The following changes apply to React version 18 and above. ## Adding PDF Viewer component and the CSS reference -* Add an HTML div element to act as the PDF Viewer element `public/index.html` using the following code. +* Add an HTML div element to act as the PDF Viewer element `index.html` using the following code. ``` @@ -84,6 +84,7 @@ N> The following changes apply to React version 18 and above.
Loading....
+
@@ -102,7 +103,7 @@ N> The following changes apply to React version 18 and above. @import "../node_modules/@syncfusion/ej2-pdfviewer/styles/material.css"; ``` -* Add the React PDF Viewer as shown below in `src/index.js` when using JavaScript (JSX). If you're using TypeScript (TSX), add it in `src/index.tsx` to render the PDF Viewer component. +* Add the React PDF Viewer as shown below in `src/index.js` when using JavaScript (JSX). If you're using TypeScript (TSX), add it in `src/app.tsx` to render the PDF Viewer component. {% tabs %} @@ -276,8 +277,10 @@ return (
} const root = ReactDOM.createRoot(document.getElementById('sample')); root.render(); +{% endraw %} {% endhighlight %} {% highlight html tabtitle="index.html" %} +{% raw %} @@ -294,6 +297,7 @@ root.render();
Loading....
+
diff --git a/Document-Processing/PDF/PDF-Viewer/react/how-to/change-author-name-using-annotation-settings.md b/Document-Processing/PDF/PDF-Viewer/react/how-to/change-author-name-using-annotation-settings.md index e0bd095e9..0778887a5 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/how-to/change-author-name-using-annotation-settings.md +++ b/Document-Processing/PDF/PDF-Viewer/react/how-to/change-author-name-using-annotation-settings.md @@ -31,7 +31,7 @@ Change the author name and other properties using the annotationSettings API as {% tabs %} {% highlight ts tabtitle="Standalone" %} -```ts + import { PdfViewer, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, TextSearch, Print, Annotation, FormFields } from "../src/index"; PdfViewer.Inject(Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, TextSearch, Print, Annotation, FormFields); @@ -40,10 +40,10 @@ viewer.load('https://cdn.syncfusion.com/content/pdf/pdf-succinctly.pdf', null); viewer.annotationSettings = { author: 'syncfusion', minHeight: 30, maxHeight: 500, minWidth: 30, maxWidth: 500, isLock: false, isPrint: true, isDownload: true }; viewer.freeTextSettings = { allowTextOnly : true }; viewer.appendTo("#pdfViewer"); -``` + {% endhighlight %} {% highlight ts tabtitle="Server-Backed" %} -```ts + import { PdfViewer, Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, TextSearch, Print, Annotation, FormFields } from "../src/index"; PdfViewer.Inject(Toolbar, Magnification, Navigation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, TextSearch, Print, Annotation, FormFields); @@ -53,6 +53,6 @@ viewer.load('https://cdn.syncfusion.com/content/pdf/pdf-succinctly.pdf', null); viewer.annotationSettings = { author: 'syncfusion', minHeight: 30, maxHeight: 500, minWidth: 30, maxWidth: 500, isLock: false, isPrint: true, isDownload: true }; viewer.freeTextSettings = { allowTextOnly : true }; viewer.appendTo("#pdfViewer"); -``` + {% endhighlight %} {% endtabs %} \ No newline at end of file diff --git a/Document-Processing/PDF/PDF-Viewer/react/how-to/clear-annotation.md b/Document-Processing/PDF/PDF-Viewer/react/how-to/clear-annotation.md index b0efe333b..018b157aa 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/how-to/clear-annotation.md +++ b/Document-Processing/PDF/PDF-Viewer/react/how-to/clear-annotation.md @@ -42,5 +42,5 @@ function deleteAnnotationbyId() { ``` -Sample: How to clear annotations using deleteAnnotations +Sample: [How to clear annotations using deleteAnnotations] (https://stackblitz.com/edit/react-xlvqkm?file=public%2Findex.html) \ No newline at end of file diff --git a/Document-Processing/PDF/PDF-Viewer/react/images/Context-Menu-Page-Operations1.png b/Document-Processing/PDF/PDF-Viewer/react/images/Context-Menu-Page-Operations1.png new file mode 100644 index 0000000000000000000000000000000000000000..3939f80c1666280429654947a8c265abd6460bd8 GIT binary patch literal 25178 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 } function extractPage(){ -// Get the PDF viewer instance + // Get the PDF viewer instance var viewer = document.getElementById('container').ej2_instances[0]; //Extract Pages 1,2 const array = viewer.extractPages('1,2'); diff --git a/Document-Processing/PDF/PDF-Viewer/react/organize-pages/toolbar.md b/Document-Processing/PDF/PDF-Viewer/react/organize-pages/toolbar.md index 606775030..acbba2ef4 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/organize-pages/toolbar.md +++ b/Document-Processing/PDF/PDF-Viewer/react/organize-pages/toolbar.md @@ -18,6 +18,7 @@ The `canInsert` property controls the visibility of the insert tool. When set to {% tabs %} {% highlight ts tabtitle="Standalone" %} +{% raw %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -42,21 +43,23 @@ function App() { const root = ReactDOM.createRoot(document.getElementById('PdfViewer')); root.render(); +{% endraw %} {% endhighlight %} {% highlight ts tabtitle="Server-Backed" %} +{% raw %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, Annotation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, TextSearch, FormFields, FormDesigner, PageOrganizer, Inject } from '@syncfusion/ej2-react-pdfviewer'; function App() { - lwt pdfviewer; + let pdfviewer; return ( { pdfviewer = scope; }} - serviceUrl='https://document.syncfusion.com/web-services/pdf-viewer/api/pdfviewer/' documentPath="https://cdn.syncfusion.com/content/pdf/pdf-succinctly.pdf" + serviceUrl='https://document.syncfusion.com/web-services/pdf-viewer/api/pdfviewer/' pageOrganizerSettings={{ canInsert: false }} style={{ height: '640px' }} > @@ -68,6 +71,7 @@ function App() { const root = ReactDOM.createRoot(document.getElementById('PdfViewer')); root.render(); +{% endraw %} {% endhighlight %} {% endtabs %} @@ -77,6 +81,7 @@ The `canDelete` property controls the visibility of the delete tool. When set to {% tabs %} {% highlight ts tabtitle="Standalone" %} +{% raw %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -101,8 +106,10 @@ function App() { const root = ReactDOM.createRoot(document.getElementById('PdfViewer')); root.render(); +{% endraw %} {% endhighlight %} {% highlight ts tabtitle="Server-Backed" %} +{% raw %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -127,6 +134,7 @@ function App() { const root = ReactDOM.createRoot(document.getElementById('PdfViewer')); root.render(); +{% endraw %} {% endhighlight %} {% endtabs %} @@ -136,6 +144,7 @@ The `canRotate` property controls the visibility of the rotate tool. When set to {% tabs %} {% highlight ts tabtitle="Standalone" %} +{% raw %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -160,8 +169,10 @@ function App() { const root = ReactDOM.createRoot(document.getElementById('PdfViewer')); root.render(); +{% endraw %} {% endhighlight %} {% highlight ts tabtitle="Server-Backed" %} +{% raw %} import * as React from 'react'; import * as ReactDOM from 'react-dom/client'; @@ -186,6 +197,7 @@ function App() { const root = ReactDOM.createRoot(document.getElementById('PdfViewer')); root.render(); +{% endraw %} {% endhighlight %} {% endtabs %} diff --git a/Document-Processing/PDF/PDF-Viewer/react/text-search.md b/Document-Processing/PDF/PDF-Viewer/react/text-search.md index fbe49e308..f2c8aebf7 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/text-search.md +++ b/Document-Processing/PDF/PDF-Viewer/react/text-search.md @@ -110,6 +110,7 @@ While the PDF Viewer's toolbar provides a user-friendly way to search, you can a The `searchText` method allows you to initiate a search with specific criteria. +{% highlight ts %} {% raw %} import React, { useRef } from 'react'; import { PdfViewerComponent } from '@syncfusion/ej2-react-pdfviewer'; @@ -134,11 +135,13 @@ export default function SearchExample() { ); } {% endraw %} +{% endhighlight %} #### Match Case To perform a case-sensitive search, set the `isMatchCase` parameter to `true`. This corresponds to the 'Match Case' checkbox in the search panel. +{% highlight ts %} {% raw %} import React, { useEffect, useRef } from 'react'; import { PdfViewerComponent } from '@syncfusion/ej2-react-pdfviewer'; @@ -161,11 +164,13 @@ export default function MatchCaseExample() { ); } {% endraw %} +{% endhighlight %} #### Match Whole Word You can search for whole words by setting the `isMatchWholeWord` parameter to `true`. When this is enabled, the search will only match occurrences where the search term is not part of a larger word. For example, a search for "view" will not match "viewer". +{% highlight ts %} {% raw %} import React, { useEffect, useRef } from 'react'; import { PdfViewerComponent } from '@syncfusion/ej2-react-pdfviewer'; @@ -188,6 +193,7 @@ export default function WholeWordExample() { ); } {% endraw %} +{% endhighlight %} **Note on 'Match Any Word':** The 'Match Any Word' checkbox in the UI is a feature that splits the input string into multiple words and performs a search for each of them. This is different from the `isMatchWholeWord` parameter of the `searchText` method, which enforces a whole-word match for the entire search string provided. @@ -591,6 +597,7 @@ export default function App() { ); } {% endraw %} +{% endhighlight %} ### textSearchHighlight @@ -623,6 +630,7 @@ export default function App() { ); } {% endraw %} +{% endhighlight %} ### textSearchComplete @@ -659,6 +667,7 @@ export default function App() { ); } {% endraw %} +{% endhighlight %} ## See also * [Toolbar items](./toolbar) diff --git a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/annotation-toolbar.md b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/annotation-toolbar.md index f8855fb75..2f188ecb3 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/annotation-toolbar.md +++ b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/annotation-toolbar.md @@ -21,7 +21,7 @@ Use the [EnableAnnotationToolbar](https://ej2.syncfusion.com/react/documentation The following code snippet explains how to show or hide the annotation toolbar using the `showAnnotationToolbar` method. {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, Annotation, LinkAnnotation, @@ -111,7 +111,7 @@ The annotation toolbar is presented when entering annotation mode in PDF Viewer The following example demonstrates how to customize the annotation toolbar by specifying a selected set of tools using `AnnotationToolbarItem`. {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import * as React from 'react'; import * as ReactDOM from 'react-dom'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, Annotation, LinkAnnotation, diff --git a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/custom-toolbar.md b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/custom-toolbar.md index cb6b70d28..06e33eedc 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/custom-toolbar.md +++ b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/custom-toolbar.md @@ -603,6 +603,8 @@ class CustomToolbar extends React.Component { Sample : [https://document.syncfusion.com/demos/pdf-viewer/react/#/tailwind3/pdfviewer/custom-toolbar] +(https://document.syncfusion.com/demos/pdf-viewer/react/#/tailwind3/pdfviewer/custom-toolbar) + ## See also * [Feature Modules](./feature-module) diff --git a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/form-designer-toolbar.md b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/form-designer-toolbar.md index 63e9af5b0..b8f647741 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/form-designer-toolbar.md +++ b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/form-designer-toolbar.md @@ -21,7 +21,7 @@ Use the [EnableFormDesigner](https://ej2.syncfusion.com/react/documentation/api/ The following code snippet explains how to show or hide the toolbar using the `EnableFormDesigner` property. {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import React, { useRef } from 'react'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, Annotation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, TextSearch, FormFields, FormDesigner, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -94,7 +94,7 @@ Use [`PdfViewerToolbarSettings`](https://ej2.syncfusion.com/react/documentation/ The following example demonstrates how to customize the form designer toolbar by configuring specific tools using `FormDesignerToolbarItem`. {% tabs %} -{% highlight ts tabtitle="index.ts" %} +{% highlight ts tabtitle="app.tsx" %} import React, { useRef } from 'react'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, Annotation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, TextSearch, FormFields, FormDesigner, Inject } from '@syncfusion/ej2-react-pdfviewer'; diff --git a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/primary-toolbar.md b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/primary-toolbar.md index 635e2a965..49112c808 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/primary-toolbar.md +++ b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/primary-toolbar.md @@ -19,7 +19,7 @@ Toggle the built-in primary toolbar to create custom toolbar experiences or simp Show or hide the toolbar using the `enableToolbar` property: {% tabs %} -{% highlight ts tabtitle="index.tsx" %} +{% highlight ts tabtitle="app.tsx" %} import React, { useRef } from 'react'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, Annotation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, TextSearch, FormFields, FormDesigner, Inject } from '@syncfusion/ej2-react-pdfviewer'; @@ -83,7 +83,7 @@ export default App; The following code snippet explains how to show or hide the toolbar using the `showToolbar` method. {% tabs %} -{% highlight ts tabtitle="index.tsx" %} +{% highlight ts tabtitle="app.tsx" %} import React, { useEffect, useRef } from 'react'; import { PdfViewerComponent, Toolbar, Magnification, Navigation, Annotation, LinkAnnotation, ThumbnailView, BookmarkView, TextSelection, TextSearch, FormFields, FormDesigner, Inject } from '@syncfusion/ej2-react-pdfviewer'; diff --git a/Document-Processing/code-snippet/pdfviewer/react/base-cs1/app/index.jsx b/Document-Processing/code-snippet/pdfviewer/react/base-cs1/app/app.jsx similarity index 100% rename from Document-Processing/code-snippet/pdfviewer/react/base-cs1/app/index.jsx rename to Document-Processing/code-snippet/pdfviewer/react/base-cs1/app/app.jsx diff --git a/Document-Processing/code-snippet/pdfviewer/react/base-cs1/app/index.tsx b/Document-Processing/code-snippet/pdfviewer/react/base-cs1/app/app.tsx similarity index 100% rename from Document-Processing/code-snippet/pdfviewer/react/base-cs1/app/index.tsx rename to Document-Processing/code-snippet/pdfviewer/react/base-cs1/app/app.tsx diff --git a/Document-Processing/code-snippet/pdfviewer/react/base-cs1/index.html b/Document-Processing/code-snippet/pdfviewer/react/base-cs1/index.html index 8720c228f..9479ddef1 100644 --- a/Document-Processing/code-snippet/pdfviewer/react/base-cs1/index.html +++ b/Document-Processing/code-snippet/pdfviewer/react/base-cs1/index.html @@ -14,6 +14,7 @@
Loading....
+
\ No newline at end of file From e3f8f4f79933d9073f72da86465883faae506d6b Mon Sep 17 00:00:00 2001 From: SF4524LogeshKumar Date: Tue, 10 Feb 2026 12:28:22 +0530 Subject: [PATCH 2/2] 1009098: Resolved CI failures addressed around 115 issues. --- .../PDF/PDF-Viewer/react/events.md | 180 +++++++++--------- ...e-author-name-using-annotation-settings.md | 2 +- .../react/how-to/clear-annotation.md | 2 +- .../react/organize-pages/toolbar.md | 2 +- .../PDF/PDF-Viewer/react/text-search.md | 30 ++- .../annotation-toolbar.md | 4 +- .../toolbar-customization/custom-toolbar.md | 2 +- .../form-designer-toolbar.md | 4 +- .../toolbar-customization/primary-toolbar.md | 6 +- 9 files changed, 121 insertions(+), 111 deletions(-) diff --git a/Document-Processing/PDF/PDF-Viewer/react/events.md b/Document-Processing/PDF/PDF-Viewer/react/events.md index 14c1629d9..acfbf0817 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/events.md +++ b/Document-Processing/PDF/PDF-Viewer/react/events.md @@ -70,9 +70,9 @@ Note: For annotation and signature events, see the dedicated Annotations Events ## bookmarkClick -The [bookmarkClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#bookmarkclickevent) event triggers when a bookmark item is clicked in the bookmark panel. +The [bookmarkClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#bookmarkclickevent) event triggers when a bookmark item is clicked in the bookmark panel. -- Event arguments: [BookmarkClickEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/bookmarkClickEventArgs/). +- Event arguments: [BookmarkClickEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/bookmarkClickEventArgs). Example: @@ -108,7 +108,7 @@ root.render(); ## toolbarClick -The [toolbarClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#toolbarclickevent) event triggers when a toolbar item is clicked. Use it to handle actions based on the clicked item's id or name. +The [toolbarClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#toolbarclickevent) event triggers when a toolbar item is clicked. Use it to handle actions based on the clicked item's id or name. - Event arguments: `ClickEventArgs`. @@ -146,9 +146,9 @@ root.render(); ## validateFormFields -The [validateFormFields](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#validateformfieldsevent) event triggers when form field validation fails, typically before a download or submit action proceeds. Use this event to inspect which required fields are empty and show custom messages or block application logic if needed. +The [validateFormFields](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#validateformfieldsevent) event triggers when form field validation fails, typically before a download or submit action proceeds. Use this event to inspect which required fields are empty and show custom messages or block application logic if needed. -- Event arguments: [ValidateFormFieldsArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/validateFormFieldsArgs/) +- Event arguments: [ValidateFormFieldsArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/validateFormFieldsArgs) - name: Event name - documentName: Current document name - formField: The last interacted field’s data (if applicable) @@ -200,9 +200,9 @@ Tip ## zoomChange -The [zoomChange](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#zoomchangeevent) event triggers when the magnification value changes. +The [zoomChange](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#zoomchangeevent) event triggers when the magnification value changes. -- Event arguments: [ZoomChangeEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/zoomChangeEventArgs/). +- Event arguments: [ZoomChangeEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/zoomChangeEventArgs). Example: @@ -239,9 +239,9 @@ root.render(); ## buttonFieldClick -The [buttonFieldClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#buttonfieldclickevent) event triggers when a button form field is clicked. +The [buttonFieldClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#buttonfieldclickevent) event triggers when a button form field is clicked. -- Event arguments: [ButtonFieldClickEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/buttonFieldClickEventArgs/). +- Event arguments: [ButtonFieldClickEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/buttonFieldClickEventArgs). Example: @@ -277,9 +277,9 @@ root.render(); ## commentAdd -The [commentAdd](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#commentaddevent) event triggers when a comment is added in the comment panel. +The [commentAdd](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#commentaddevent) event triggers when a comment is added in the comment panel. -- Event arguments: [CommentEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/commentEventArgs/). +- Event arguments: [CommentEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/commentEventArgs). Example: @@ -315,9 +315,9 @@ root.render(); ## commentDelete -The [commentDelete](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#commentdeleteevent) event triggers when a comment is deleted in the comment panel. +The [commentDelete](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#commentdeleteevent) event triggers when a comment is deleted in the comment panel. -- Event arguments: [CommentEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/commentEventArgs/). +- Event arguments: [CommentEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/commentEventArgs). Example: @@ -352,9 +352,9 @@ root.render(); ## commentEdit -The [commentEdit](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#commenteditevent) event triggers when a comment is edited in the comment panel. +The [commentEdit](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#commenteditevent) event triggers when a comment is edited in the comment panel. -- Event arguments: [CommentEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/commentEventArgs/). +- Event arguments: [CommentEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/commentEventArgs). Example: @@ -390,9 +390,9 @@ root.render(); ## commentSelect -The [commentSelect](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#commentselectevent) event triggers when a comment is selected in the comment panel. +The [commentSelect](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#commentselectevent) event triggers when a comment is selected in the comment panel. -- Event arguments: [CommentEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/commentEventArgs/). +- Event arguments: [CommentEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/commentEventArgs). Example: @@ -428,9 +428,9 @@ root.render(); ## commentStatusChanged -The [commentStatusChanged](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#commentstatuschangedevent) event triggers when a comment status is changed in the comment panel. +The [commentStatusChanged](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#commentstatuschangedevent) event triggers when a comment status is changed in the comment panel. -- Event arguments: [CommentEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/commentEventArgs/). +- Event arguments: [CommentEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/commentEventArgs). Example: @@ -466,7 +466,7 @@ root.render(); ## created -The [created](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#createdevent) event is triggered during the creation of the PDF Viewer component. +The [created](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#createdevent) event is triggered during the creation of the PDF Viewer component. - Event arguments: `void`. @@ -504,9 +504,9 @@ root.render(); ## customContextMenuBeforeOpen -The [customContextMenuBeforeOpen](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#customcontextmenubeforeopenevent) event fires just before the context menu is shown. Use it to show or hide items based on the current state (for example, only show search items when text is selected). +The [customContextMenuBeforeOpen](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#customcontextmenubeforeopenevent) event fires just before the context menu is shown. Use it to show or hide items based on the current state (for example, only show search items when text is selected). -- Event arguments: [CustomContextMenuBeforeOpenEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/customContextMenuBeforeOpenEventArgs/) +- Event arguments: [CustomContextMenuBeforeOpenEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/customContextMenuBeforeOpenEventArgs) - name: Event name - ids: Array of menu item ids that will be shown; remove ids to hide items for this open @@ -562,9 +562,9 @@ root.render(); ## customContextMenuSelect -The [customContextMenuSelect](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#customcontextmenuselectevent) event fires when a custom menu item is clicked. Use it to branch logic by the clicked item's id. +The [customContextMenuSelect](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#customcontextmenuselectevent) event fires when a custom menu item is clicked. Use it to branch logic by the clicked item's id. -- Event arguments: [CustomContextMenuSelectEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/customContextMenuSelectEventArgs/). +- Event arguments: [CustomContextMenuSelectEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/customContextMenuSelectEventArgs). - name: Event name - id: The id of the clicked menu item @@ -621,9 +621,9 @@ root.render(); ## documentLoad -The [documentLoad](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#documentloadevent) event occurs after a document is successfully loaded and parsed. +The [documentLoad](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#documentloadevent) event occurs after a document is successfully loaded and parsed. -- Event arguments: [LoadEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/loadEventArgs/). +- Event arguments: [LoadEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/loadEventArgs). Example: @@ -659,9 +659,9 @@ root.render(); ## documentLoadFailed -The [documentLoadFailed](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#documentloadfailedevent) event triggers when loading a document fails. +The [documentLoadFailed](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#documentloadfailedevent) event triggers when loading a document fails. -- Event arguments: [LoadFailedEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/loadFailedEventArgs/). +- Event arguments: [LoadFailedEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/loadFailedEventArgs). Example: @@ -696,9 +696,9 @@ root.render(); ## documentUnload -The [documentUnload](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#documentunloadevent) event triggers when closing the current document. +The [documentUnload](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#documentunloadevent) event triggers when closing the current document. -- Event arguments: [UnloadEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/unloadEventArgs/). +- Event arguments: [UnloadEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/unloadEventArgs). Example: @@ -734,9 +734,9 @@ root.render(); ## downloadEnd -The [downloadEnd](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#downloadendevent) event triggers after a document download completes. +The [downloadEnd](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#downloadendevent) event triggers after a document download completes. -- Event arguments: [DownloadEndEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/downloadEndEventArgs/). +- Event arguments: [DownloadEndEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/downloadEndEventArgs). Example: @@ -772,9 +772,9 @@ root.render(); ## downloadStart -The [downloadStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#downloadstartevent) event triggers when the download operation is initiated. +The [downloadStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#downloadstartevent) event triggers when the download operation is initiated. -- Event arguments: [DownloadStartEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/downloadStartEventArgs/). +- Event arguments: [DownloadStartEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/downloadStartEventArgs). Example: @@ -810,9 +810,9 @@ root.render(); ## exportFailed -The [exportFailed](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#exportfailedevent) event triggers when exporting annotations fails. +The [exportFailed](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#exportfailedevent) event triggers when exporting annotations fails. -- Event arguments: [ExportFailureEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/exportFailureEventArgs/). +- Event arguments: [ExportFailureEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/exportFailureEventArgs). Example: @@ -849,9 +849,9 @@ root.render(); ## exportStart -The [exportStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#exportstartevent) event triggers when exporting annotations starts. +The [exportStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#exportstartevent) event triggers when exporting annotations starts. -- Event arguments: [ExportStartEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/exportStartEventArgs/). +- Event arguments: [ExportStartEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/exportStartEventArgs). Example: @@ -887,9 +887,9 @@ root.render(); ## exportSuccess -The [exportSuccess](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#exportsuccessevent) event triggers when annotations are exported successfully. +The [exportSuccess](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#exportsuccessevent) event triggers when annotations are exported successfully. -- Event arguments: [ExportSuccessEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/exportSuccessEventArgs/). +- Event arguments: [ExportSuccessEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/exportSuccessEventArgs). Example: @@ -925,9 +925,9 @@ root.render(); ## extractTextCompleted -The [extractTextCompleted](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#extracttextcompletedevent) event triggers when text extraction completes. +The [extractTextCompleted](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#extracttextcompletedevent) event triggers when text extraction completes. -- Event arguments: [ExtractTextCompletedEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/extractTextCompletedEventArgs/). +- Event arguments: [ExtractTextCompletedEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/extractTextCompletedEventArgs). Example: @@ -963,9 +963,9 @@ root.render(); ## hyperlinkClick -The [hyperlinkClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#hyperlinkclickevent) event triggers when a hyperlink is clicked. +The [hyperlinkClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#hyperlinkclickevent) event triggers when a hyperlink is clicked. -- Event arguments: [HyperlinkClickEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/hyperlinkClickEventArgs/). +- Event arguments: [HyperlinkClickEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/hyperlinkClickEventArgs). Example: @@ -1001,7 +1001,7 @@ root.render(); ## hyperlinkMouseOver -The [hyperlinkMouseOver](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#hyperlinkmouseoverevent) event triggers when hovering over a hyperlink. +The [hyperlinkMouseOver](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#hyperlinkmouseoverevent) event triggers when hovering over a hyperlink. - Event arguments: HyperlinkMouseOverArgs. @@ -1040,9 +1040,9 @@ root.render(); ## importFailed -The [importFailed](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#importfailedevent) event triggers when importing annotations fails. +The [importFailed](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#importfailedevent) event triggers when importing annotations fails. -- Event arguments: [ImportFailureEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/importFailureEventArgs/). +- Event arguments: [ImportFailureEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/importFailureEventArgs). Example: @@ -1079,9 +1079,9 @@ root.render(); ## importStart -The [importStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#importstartevent) event triggers when importing annotations starts. +The [importStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#importstartevent) event triggers when importing annotations starts. -- Event arguments: [ImportStartEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/importStartEventArgs/). +- Event arguments: [ImportStartEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/importStartEventArgs). Example: @@ -1117,9 +1117,9 @@ root.render(); ## importSuccess -The [importSuccess](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#importsuccessevent) event triggers when annotations are imported successfully. +The [importSuccess](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#importsuccessevent) event triggers when annotations are imported successfully. -- Event arguments: [ImportSuccessEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/importSuccessEventArgs/). +- Event arguments: [ImportSuccessEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/importSuccessEventArgs). Example: @@ -1155,9 +1155,9 @@ root.render(); ## keyboardCustomCommands -The [keyboardCustomCommands](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#keyboardcustomcommandsevent) event triggers when customized keyboard command keys are pressed. +The [keyboardCustomCommands](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#keyboardcustomcommandsevent) event triggers when customized keyboard command keys are pressed. -- Event arguments: [KeyboardCustomCommandsEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/keyboardCustomCommandsEventArgs/). +- Event arguments: [KeyboardCustomCommandsEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/keyboardCustomCommandsEventArgs). - name: Event name - keyboardCommand: The command metadata raised by Command Manager @@ -1215,7 +1215,7 @@ root.render(); ## moveSignature -The [moveSignature](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#movesignatureevent) event triggers when a signature is moved across the page. +The [moveSignature](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#movesignatureevent) event triggers when a signature is moved across the page. - Event arguments: `MoveSignatureEventArgs`. @@ -1253,9 +1253,9 @@ root.render(); ## pageChange -The [pageChange](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#pagechangeevent) event triggers when the current page number changes (for example, via scrolling or navigation controls). +The [pageChange](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#pagechangeevent) event triggers when the current page number changes (for example, via scrolling or navigation controls). -- Event arguments: [PageChangeEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pageChangeEventArgs/). +- Event arguments: [PageChangeEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pageChangeEventArgs). Example: @@ -1291,9 +1291,9 @@ root.render(); ## pageClick -The [pageClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#pageclickevent) event triggers when a mouse click occurs on a page. +The [pageClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#pageclickevent) event triggers when a mouse click occurs on a page. -- Event arguments: [PageClickEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pageClickEventArgs/). +- Event arguments: [PageClickEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pageClickEventArgs). Example: @@ -1329,7 +1329,7 @@ root.render(); ## pageMouseover -The [pageMouseover](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#pagemouseoverevent) event triggers when the mouse moves over a page. +The [pageMouseover](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#pagemouseoverevent) event triggers when the mouse moves over a page. - Event arguments: `PageMouseoverEventArgs`. @@ -1367,7 +1367,7 @@ root.render(); ## pageOrganizerSaveAs -The [pageOrganizerSaveAs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#pageorganizersaveasevent) event triggers when a Save As action is performed in the page organizer. +The [pageOrganizerSaveAs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#pageorganizersaveasevent) event triggers when a Save As action is performed in the page organizer. - Event arguments: `PageOrganizerSaveAsEventArgs`. @@ -1405,9 +1405,9 @@ root.render(); ## pageRenderComplete -The [pageRenderComplete](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#pagerendercompleteevent) event triggers after a page finishes rendering. +The [pageRenderComplete](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#pagerendercompleteevent) event triggers after a page finishes rendering. -- Event arguments: [PageRenderCompleteEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pageRenderCompleteEventArgs/). +- Event arguments: [PageRenderCompleteEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pageRenderCompleteEventArgs). Example: @@ -1443,9 +1443,9 @@ root.render(); ## pageRenderInitiate -The [pageRenderInitiate](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#pagerenderinitiateevent) event triggers when page rendering begins. +The [pageRenderInitiate](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#pagerenderinitiateevent) event triggers when page rendering begins. -- Event arguments: [PageRenderInitiateEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pageRenderInitiateEventArgs/). +- Event arguments: [PageRenderInitiateEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pageRenderInitiateEventArgs). Example: @@ -1481,9 +1481,9 @@ root.render(); ## printEnd -The [printEnd](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#printendevent) event triggers when a print action completes. +The [printEnd](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#printendevent) event triggers when a print action completes. -- Event arguments: [PrintEndEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/printEndEventArgs/). +- Event arguments: [PrintEndEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/printEndEventArgs). Example: @@ -1519,9 +1519,9 @@ root.render(); ## printStart -The [printStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#printstartevent) event triggers when a print action is initiated. +The [printStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#printstartevent) event triggers when a print action is initiated. -- Event arguments: [PrintStartEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/printStartEventArgs/). +- Event arguments: [PrintStartEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/printStartEventArgs). Example: @@ -1557,9 +1557,9 @@ root.render(); ## removeSignature -The [removeSignature](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#removesignatureevent) event triggers when a signature is removed. +The [removeSignature](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#removesignatureevent) event triggers when a signature is removed. -- Event arguments: [RemoveSignatureEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/removeSignatureEventArgs/). +- Event arguments: [RemoveSignatureEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/removeSignatureEventArgs). Example: @@ -1595,9 +1595,9 @@ root.render(); ## resizeSignature -The [resizeSignature](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#resizesignatureevent) event triggers when a signature is resized. +The [resizeSignature](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#resizesignatureevent) event triggers when a signature is resized. -- Event arguments: [ResizeSignatureEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/resizeSignatureEventArgs/). +- Event arguments: [ResizeSignatureEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/resizeSignatureEventArgs). Example: @@ -1633,7 +1633,7 @@ root.render(); ## resourcesLoaded -The [resourcesLoaded](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#resourcesloadedevent) event triggers after the viewer's required resources are loaded. +The [resourcesLoaded](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#resourcesloadedevent) event triggers after the viewer's required resources are loaded. - Event arguments: `void`. @@ -1671,9 +1671,9 @@ root.render(); ## signaturePropertiesChange -The [signaturePropertiesChange](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#signaturepropertieschangeevent) event triggers when signature properties change. +The [signaturePropertiesChange](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#signaturepropertieschangeevent) event triggers when signature properties change. -- Event arguments: [SignaturePropertiesChangeEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/signaturePropertiesChangeEventArgs/). +- Event arguments: [SignaturePropertiesChangeEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/signaturePropertiesChangeEventArgs). Example: @@ -1709,9 +1709,9 @@ root.render(); ## signatureSelect -The [signatureSelect](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#signatureselectevent) event triggers when a signature is selected. +The [signatureSelect](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#signatureselectevent) event triggers when a signature is selected. -- Event arguments: [SignatureSelectEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/signatureSelectEventArgs/). +- Event arguments: [SignatureSelectEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/signatureSelectEventArgs). Example: @@ -1747,9 +1747,9 @@ root.render(); ## signatureUnselect -The [signatureUnselect](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#signatureunselectevent) event triggers when a signature is unselected. +The [signatureUnselect](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#signatureunselectevent) event triggers when a signature is unselected. -- Event arguments: [SignatureUnselectEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/signatureUnselectEventArgs/). +- Event arguments: [SignatureUnselectEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/signatureUnselectEventArgs). Example: @@ -1785,9 +1785,9 @@ root.render(); ## textSearchComplete -The [textSearchComplete](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#textsearchcompleteevent) event triggers when a text search completes. +The [textSearchComplete](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#textsearchcompleteevent) event triggers when a text search completes. -- Event arguments: [TextSearchCompleteEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearchCompleteEventArgs/). +- Event arguments: [TextSearchCompleteEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearchCompleteEventArgs). Example: @@ -1823,9 +1823,9 @@ root.render(); ## textSearchHighlight -The [textSearchHighlight](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#textsearchhighlightevent) event triggers when searched text is highlighted. +The [textSearchHighlight](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#textsearchhighlightevent) event triggers when searched text is highlighted. -- Event arguments: [TextSearchHighlightEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearchHighlightEventArgs/). +- Event arguments: [TextSearchHighlightEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearchHighlightEventArgs). Example: @@ -1861,9 +1861,9 @@ root.render(); ## textSearchStart -The [textSearchStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#textsearchstartevent) event triggers when a text search is initiated. +The [textSearchStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#textsearchstartevent) event triggers when a text search is initiated. -- Event arguments: [TextSearchStartEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearchStartEventArgs/). +- Event arguments: [TextSearchStartEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearchStartEventArgs). Example: @@ -1899,9 +1899,9 @@ root.render(); ## textSelectionEnd -The [textSelectionEnd](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#textselectionendevent) event triggers when text selection is complete. +The [textSelectionEnd](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#textselectionendevent) event triggers when text selection is complete. -- Event arguments: [TextSelectionEndEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSelectionEndEventArgs/). +- Event arguments: [TextSelectionEndEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSelectionEndEventArgs). Example: @@ -1937,7 +1937,7 @@ root.render(); ## textSelectionStart -The [textSelectionStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#textselectionstartevent) event triggers when text selection is initiated. +The [textSelectionStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#textselectionstartevent) event triggers when text selection is initiated. - Event arguments: `TextSelectionStartEventArgs`. @@ -1975,9 +1975,9 @@ root.render(); ## thumbnailClick -The [thumbnailClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#thumbnailclickevent) event triggers when a thumbnail is clicked. +The [thumbnailClick](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#thumbnailclickevent) event triggers when a thumbnail is clicked. -- Event arguments: [ThumbnailClickEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/thumbnailClickEventArgs/). +- Event arguments: [ThumbnailClickEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/thumbnailClickEventArgs). Example: diff --git a/Document-Processing/PDF/PDF-Viewer/react/how-to/change-author-name-using-annotation-settings.md b/Document-Processing/PDF/PDF-Viewer/react/how-to/change-author-name-using-annotation-settings.md index 0778887a5..0e763b53a 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/how-to/change-author-name-using-annotation-settings.md +++ b/Document-Processing/PDF/PDF-Viewer/react/how-to/change-author-name-using-annotation-settings.md @@ -1,6 +1,6 @@ --- layout: post -title: Change author name using annotation settings in React PDF Viewer | Syncfusion +title: Change author name using annotation settings in React | Syncfusion description: Learn how to change the author name and related annotation settings using the annotationSettings API in the React PDF Viewer. platform: document-processing control: PDF Viewer diff --git a/Document-Processing/PDF/PDF-Viewer/react/how-to/clear-annotation.md b/Document-Processing/PDF/PDF-Viewer/react/how-to/clear-annotation.md index 018b157aa..90e78e08f 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/how-to/clear-annotation.md +++ b/Document-Processing/PDF/PDF-Viewer/react/how-to/clear-annotation.md @@ -10,7 +10,7 @@ domainurl: ##DomainURL## # Clear annotations in React PDF Viewer -Use the [deleteAnnotations](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#deleteannotations) method to clear all annotations in the currently loaded document. +Use the [deleteAnnotations](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#deleteannotations) method to clear all annotations in the currently loaded document. Example: Clear all annotations in the loaded document diff --git a/Document-Processing/PDF/PDF-Viewer/react/organize-pages/toolbar.md b/Document-Processing/PDF/PDF-Viewer/react/organize-pages/toolbar.md index acbba2ef4..092ccc236 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/organize-pages/toolbar.md +++ b/Document-Processing/PDF/PDF-Viewer/react/organize-pages/toolbar.md @@ -1,6 +1,6 @@ --- layout: post -title: Organize Page Toolbar Customization in React PDF Viewer control | Syncfusion +title: Organize Page Toolbar Customization in React | Syncfusion description: Learn here all about Organize Page Toolbar Customization in Syncfusion React PDF Viewer control of Syncfusion Essential JS 2 and more. platform: document-processing control: PDF Viewer diff --git a/Document-Processing/PDF/PDF-Viewer/react/text-search.md b/Document-Processing/PDF/PDF-Viewer/react/text-search.md index f2c8aebf7..11b5f543b 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/text-search.md +++ b/Document-Processing/PDF/PDF-Viewer/react/text-search.md @@ -200,10 +200,10 @@ export default function WholeWordExample() { The following text search methods are available in the PDF Viewer, -* [**Search text**](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearch/#searchtext):- Searches the target text in the PDF document and highlights the occurrences in the pages. -* [**Search next**](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearch/#searchnext):- Searches the next occurrence of the searched text from the current occurrence of the PDF Viewer. -* [**Search previous**](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearch/#searchprevious):- Searches the previous occurrence of the searched text from the current occurrence of the PDF Viewer. -* [**Cancel text search**](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearch/#canceltextsearch):- The text search can be canceled and the highlighted occurrences from the PDF Viewer can be removed . +* [**Search text**](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearch#searchtext):- Searches the target text in the PDF document and highlights the occurrences in the pages. +* [**Search next**](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearch#searchnext):- Searches the next occurrence of the searched text from the current occurrence of the PDF Viewer. +* [**Search previous**](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearch#searchprevious):- Searches the previous occurrence of the searched text from the current occurrence of the PDF Viewer. +* [**Cancel text search**](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearch#canceltextsearch):- The text search can be canceled and the highlighted occurrences from the PDF Viewer can be removed . ![Alt text](./images/search.png) @@ -566,17 +566,19 @@ The PDF Viewer triggers events during text search operations, allowing you to cu ### textSearchStart -The [textSearchStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#textsearchstartevent) event is raised the moment a search is initiated from the toolbar UI or by calling `textSearch.searchText(...)` programmatically. +The [textSearchStart](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#textsearchstartevent) event is raised the moment a search is initiated from the toolbar UI or by calling `textSearch.searchText(...)` programmatically. - Triggers when: the user submits a term in the search box or when code calls the search API. -- Event arguments include ([TextSearchStartEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearchStartEventArgs/)): +- Event arguments include ([TextSearchStartEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearchStartEventArgs)): - searchText: string — the term to search. - matchCase: boolean — whether case-sensitive search is enabled. - isMatchWholeWord: boolean — whether whole-word matching is enabled. - name: string — event name. - cancel: boolean — set to true to cancel the default search. +{% tabs %} +{% highlight ts tabtitle="Standalone" %} {% raw %} import React from 'react'; @@ -598,19 +600,22 @@ export default function App() { } {% endraw %} {% endhighlight %} +{% endtabs %} ### textSearchHighlight -The [textSearchHighlight](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/#textsearchhighlightevent) event fires whenever an occurrence is highlighted during search or when navigating to next/previous results. +The [textSearchHighlight](https://ej2.syncfusion.com/react/documentation/api/pdfviewer#textsearchhighlightevent) event fires whenever an occurrence is highlighted during search or when navigating to next/previous results. - Triggers when: a match is brought into view and highlighted (including navigation between matches). -- Event arguments include ([TextSearchHighlightEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearchHighlightEventArgs/)): +- Event arguments include ([TextSearchHighlightEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearchHighlightEventArgs)): - bounds: RectangleBoundsModel | RectangleBoundsModel[] — rectangles of the highlighted match. - pageNumber: number — page index where the match is highlighted. - searchText: string — the searched term. - matchCase: boolean — whether case-sensitive search was used. - name: string — event name. +{% tabs %} +{% highlight ts tabtitle="Standalone" %} {% raw %} import React from 'react'; @@ -631,23 +636,26 @@ export default function App() { } {% endraw %} {% endhighlight %} +{% endtabs %} ### textSearchComplete -The [textSearchComplete](https://ej2.syncfusion.com/javascript/documentation/api/pdfviewer/#textsearchcompleteevent) event is raised after the search engine finishes scanning and resolving all matches for the current query. +The [textSearchComplete](https://ej2.syncfusion.com/javascript/documentation/api/pdfviewer#textsearchcompleteevent) event is raised after the search engine finishes scanning and resolving all matches for the current query. - Triggers when: the search for the submitted term has completed across the document. - Typical uses: - Update UI with the total number of matches and enable navigation controls. - Hide loading indicators or show a "no results" message if none were found. - Record analytics for search effectiveness. -- Event arguments include ([TextSearchCompleteEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearchCompleteEventArgs/)): +- Event arguments include ([TextSearchCompleteEventArgs](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/textSearchCompleteEventArgs)): - totalMatches: number — total number of occurrences found. - isMatchFound: boolean — indicates whether at least one match was found. - searchText: string — the searched term. - matchCase: boolean — whether case-sensitive search was used. - name: string — event name. +{% tabs %} +{% highlight ts tabtitle="Standalone" %} {% raw %} import React from 'react'; @@ -668,6 +676,8 @@ export default function App() { } {% endraw %} {% endhighlight %} +{% endtabs %} + ## See also * [Toolbar items](./toolbar) diff --git a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/annotation-toolbar.md b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/annotation-toolbar.md index 2f188ecb3..06795e2ca 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/annotation-toolbar.md +++ b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/annotation-toolbar.md @@ -16,7 +16,7 @@ The annotation toolbar can be customized by showing or hiding default items and Show or hide the annotation toolbar programmatically during initialization or at runtime. -Use the [EnableAnnotationToolbar](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pdfViewerModel/#enableannotationtoolbar) property or the [showAnnotationToolbar](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbar/#showannotationtoolbar) method to toggle visibility. +Use the [EnableAnnotationToolbar](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pdfViewerModel#enableannotationtoolbar) property or the [showAnnotationToolbar](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbar#showannotationtoolbar) method to toggle visibility. The following code snippet explains how to show or hide the annotation toolbar using the `showAnnotationToolbar` method. @@ -104,7 +104,7 @@ ReactDOM.render(, document.getElementById('container')); Choose which tools appear and control their order in the annotation toolbar. -Use [`PdfViewerToolbarSettings`](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbarSettings/) with the [`AnnotationToolbarItems`](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbarSettings/#annotationtoolbaritems) property to choose which tools are displayed in the annotation toolbar. The property accepts a list of [`AnnotationToolbarItem`](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/annotationToolbarItem/) values. Only the items included in this list are shown; any item not listed is hidden. The rendered order follows the sequence of items in the list. +Use [`PdfViewerToolbarSettings`](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbarSettings) with the [`AnnotationToolbarItems`](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbarSettings#annotationtoolbaritems) property to choose which tools are displayed in the annotation toolbar. The property accepts a list of [`AnnotationToolbarItem`](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/annotationToolbarItem) values. Only the items included in this list are shown; any item not listed is hidden. The rendered order follows the sequence of items in the list. The annotation toolbar is presented when entering annotation mode in PDF Viewer and adapts responsively based on the available width. Include the Close tool to allow users to exit the annotation toolbar when needed. diff --git a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/custom-toolbar.md b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/custom-toolbar.md index 06e33eedc..ed8f16378 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/custom-toolbar.md +++ b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/custom-toolbar.md @@ -16,7 +16,7 @@ Follow these steps to create a custom toolbar for the PDF Viewer: **Step 1: Create a simple PDF Viewer sample.** -Follow the steps provided in the [getting started](https://ej2.syncfusion.com/javascript/documentation/pdfviewer/getting-started/) guide to create a basic PDF Viewer sample. +Follow the steps provided in the [getting started](https://ej2.syncfusion.com/javascript/documentation/pdfviewer/getting-started) guide to create a basic PDF Viewer sample. **Step 2: Add HTML elements for the custom toolbar.** diff --git a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/form-designer-toolbar.md b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/form-designer-toolbar.md index b8f647741..eea7401bc 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/form-designer-toolbar.md +++ b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/form-designer-toolbar.md @@ -16,7 +16,7 @@ The form designer toolbar can be customized by showing or hiding default items a Show or hide the form designer toolbar programmatically during initialization or at runtime. -Use the [EnableFormDesigner](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pdfViewerModel/#enableformdesigner) property or the [showFormDesignerToolbar](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbar/#showformdesignertoolbar) method to toggle visibility. +Use the [EnableFormDesigner](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pdfViewerModel#enableformdesigner) property or the [showFormDesignerToolbar](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbar#showformdesignertoolbar) method to toggle visibility. The following code snippet explains how to show or hide the toolbar using the `EnableFormDesigner` property. @@ -89,7 +89,7 @@ export default App; Choose which tools appear and control their order in the form designer toolbar. -Use [`PdfViewerToolbarSettings`](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbarSettings/) with the [`FormDesignerToolbarItems`](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbarSettings/#formdesignertoolbaritems) property to choose which form design tools are available. The property accepts a list of [`FormDesignerToolbarItem`](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/formDesignerToolbarItem/) values. The items you include are both displayed and rendered in the order listed; any items you omit are hidden. This provides a streamlined, user-friendly form design experience across devices. +Use [`PdfViewerToolbarSettings`](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbarSettings) with the [`FormDesignerToolbarItems`](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbarSettings#formdesignertoolbaritems) property to choose which form design tools are available. The property accepts a list of [`FormDesignerToolbarItem`](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/formDesignerToolbarItem) values. The items you include are both displayed and rendered in the order listed; any items you omit are hidden. This provides a streamlined, user-friendly form design experience across devices. The following example demonstrates how to customize the form designer toolbar by configuring specific tools using `FormDesignerToolbarItem`. diff --git a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/primary-toolbar.md b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/primary-toolbar.md index 49112c808..d30a11a6f 100644 --- a/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/primary-toolbar.md +++ b/Document-Processing/PDF/PDF-Viewer/react/toolbar-customization/primary-toolbar.md @@ -1,6 +1,6 @@ --- layout: post -title: Primary Toolbar Customization in React PDF Viewer Component | Syncfusion +title: Primary Toolbar Customization in React PDF Viewer | Syncfusion description: Learn here all about primary toolbar customization in Syncfusion React PDF Viewer component of Syncfusion Essential JS 2 and more. platform: document-processing control: PDF Viewer @@ -8,13 +8,13 @@ documentation: ug domainurl: ##DomainURL## --- -# Primary Toolbar Customization in PDF Viewer Component +# Primary Toolbar Customization in React PDF Viewer The primary toolbar of the PDF Viewer can be customized by rearranging existing items, disabling default items, and adding custom items. New items can be placed at specific index positions among the existing items. ## Show or hide the primary toolbar -Toggle the built-in primary toolbar to create custom toolbar experiences or simplify the UI. In scenarios where a custom toolbar is required, the built-in toolbar can be hidden. Use the [enableToolbar](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pdfViewerModel/#enabletoolbar) property or the [showToolbar](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbar/#showtoolbar) method to show or hide the primary toolbar. +Toggle the built-in primary toolbar to create custom toolbar experiences or simplify the UI. In scenarios where a custom toolbar is required, the built-in toolbar can be hidden. Use the [enableToolbar](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/pdfViewerModel#enabletoolbar) property or the [showToolbar](https://ej2.syncfusion.com/react/documentation/api/pdfviewer/toolbar#showtoolbar) method to show or hide the primary toolbar. Show or hide the toolbar using the `enableToolbar` property: