Bug description
On Flutter Web, SfPdfViewer does not show a signature stamp that is clearly present when the same PDF is downloaded and opened in Chrome’s native PDF viewer (or Preview / Adobe).
Sample file (attached):
Alliances - Mobbiz - Partnership Agreement - Indra_15JUNE2026v.254 (1).pdf
- Page 5 – Devops Outsourcing Inc.: handwritten ink signature is visible in SfPdfViewer (drawn into page content).
- Page 5 – Indra Philippines Inc.: digital-style stamp (“Digitally signed by Diego Antonio P. Castillejo…”) is missing in SfPdfViewer, but visible after Download → open in Chrome.
This is related in theme to #2506, but our case is Web, and upgrading the Syncfusion package alone did not restore the Indra stamp in the built-in preview.
PDF structure (from inspection of the attached file):
- Page 5 has a /Subtype /Widget + /FT /Sig annotation named Signature2 with an /AP appearance stream that contains the “Digitally signed by…” text.
- AcroForm.Fields is empty; there is no /V cryptographic signature dictionary on that widget (Apple Preview / Quartz-style appearance).
- Producer: macOS Quartz PDFContext; Creator: Microsoft Word.
Why it fails with current Syncfusion Web path:
- syncfusion_pdfviewer_web renders via pdf.js with annotationMode = 0 (DISABLE) → Annot appearances are not painted.
- _renderDigitalSignatures() only flattens fields in document.form.fields when signature != null → this Annot-only stamp is never flattened into page content.
Expected Behavior
- SfPdfViewer on Web should show the Indra signature appearance on page 5 the same way Chrome does when opening the attached PDF.
Alliances - Mobbiz - Partnership Agreement - Indra_15JUNE2026v.254 (1).pdf
Actual Behavior
- In-app preview: Indra stamp area blank; Devops ink signature still shows.
- Download → Chrome: both signatures / stamp visible.
Steps to reproduce
- Create a Flutter Web app with syncfusion_flutter_pdfviewer 32.2.9 (and required pdf.js setup in web/index.html).
- Load the attached PDF with SfPdfViewer.memory (or .file).
- Go to page 5.
- Observe Indra block has no digital stamp.
- Open the same file in Chrome’s PDF viewer → stamp is present.
Code sample
@override Widget build(BuildContext context) { return Scaffold( body: SfPdfViewer.memory( pdfBytes, // attached partnership agreement PDF onDocumentLoadFailed: (PdfDocumentLoadFailedDetails details) { print('Load Failed: ${details.description}'); }, ), ); }
Workaround Used
Temporary local override of syncfusion_pdfviewer_web: set pdf.js annotationMode from 0 to 1 (ENABLE) in the page/tile render settings. With that change, the Indra stamp appears in preview. We consider this temporary until Syncfusion provides an official fix/API.
`// syncfusion_pdfviewer_web – render settings
..annotationMode = 1; // stock package uses 0 (DISABLE)
Alliances - Mobbiz - Partnership Agreement - Indra_15JUNE2026v.254 (1).pdf
`
Screenshots or Video
BAD:
GOOD:
Alliances - Mobbiz - Partnership Agreement - Indra_15JUNE2026v.254 (1).pdf
Stack Traces
No stack trace — silent visual rendering issue, not a crash. See description above.
On which target platforms have you observed this bug?
Web
Flutter Doctor output
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.44.8, on macOS 15.6 24G84 darwin-arm64, locale en)
[✓] Android toolchain - develop for Android devices (Android SDK version 36.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 26.3)
[✓] Chrome - develop for the web
[✓] Connected device (4 available)
[✓] Network resources
• No issues found!
Bug description
On Flutter Web, SfPdfViewer does not show a signature stamp that is clearly present when the same PDF is downloaded and opened in Chrome’s native PDF viewer (or Preview / Adobe).
Sample file (attached):
Alliances - Mobbiz - Partnership Agreement - Indra_15JUNE2026v.254 (1).pdf
This is related in theme to #2506, but our case is Web, and upgrading the Syncfusion package alone did not restore the Indra stamp in the built-in preview.
PDF structure (from inspection of the attached file):
Why it fails with current Syncfusion Web path:
Expected Behavior
Alliances - Mobbiz - Partnership Agreement - Indra_15JUNE2026v.254 (1).pdf
Actual Behavior
Steps to reproduce
Code sample
@override Widget build(BuildContext context) { return Scaffold( body: SfPdfViewer.memory( pdfBytes, // attached partnership agreement PDF onDocumentLoadFailed: (PdfDocumentLoadFailedDetails details) { print('Load Failed: ${details.description}'); }, ), ); }Workaround Used
Temporary local override of syncfusion_pdfviewer_web: set pdf.js annotationMode from 0 to 1 (ENABLE) in the page/tile render settings. With that change, the Indra stamp appears in preview. We consider this temporary until Syncfusion provides an official fix/API.
`// syncfusion_pdfviewer_web – render settings
..annotationMode = 1; // stock package uses 0 (DISABLE)
Alliances - Mobbiz - Partnership Agreement - Indra_15JUNE2026v.254 (1).pdf
`
Screenshots or Video
BAD:
GOOD:
Alliances - Mobbiz - Partnership Agreement - Indra_15JUNE2026v.254 (1).pdf
Stack Traces
No stack trace — silent visual rendering issue, not a crash. See description above.
On which target platforms have you observed this bug?
Web
Flutter Doctor output
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.44.8, on macOS 15.6 24G84 darwin-arm64, locale en)
[✓] Android toolchain - develop for Android devices (Android SDK version 36.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 26.3)
[✓] Chrome - develop for the web
[✓] Connected device (4 available)
[✓] Network resources
• No issues found!