---
name: syncfusion-blazor-pdf-viewer
description: Implements Syncfusion Blazor PDF Viewer (SfPdfViewer) for viewing and editing PDF documents in Blazor applications. Use this when working with PDF rendering, annotation, text search, form filling, or document navigation in Blazor.
metadata:
  author: Syncfusion Inc
  version: "33.1.44"
---

# Syncfusion Blazor Pdfviewer – UI Sample 

  **NuGet:** `Syncfusion.Blazor.SfPdfViewer` + `Syncfusion.Blazor.Themes`  
  **Namespace:** `Syncfusion.Blazor.SfPdfViewer`

## Generate C# Code for the User's Project *(default)*

**Trigger keywords:** "how to", "add pdfviewer", "code sample", "show me", "example", "snippet", "integrate", "component", "create sample".

**Purpose:** Generate minimal, copy-pasteable C# and Razor code that the user can integrate directly into their Blazor project.

**Workflow:**

**⚠️ CRITICAL — Feature Support Policy (STRICT MODE):**

**FUNDAMENTAL RULE:** Only generate code using APIs and properties that are EXPLICITLY listed in the reference files. ANY deviation is a VIOLATION.

- **MANDATORY CHECKS BEFORE GENERATING ANY CODE:**
  1. Search the reference files for the exact API/property name
  2. Verify it appears in the Method Reference, Properties, or Events tables
  3. If NOT found in ANY reference file, STOP immediately
  4. Do NOT generate or suggest undocumented APIs under any circumstances

- **STRICT ENFORCEMENT - ZERO TOLERANCE:**
  - **NO custom properties** - Only use properties from reference file tables
  - **NO invented methods** - Only use methods from reference file tables
  - **NO workarounds with undefined APIs** - Forbidden
  - **NO assumptions** about undocumented behavior - Forbidden
  - **NO alternative implementations** using guess-work - Forbidden
  - **NO pretending support exists** - Forbidden

- **MANDATORY RESPONSE FOR UNSUPPORTED FEATURES:**
  - **If a requested scenario/feature/API is NOT listed in any reference file, you MUST respond with:**
    ```
    "This feature is not supported in the current Syncfusion Blazor PDF Viewer implementation."
    ```
  - **Then list what IS supported** from the appropriate reference file
  - **Never suggest alternatives** unless explicitly documented in reference files

- **REFERENCE FILE HIERARCHY:**
  - Each reference file contains complete, authoritative documentation for its domain
  - The tables (Method Reference, Properties, Events) are the SOURCE OF TRUTH
  - Content outside these tables in reference files is explanatory only
  - Do NOT extend beyond what appears in the reference file tables

- **AUDIT YOUR GENERATION:**
  - Before providing any code, verify EVERY API used appears in a reference file table
  - Document which reference file each API comes from
  - If you cannot cite a reference file table entry, DELETE that code

- **This is a CRITICAL REQUIREMENT.** Violations compromise the skill's integrity and reliability.

#### Step 1 — Detect the Application Type *(REQUIRED - DO NOT SKIP)*
- **Use file_search and read_file tools to inspect workspace project files:**
  - `.csproj` file (project configuration)
  - `Program.cs` (startup configuration)
  - `_Imports.razor` (namespace imports)
  - `App.razor` (root component)
  - Any existing `.razor` files in Components/Pages
- **Output:** Confirm the detected application type (e.g., "Blazor WebApp" or "Blazor Server") before proceeding.

#### Step 2 — Generate Code from Reference Files Only *(REQUIRED)*
- **Before generating:** Confirm that Steps 1 are complete
- Read the relevant `references/*.md` file(s) for the requested feature
- Cross-reference EVERY API, property, and method against these tables
- **DECLARATIVE-ONLY APPROACH (MANDATORY - NO LIFECYCLE METHODS):**
  - Use ONLY property binding in Razor markup similar lifecycle methods.
  - Configure all PDF Viewer properties directly as component attributes
- **MANDATORY:** Before generating ANY code, verify that reference files exist and are accessible
- **Read the appropriate reference file(s)** for the requested feature:
  - Use `read_file` tool on relevant `references/*.md` files
  - Confirm file contains Methods/Properties/Events tables
  - Verify tables are complete and readable
- **If reference file is missing or cannot be read:**
  - STOP code generation
  - Respond: "Reference file for this feature is not available. Please ensure all reference files are present in the `references/` directory."
  - List the missing reference file name
- **This is a BLOCKER step:** Cannot proceed without reference file validation
- If an API/property does NOT appear in the reference file table, DO NOT USE IT
- Do NOT invent, guess, or suggest any API, method, property, class, or namespace not explicitly present in the reference files

### Code References

All templates and operation snippets live in `references/*.md`. Each file is a focused snippet or template the agent will combine when generating samples.

**Flow:** Always start with [getting-started.md](references/getting-started.md), then merge matched features into its anchors (PROPS, EVENTS, UI_BUTTONS, HANDLERS). If no keyword matches, return only the basic sample.

| File | Purpose |
|---|---|
| [getting-started.md](references/getting-started.md) | Foundation setup and minimal PDF Viewer component. Includes complete setup prerequisites. Provides minimal working component with DocumentPath, Height, Width properties and feature anchor points. Use as foundation for all PDF Viewer implementations with proper project setup and configuration validation. |
| [toolbar-properties.md](references/toolbar-properties.md) | Comprehensive toolbar customization using PdfViewerToolbarSettings. Includes 11 properties (ShowTooltip, EnableToolbar, EnableAnnotationToolbar, IsAnnotationToolbarVisible, ToolbarSettings, ToolbarClicked, ToolbarItems, AnnotationToolbarItems, FormDesignerToolbarItems, MobileToolbarItems, RedactionToolbarItems, CustomToolbarItems), 5 specialized toolbars (Primary, Annotation, FormDesigner, Mobile, Redaction) with 14/22/9/7/7 items respectively, and 7 code examples. Use to simplify UI for workflows, create role-based tool access, optimize mobile experience, add custom functionality, and control annotation/form/redaction capabilities. |
| [toolbar-methods.md](references/toolbar-methods.md) | Programmatic control methods for toolbar visibility and behavior. Includes 5 methods (ShowToolbarAsync, ShowAnnotationToolbar, ShowRedactionToolbar, EnableToolbarItemsAsync, ShowToolbarItemsAsync), 14 toolbar items for granular control (OpenOption, PrintOption, DownloadOption, SearchOption, MagnificationTool, PageNavigationTool, SelectionTool, PanTool, AnnotationEditTool, CommentTool, FormDesigner, SubmitForm, UndoRedoTool, Redaction). |
| [magnification.md](references/magnification.md) | Programmatic zoom/magnification control with 10 properties, 7 methods, 1 event, and comprehensive decision guidance. Properties: ZoomMode (Default/FitToPage/FitToWidth/FitToHeight), ZoomValue (10-400%), MinZoomValue, MaxZoomValue , EnableMagnification, EnablePinchZoom, EnableZoomOptimization, RestrictZoomRequest, ZoomValueChanged callback, TileRenderingSettings. Methods: ZoomAsync(exact %), ZoomInAsync (step to preset), ZoomOutAsync (step to preset), FitToPageAsync, FitToWidthAsync, FitToHeightAsync, GetZoomPercentageAsync. Events: ZoomChanged (CurrentZoomValue, PreviousZoomValue). |
| [text-search.md](references/text-search.md) | Complete text search functionality for PDF document content discovery and navigation. EnableTextSearch property to toggle search availability. Text search methods (4 total): SearchTextAsync (string searchText, bool isMatchCase for case-sensitive/insensitive search), SearchNextAsync (navigate to next result), SearchPreviousAsync (navigate to previous result), CancelTextSearchAsync (clear highlights and cancel). Search configuration: PdfViewerTextSearchColorSettings with SearchColor (found text color), SearchHighlightColor (highlighted text color) for visual customization. Search events (3 total): OnTextSearchStart (SearchText, MatchCase parameters), OnTextSearchComplete (SearchText, MatchCase for completion tracking), OnTextSearchHighlight (PageNumber, coordinates for result location tracking). |
| [annotation-events.md](references/annotation-events.md) | Comprehensive reference for annotation lifecycle, interaction, and signature-specific events (20+ events total). Includes event subscription patterns, event categories (add/modify/delete, select/move/resize, signature operations), complete event list with detailed arguments and properties, and supporting type definitions.|
| [annotation-properties.md](references/annotation-properties.md) | Reference for enabling/disabling 13+ annotation feature types (FreeText, Shape, TextMarkup, StickyNotes, Ink, Handwritten Signature, Measure, Stamp, Image) via boolean properties. Includes programmatic methods (SetAnnotationModeAsync, UpdateMeasurementSettingsAsync), export configuration (filename, format), signature control (editability, digital appearance), and comprehensive type definitions (AnnotationType, DynamicStampItem, SignStampItem, StandardBusinessStampItem). |
| [annotation-settings.md](references/annotation-settings.md) | Configuration for default appearance, behavior, size constraints, and restrictions across 20+ annotation types (22+ settings classes). Properties control colors (stroke, fill, font, border), size constraints (min/max width/height), locking (IsLock, AllowedInteractions), print/download inclusion, author info. |
| [redaction-settings.md](references/redaction-settings.md) | Complete configuration API for redaction settings to permanently remove sensitive information from PDFs. Core overlay properties (9 total): OverlayText, MarkerFillColor, MarkerBorderColor, MarkerOpacity (transparency 0-1), FontColor, FontSize, FontFamily, IsRepeat, TextAlignment. Security and control properties: AllowedInteractions, IsLock, Author, CustomData, IsPrint. Size constraints: MinWidth, MaxWidth, MinHeight, MaxHeight for dimensional control. Download/Print control: SkipPrint, SkipDownload, IsPrint for document persistence. Visual styling: BorderDashArray, FillColor, Opacity, StrokeColor, Thickness. Annotation selector settings. |
| [programmatical-annotation-methods.md](references/programmatical-annotation-methods.md) | Complete API for programmatic annotation lifecycle management, redaction, and export/import workflows. Annotation CRUD methods (15 total): AddAnnotationAsync (4 variants for basic/DynamicStamp/SignStamp/StandardBusinessStamp), AddAnnotationsAsync (batch), EditAnnotationAsync, DeleteAnnotationAsync (3 variants: no params/by object/by ID), DeleteAnnotationsAsync (3 variants), GetAnnotationsAsync, SelectAnnotationAsync (2 variants), ClearSelectionAsync. Redaction methods: AddPageRedactionsAsync, RedactAsync (permanent). Export/Import: ExportAnnotationAsync (Json/Xfdf formats), ExportAnnotationAsStreamAsync, ExportAnnotationsAsObjectAsync, ImportAnnotationAsync (stream/object). |
| [command-manager.md](references/command-manager.md) | Dual feature reference for custom keyboard shortcuts and comment panel customization. Command Manager: PdfViewerCommandManager with KeyboardCommand/KeyGesture for mapping key combinations to custom actions via CommandExecutedEventArgs. Comment Panel Settings: PdfViewerCommentPanelSettings with Multiline (enable detailed multi-line comments), DateTimeFormat (custom timestamp formats), and visibility control (CommentPanelVisible bool, CommentPanelVisibleChanged event for two-way binding). |
| [document-properties.md](references/document-properties.md) | Document-level configuration, metadata, and lifecycle events for PDF handling. Properties: EnableChunkMessages (large file processing). Events (8 total): DocumentLoaded, DocumentLoadFailed, DocumentUnloaded, DocumentEdited (EditingAction: AnnotationAdded/Deleted/Updated, FormFieldImported/Updated), PageMouseover (PageX/Y coordinates), OnPageClick (click coordinates). |
| [file-save-properties.md](references/file-save-properties.md) | File download and annotation export/import functionality with complete event-driven workflows. Property: EnableDownload (toggle for toolbar download button). Method: DownloadAsync(references) for programmatic document download. Events (8 total): DownloadStart (FileName), DownloadEnd (DownloadDocument base64 string, FileName), ExportStarted, ExportSucceed (FileName), ExportFailed (ErrorDetails), ImportStarted, ImportSucceed, ImportFailed (ErrorDetails). Use for document persistence workflows, download tracking and logging, annotation export/import operations, user feedback on file operations, error handling for failed imports/exports. |
| [ui-properties.md](references/ui-properties.md) | Core UI properties and hyperlink interaction events for customizing the viewer experience. Includes 4 properties (EnableDesktopMode, EnableErrorDialog, EnableHyperlink, EnableRtl) for controlling UI behavior and device modes, 3 events (OnHyperlinkClick, OnHyperlinkMouseOver, Created) for handling hyperlink navigation and lifecycle, and 4 code examples. Use to customize viewer appearance for different devices, control hyperlink navigation, manage error handling, and support internationalization (RTL). |
| [form-field-properties.md](references/form-field-properties.md) | Core form field configuration and design mode control (4 properties, 1 method). Properties: EnableFormDesigner (enable/disable form designer tool), EnableFormFields (control user interaction with existing fields), EnableFormFieldsValidation (enable automatic validation), IsFormFieldDocument (read-only detection of form fields in PDF), EnableAutoComplete (form field auto-completion). Method: SetFormDrawingModeAsync(FormFieldType?) for programmatically setting form field drawing mode with support for 8 field types (Button, CheckBox, DropDown, ListBox, Password, RadioButton, SignatureField, Textbox). Use for form designer workflow control, form field interaction management, auto-validation setup, document capability detection, and dynamic form field type switching. |
| [form-field-settings.md](references/form-field-settings.md) | Visual appearance and styling configuration for form fields with 7 properties and comprehensive decision guidance. Properties: BackgroundColor (HEX/RGB/CSS colors), BorderColor, Color (text color), FontFamily, FontSize (double type), FontStyle, Thickness. |
| [form-designer-events.md](references/form-designer-events.md) | Comprehensive form field event reference for lifecycle, interaction, validation, and data management (20+ events). Event categories: Lifecycle (FormFieldAdding/Added/Deleted/PropertyChanged with cancellation support), Interaction (Selected/Unselected/Click/DoubleClick/Resized/FocusIn/FocusOut with coordinates), Mouse (MouseEnter/Leave with PageX/PageY), Validation (ValidateFormFields with UnfilledFields dictionary), Import/Export (Importing/Imported/ImportFailed, Exporting/Exported/ExportFailed with ErrorDetails), Designer Mode (IsDesignerModeChanged). |
| [programmatical-form-field-methods.md](references/programmatical-form-field-methods.md) | Complete API for programmatic form field lifecycle management, batch operations, and export/import workflows. Form field CRUD methods (13 total): AddFormFieldsAsync (batch add), GetFormFieldsAsync (retrieve all), UpdateFormFieldsAsync (single/batch variants), DeleteFormFieldsAsync (3 variants: all/selected/by IDs), SelectFormFieldAsync (by object/by ID), RetrieveFormFieldsAsync (legacy). Export/Import: ExportFormFieldsAsync (with format parameter), ExportFormFieldsAsObjectAsync, ImportFormFieldsAsync (Dictionary/Stream variants with format parameter). |
| [thumbnail-bookmark.md](references/thumbnail-bookmark.md) | Comprehensive reference for programmatic navigation, text selection, and thumbnail/bookmark panel management. Includes 5 methods (ClearTextSelectionAsync, GetBookmarksAsync, GoToBookmarkAsync, OpenThumbnailPaneAsync, SelectTextRegionAsync), 4 UI properties (EnableBookmarkPanel, EnableTextSelection, EnableThumbnailPanel, IsThumbnailPanelOpen), and 3 interaction events (OnTextSelectionEnd, OnTextSelectionStart, OnThumbnailClick). Use to implement custom navigation UIs, programmatic text highlighting, bookmark-based workflows, and text selection management. |
| [contextmenu-settings.md](references/contextmenu-settings.md) | When the user needs to customize the PDF Viewer's as context menu settings and its properties. It used to customize the options in the context menu feature options modification and describes about it behaviour. |
| [undo-redo-properties.md](references/undo-redo-properties.md) | Comprehensive undo/redo functionality for tracking and reversing document changes. Includes 4 properties (CanUndo, CanUndoChanged, CanRedo, CanRedoChanged) for tracking undo/redo state with event callbacks for two-way binding, 2 async methods (UndoAsync, RedoAsync) for performing undo/redo operations, and 2 code examples. Tracks all user actions including annotations, form field entries, edits, and modifications. Use to implement undo/redo buttons, track document edit history, provide keyboard shortcuts (Ctrl+Z/Ctrl+Y), and manage document state changes. |
| [navigation-methods.md](references/navigation-methods.md) | Programmatic page navigation control and document information retrieval (9 methods total). Methods: GoToFirstPageAsync/GoToLastPageAsync/GoToNextPageAsync/GoToPreviousPageAsync, GoToPageAsync for jumps (1-based indexing), GetPageCountAsync (async total page count), GetPageDetails (sync page metadata List<PageInfo>), ShowNavigationToolbarAsync(bool) (toolbar visibility), ToggleItemByIndex(int) (panel toggle). Implementation notes: 1-based indexing, all GoTo* methods async (require await), GetPageCountAsync async, GetPageDetails synchronous, invalid page numbers keep current page. |
| [navigation-properties.md](references/navigation-properties.md) | Properties for page state tracking, navigation toolbar customization, and UI synchronization in the PDF viewer. Includes CurrentPageNumber, PageCount, and event callbacks (CurrentPageNumberChanged, PageCountChanged) for real-time page monitoring. Configure NavigationToolbarSettings to show/hide built-in items (Thumbnails, Bookmarks, CommentPanel, PageOrganizer) or inject custom toolbar buttons and separators for the Navigation Toolbar |
| [page-organizer.md](references/page-organizer.md) | Complete API for programmatic page manipulation, document structure editing, and page organizer UI configuration. Page operation methods (8 total): DeletePagesAsync, DuplicatePagesAsync, ExtractPagesAsync, ExtractPagesAsStreamAsync, InsertPagesAsync, InsertBlankPagesAsync, MovePagesAsync, RotatePagesAsync, RotatePagesToAngleAsync support index-based (0-based) page operations. PageOrganizerSettings provides feature control (CanDelete, CanInsert, CanRotate, CanDuplicate, CanRearrange, CanImport, CanExtractPages), thumbnail zoom management (ImageZoom, ShowImageZoomingSlider, ImageZoomMin/Max), and footer button visibility (Save/SaveAs). Events: PageOrganizerSaveRequested, PageOrganizerZoomChanged, PageSelected (SelectedPages list) for save/zoom workflows. |
| [page-organizer-settings.md](references/page-organizer-settings.md) | Dedicated settings configuration for the page organizer feature. Properties (12 total): CanDelete, CanInsert, CanRotate, CanDuplicate, CanRearrange, CanImport, CanExtractPages (bool feature toggles), ImageZoom (thumbnail zoom level), ShowImageZoomingSlider, ImageZoomMin/ImageZoomMax, FooterButtons (FooterButton enum for Save/SaveAs visibility). Use with PageOrganizerSettings tag to granularly control which page operations are permitted and configure thumbnail zoom behavior. |
| [print.md](references/print.md) | Print capabilities configuration, quality control, and event-driven workflows for PDF documents. Print control properties (4 total): EnablePrint (bool toggle for toolbar print button), EnablePrintRotation (bool auto-rotate landscape documents on print), PrintScaleFactor (quality of print image), PrintMode (Default/NewWindow enum for print dialog location). Print method: PrintAsync(references) for programmatic printing. Print events (2 total): PrintStart (Cancel bool for permission validation, FileName for document tracking), PrintEnd (FileName for audit logging and post-print actions). |
| [pdfviewer-properties.md](references/pdfviewer-properties.md) | General configuration properties of the Blazor SfPdfViewer component controlling UI appearance and viewer behavior. Properties (15 total): Height, Width (scrollable dimensions), Id (DOM element ID), CssClass (custom styling), DocumentPath (initial PDF path), DownloadFileName (download file name), Locale (culture/localization), InteractionMode, HyperlinkOpenState, CustomFonts (local font paths for document text), FallbackFontCollection (Dictionary<string, Stream> for custom FreeText fonts), FontFamilies (preferred font list), RetryCount (service call retry count), IsDocumentEdited (read-only edit state tracking). Use to configure initial viewer appearance, font support, interaction behavior, and localization. |
| [pdfviewer-methods.md](references/pdfviewer-methods.md) | Core lifecycle and document operation methods of the Blazor SfPdfViewer component. Methods (8 total): LoadAsync(string/Stream/byte[], password) for loading PDFs from path/URL/stream/byte array, SaveAsync(filePath) for server-side save, UnloadAsync(references) for memory cleanup, GetDocumentAsync(references) to retrieve modified document as byte[], UpdateViewerContainerAsync(references) for responsive layout reflow, DownloadAsync(references) for browser download, Dispose(references)/Dispose(bool) for resource cleanup. Use for programmatic document lifecycle management, loading PDFs from different sources, saving changes, and container responsiveness. |
| [annotation-methods.md](references/annotation-methods.md) | Programmatic annotation mode control methods for the Blazor SfPdfViewer. Methods (2 total): SetAnnotationModeAsync(AnnotationType) to activate a specific annotation type for next user interaction, SetAnnotationModeAsync(AnnotationType, DynamicStampItem?, SignStampItem?, StandardBusinessStampItem?) overload for stamp annotation types (Dynamic/Sign/StandardBusiness), UpdateMeasurementSettingsAsync(references) to update measure settings for existing measure annotations. Use to programmatically switch annotation modes without toolbar interaction, implement custom annotation toolbars, and automate annotation workflows. |
| [annotation-selector-settings.md](references/annotation-selector-settings.md) | Global annotation selector appearance configuration via PdfViewerAnnotationSelectorSettings. Properties (9 total): ResizerBorderColor (resizer handle border), ResizerCursorType, ResizerFillColor (resizer handle fill), ResizerLocation, ResizerShape (AnnotationResizerShape: Square/Circle), ResizerSize (handle size in px), SelectionBorderColor (selection outline color), SelectionBorderThickness (selection border width 1–10, default 1), SelectorLineDashArray (dash pattern double[]). Use with PdfViewerAnnotationSelectorSettings tag for common selector styling across all annotation types. |
| [area-annotation-settings.md](references/area-annotation-settings.md) | Default appearance and behavior configuration for area annotations via PdfViewerAreaSettings. Properties (17 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness. Use to set default area annotation appearance, size constraints, lock behavior, and print/download inclusion. |
| [arrow-annotation-settings.md](references/arrow-annotation-settings.md) | Default appearance and behavior configuration for arrow annotations via PdfViewerArrowSettings. Properties (19 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness, LineHeadEndStyle, LineHeadStartStyle. Use to configure default arrow annotation styling including head styles for both ends. |
| [circle-annotation-settings.md](references/circle-annotation-settings.md) | Default appearance and behavior configuration for circle annotations via PdfViewerCircleSettings. Properties (17 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness. Use to set default circle annotation appearance, size constraints, lock behavior, and print/download inclusion. |
| [command-panel.md](references/command-panel.md) | Comment panel visibility and behavior configuration for the PDF Viewer. Properties (3 total): EnableCommentPanel (bool — enables/disables comment panel feature), CommentPanelVisible (bool, default false — show/hide the panel UI), CommentPanelVisibleChanged (EventCallback<bool> — two-way binding callback). CommentPanelSettings: Multiline (bool, default false — enable multi-line text boxes), DateTimeFormat (string — custom timestamp format). Use to control comment panel availability, visibility state, and comment entry UX for annotation review workflows. |
| [custom-stamp-annotation-settings.md](references/custom-stamp-annotation-settings.md) | Default appearance and behavior configuration for custom stamp/image annotations via PdfViewerCustomStampSettings. Properties (21 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness, Height, Width, CustomStamps (List<PdfViewerCustomStamp> with CustomStampName and CustomStampImageSource), EnableCustomStamp (bool, default true), IsAddToMenu (bool — persist new stamps in menu). Use to configure custom image stamps and manage the stamp menu collection. |
| [distance-annotation-settings.md](references/distance-annotation-settings.md) | Default appearance and behavior configuration for distance measurement annotations via PdfViewerDistanceSettings. Properties (20 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness, LineHeadEndStyle, LineHeadStartStyle, LeaderLength. Use to configure distance measurement annotation defaults including line head styles and leader length. |
| [free-text-annotation-settings.md](references/free-text-annotation-settings.md) | Default appearance and behavior configuration for free text annotations via PdfViewerFreeTextSettings. Properties (27 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, Opacity, Height, Width, AllowEditTextOnly (bool — restrict to text edits only), AutoFit (bool — auto-resize to content), BorderColor, BorderStyle, BorderThickness, DefaultText, FillColor, FontColor, FontFamily, FontSize (int, default 16), FontStyle, TextAlignment. Use to fully customize free text annotation default appearance and editing behavior. |
| [handwritten-signature-settings.md](references/handwritten-signature-settings.md) | Default appearance and behavior configuration for handwritten signature annotations via PdfViewerHandwrittenSignatureSettings. Properties (19 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness, Height, Width, SignatureDialogSettings (PdfViewerSignatureDialogSettings with DisplayMode, HideSaveSignature, SignatureFonts). Use to configure handwritten signature defaults including the signature capture dialog options. |
| [highlight-annotation-settings.md](references/highlight-annotation-settings.md) | Default appearance and behavior configuration for highlight annotations via PdfViewerHighlightSettings. Properties (11 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, Opacity, Color, EnableMultiPageAnnotation (bool — allow multi-page highlighting), EnableTextMarkupResizer (bool — show resize handles). Use to set highlight annotation defaults including multi-page support and resizer visibility. |
| [ink-annotation-settings.md](references/ink-annotation-settings.md) | Default appearance and behavior configuration for ink annotations via PdfViewerInkAnnotationSettings. Properties (18 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness, Height, Width. Use to configure default ink/freehand annotation appearance and size constraints. |
| [line-annotation-settings.md](references/line-annotation-settings.md) | Default appearance and behavior configuration for line annotations via PdfViewerLineSettings. Properties (19 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness, LineHeadEndStyle, LineHeadStartStyle. Use to configure default line annotation styling including configurable line head start and end styles. |
| [measurement-annotations-settings.md](references/measurement-annotations-settings.md) | Global measurement unit and scale configuration for all measurement annotations via PdfViewerMeasurementSettings. Properties (4 total): ConversionUnit (CalibrationUnit enum), Depth (int), DisplayUnit (CalibrationUnit enum), ScaleRatio (double — multiplied against actual measurement for display). Use to set consistent measurement units and scale ratios across all distance, perimeter, area, radius, and volume measurement annotations. |
| [navigation-toolbar-settings.md](references/navigation-toolbar-settings.md) | Navigation toolbar and panel configuration for the left-side navigation UI. Related properties: EnableNavigationToolbar (bool — show/hide left navigation toolbar), EnableNavigationPanel (bool — enable modern navigation panel for custom items). NavigationToolbarSettings: BuiltInItems (List<NavigationToolbarItem>: Thumbnails, Bookmarks, CommentPanel, PageOrganizer), CustomItems (List<CustomNavigationToolbarItem> with Name, HeaderText, IconCss, Index, TooltipText, ItemType, Template for RenderFragment panel content). Use to customize which navigation panels appear and inject fully custom panel templates with interactive content. |
| [perimeter-annotation-settings.md](references/perimeter-annotation-settings.md) | Default appearance and behavior configuration for perimeter measurement annotations via PdfViewerPerimeterSettings. Properties (17 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness. Use to set default perimeter measurement annotation appearance, size constraints, and interaction restrictions. |
| [polygon-annotation-settings.md](references/polygon-annotation-settings.md) | Default appearance and behavior configuration for polygon annotations via PdfViewerPolygonSettings. Properties (17 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness. Use to set default polygon annotation appearance, size constraints, lock behavior, and print/download inclusion. |
| [radius-annotation-settings.md](references/radius-annotation-settings.md) | Default appearance and behavior configuration for radius measurement annotations via PdfViewerRadiusSettings. Properties (17 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness. Use to set default radius measurement annotation appearance, size constraints, and interaction restrictions. |
| [rectangle-annotation-settings.md](references/rectangle-annotation-settings.md) | Default appearance and behavior configuration for rectangle annotations via PdfViewerRectangleSettings. Properties (17 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness. Use to set default rectangle annotation appearance, size constraints, lock behavior, and print/download inclusion. |
| [signature-annotation-events.md](references/signature-annotation-events.md) | Lifecycle and interaction events specific to handwritten signature annotations (7 events total). Events: AddSignature (Bound, Opacity, StrokeColor, Thickness, Id, PageNumber), MoveSignature (CurrentPosition, PreviousPosition, Opacity, StrokeColor, Thickness, Id, PageNumber), RemoveSignature (Bound, Id, PageNumber), ResizeSignature (CurrentPosition, PreviousPosition, Opacity, StrokeColor, Thickness, Id, PageNumber), SignaturePropertiesChange (IsOpacityChanged, IsStrokeColorChanged, IsThicknessChanged, NewValue, OldValue, Id, PageNumber), SignatureSelected (Id, PageNumber), SignatureUnselected (Id, PageNumber). Use to track signature lifecycle, validate changes, and synchronize signature state with application data. |
| [squiggly-annotation-settings.md](references/squiggly-annotation-settings.md) | Default appearance and behavior configuration for squiggly annotations via PdfViewerSquigglySettings. Properties (11 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, Opacity, Color (squiggly color), EnableMultiPageAnnotation (bool), EnableTextMarkupResizer (bool). Use to set squiggly text markup annotation defaults including multi-page support and resizer visibility. |
| [stamp-annotation-settings.md](references/stamp-annotation-settings.md) | Default appearance and behavior configuration for stamp/image annotations via PdfViewerStampSettings. Properties (22 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness, Height, Width, DateTimeFormat (custom date/time format for dynamic stamps), DynamicStamps (List<DynamicStampItem>), SignStamps (List<SignStampItem>), StandardBusinessStamps (List<StandardBusinessStampItem>). Use to configure which built-in stamp types appear in the annotation toolbar and customize stamp defaults. |
| [stickynotes-annotation-settings.md](references/stickynotes-annotation-settings.md) | Default appearance and behavior configuration for sticky notes annotations via PdfViewerStickyNotesSettings. Properties (11 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, Opacity. Use to set sticky note annotation defaults including interaction restrictions, size constraints, and print/download behavior. |
| [strikethrough-annotation-settings.md](references/strikethrough-annotation-settings.md) | Default appearance and behavior configuration for strikethrough annotations via PdfViewerStrikethroughSettings. Properties (11 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, Opacity, Color (strikethrough color), EnableMultiPageAnnotation (bool), EnableTextMarkupResizer (bool). Use to set strikethrough text markup annotation defaults including multi-page support and resizer visibility. |
| [text-selection-and-extraction.md](references/text-selection-and-extraction.md) | Describes about the functionalities of the text selection and text extraction process via EnableTextSelection, IsExtractText for enable or disable properties, ClearTextSelectionAsync and SelectTextRegionAsync methods for programmtical text selection, OnTextSelectionEnd, OnTextSelectionStart, ExtractTextCompleted events for tracking the process. |
| [tile-rendering.md](references/tile-rendering.md) | Tile rendering configuration for performance optimization via PdfViewerTileRenderingSettings. Properties (3 total): EnableTileRendering (bool — enable/disable tile-based rendering), X (int — horizontal tile coordinate count), Y (int — vertical tile coordinate count). Use to enable tile rendering for large or complex PDFs to improve rendering performance by splitting pages into tiles. |
| [underline-annotation-settings.md](references/underline-annotation-settings.md) | Default appearance and behavior configuration for underline annotations via PdfViewerUnderlineSettings. Properties (11 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, Opacity (0–1), Color (underline color), EnableMultiPageAnnotation (bool), EnableTextMarkupResizer (bool). Use to set underline text markup annotation defaults including multi-page support and resizer visibility. |
| [volume-annotation-settings.md](references/volume-annotation-settings.md) | Default appearance and behavior configuration for volume measurement annotations via PdfViewerVolumeSettings. Properties (17 total): AllowedInteractions, Author, CustomData, IsLock, IsPrint, MaxHeight, MaxWidth, MinHeight, MinWidth, SkipDownload, SkipPrint, AnnotationSelectorSettings, BorderDashArray, FillColor, Opacity, StrokeColor, Thickness. Use to set default volume measurement annotation appearance, size constraints, and interaction restrictions. |
| [azure-container-deployment.md](references/azure-container-deployment.md) | Comprehensive guide for deploying Blazor PDF Viewer applications to Azure using Docker containers, Azure Container Registry (ACR), and Azure App Service. Covers prerequisites, Dockerfile configurations for Server and WebAssembly modes, native dependency requirements (libgdiplus), local Docker build/test commands, ACR setup and image push steps, Azure App Service creation and container configuration, troubleshooting guides for common deployment issues, and best practices for production deployment. Use when providing deployment guidance, answering Azure container questions, or explaining Docker containerization for PDF Viewer applications. |
| [annotation-enum-properties.md](references/annotation-enum-properties.md) | Enum definitions for annotation types. It used to provide the provide classes and enum properties for annotation common properties. |
| [annotation-general-enum-properties.md](references/annotation-general-enum-properties.md) | General annotation enum properties. It used to provide the provide classes and enum properties for annotation methods. (e.g., `Bound` type) |
| [annotation-settings-enum-properties.md](references/annotation-settings-enum-properties.md) | Enum properties for annotation settings. It used to provide the provide classes and enum properties for annotation settings properties. |
| [form-fields-enum-properties.md](references/form-fields-enum-properties.md) | Enum properties for form fields. It used to provide the provide classes and enum properties for form field related properties. |
| [general-enum-properties.md](references/general-enum-properties.md) | General enums (`InteractionMode`, `ZoomMode`, `ContextMenuAction`, etc.). It used to provide the provide classes and enum properties for common properties. |
| [keyboard-enum-properties.md](references/keyboard-enum-properties.md) | Keyboard shortcut enum properties. It used to provide the provide classes and enum properties for keyboard actions. |
| [pdf-annotation-enum-properties.md](references/pdf-annotation-enum-properties.md) | PDF-specific annotation enums (e.g., `AllowedInteraction`). It used to provide the provide classes and enum properties for annotations. |
| [toolbar-enum-properties.md](references/toolbar-enum-properties.md) | Toolbar item enums (`ToolbarItem`, `AnnotationToolbarItem`, etc.).  It used to provide the provide classes and enum properties for toolbar properties.  |

## Quick Start Example

```csharp
@page "/pdfviewer-sample"
@using Syncfusion.Blazor
@using Syncfusion.Blazor.SfPdfViewer
@using Syncfusion.Blazor.Buttons

<!-- BASE_PATCH:UI_BUTTONS -->
<!-- Buttons from feature files will be inserted here -->

<SfPdfViewer2 @ref="_pdfviewer"
               DocumentPath="https://cdn.syncfusion.com/content/pdf/pdf-succinctly.pdf"
               Height="100%"
               Width="100%">
               <!-- "PROPERTY" should be placed here -->
               <!-- "EVENTS" should be placed here-->
</SfPdfViewer2>

@code {
    private SfPdfViewer2 _pdfviewer { get; set; }
}
```

---
