Welcome to Issue 558 of The Azure Weekly Newsletter. Highlights this week include: MAI-Transcribe-1, MAI-Voice-1, and MAI-Image-2 in Microsoft Foundry: Microsoft announces public preview of three new in-house multimedia models on Foundry: MAI-Transcribe-1 for speech recognition across 25 languages at roughly half the GPU cost of leading alternatives, MAI-Voice-1 for high-fidelity speech generation that produces a minute of audio in under a second, and MAI-Image-2, a text-to-image model that debuted in the top three on the Arena.ai leaderboard.
Getting Started with Foundry Local: A Student Guide to the Microsoft Foundry Local Lab: a walkthrough of the Microsoft Foundry Local Lab aimed at students and self-taught developers, covering a thirteen-part hands-on path from installing the local runtime through SDK use, RAG, single and multi-agent workflows, evaluation-led development, Whisper transcription, custom ONNX models, tool calling, and a browser-based capstone UI.
How Do We Know AI Isn't Lying? The Art of Evaluating LLMs in RAG Systems: a practical guide to evaluating Retrieval-Augmented Generation systems, explaining why probabilistic LLM output is hard to grade, breaking down the key metrics (relevance, faithfulness, groundedness, completeness, hallucination rate), and introducing tools such as RAGAS, LangChain evaluators, and the emerging LLM-as-a-Judge pattern.
Visual Studio March Update – Build Your Own Custom Agents: The March update for Visual Studio 2026 Insiders introduces customisable GitHub Copilot agents defined as .agent.md files in your repo, reusable agent skills, a new language-aware find_symbol tool, enterprise MCP allowlist governance, Copilot-powered test profiling and live perf tips during debugging, and one-click NuGet vulnerability fixes.
Continued Investment in Azure App Service: a recap of ongoing Azure App Service investment, highlighting Premium v4 for higher performance, the new App Service Managed Instance for workloads needing deeper environment control, regular runtime updates across .NET, Node.js, Python, Java and PHP, expanded availability zone support, and improved GitHub Actions and Azure DevOps deployment workflows, including the recent GA of Aspire on App Service.
The Durable Task Scheduler Consumption SKU is now Generally Available: The pay-as-you-go Consumption SKU of Azure's Durable Task Scheduler is now generally available, offering a fully managed orchestration backend for AI agent workflows, event-driven pipelines, and distributed transactions with up to 500 actions per second, 30 days of history, Entra ID authentication, and no idle costs.
Azure Container Apps Blue-Green Terraform Deployment: a walkthrough of implementing zero-downtime blue-green deployments on Azure Container Apps entirely through Terraform, using revision labels, weighted traffic, and an enable_blue_green flag to manage the two-apply lifecycle, with instant rollback by flipping traffic back to the still-warm previous revision.
Enterprise-Scale Azure Subscription Vending Using Azure Verified Modules (AVM): a production-ready guide to automating Azure subscription creation at scale using the Azure Verified Modules subscription vending pattern with Terraform, covering management group placement, the often-tricky Subscription Creator role assignment at the EA enrollment-account scope, and alignment with Azure Landing Zone best practices.
General Availability of Private Application Gateway on Azure Application Gateway v2: application Gateway v2 now supports fully private deployments at general availability, removing the long-standing public IP requirement and enabling private IP-only frontends, full NSG and route table control, deny-all outbound rules, and forced tunneling through hub firewalls or on-premises appliances for regulated and landing-zone workloads.
TL;DR: Developers often need to move Word content seamlessly across platforms. This guide shows how to import Word documents into a .NET MAUI Rich Text Editor and export them back using DocIO, ensuring consistent formatting and productivity.
Bring native Word document handling to your cross‑platform .NET MAUI apps
Modern cross‑platform apps no longer work with plain text alone. They handle full‑fledged documents, rich formatting, images, and structured content that users expect to look consistent on every device.
Among these formats, Word documents remain a preferred choice for real‑world apps. Users expect to open a .docx file, edit it effortlessly, and save it back, whether they’re using a mobile device or a desktop. In a cross‑platform .NET MAUI app, delivering this experience reliably can be challenging.
That’s where the Syncfusion® .NET MAUI Rich Text Editor comes in. It simplifies document handling across iOS, Android, Windows, and macOS, allowing you to work with rich content while preserving formatting, images, and layout. With built‑in support for importing and exporting Word documents, content moves seamlessly between platforms without unexpected surprises.
This makes it a great fit for:
Business and enterprise apps.
Blog and content editors.
Email composers.
Collaborative and productivity tools.
What this article covers
In this blog, you’ll learn how to:
Import a Word document into the Syncfusion .NET MAUI Rich Text Editor by converting it to HTML.
Export edited content back to Word using Syncfusion .NET Word Library, without losing text, images, or formatting.
Note: Rich Text Editor features are organized into individual modules. To enable the import or export functionality, add the ImportExportService to the provider’s array.
Import a Word document into the .NET MAUI Rich Text Editor
Next, convert the Word document to HTML so the Rich Text Editor can render it accurately. To ensure images are displayed correctly, we encode them as Base64 and embed them inline, creating a self-contained HTML string. Finally, we assign this HTML string to the SfRichTextEditor.HtmlText property, so the content appears instantly in the Rich Text Editor UI.
Here is the implementation code:
using var inStream = await file.OpenReadAsync();
using var ms = new MemoryStream();
await inStream.CopyToAsync(ms);
ms.Position = 0;
using var document = new WordDocument(ms, FormatType.Automatic);
document.SaveOptions.ImageNodeVisited += (s, args) =>
{
using var imgMs = new MemoryStream();
args.ImageStream.Position = 0;
args.ImageStream.CopyTo(imgMs);
var bytes = imgMs.ToArray();
string mime =
bytes.Length > 3 && bytes[0] == 0xFF && bytes[1] == 0xD8 ? "image/jpeg" :
bytes.Length > 8 && bytes[0] == 0x89 && bytes[1] == 0x50 && bytes[2] == 0x4E && bytes[3] == 0x47 ? "image/png" :
bytes.Length > 6 && bytes[0] == 0x47 && bytes[1] == 0x49 && bytes[2] == 0x46 ? "image/gif" :
bytes.Length > 2 && bytes[0] == 0x42 && bytes[1] == 0x4D ? "image/bmp" :
"image/png";
var data = Convert.ToBase64String(bytes);
args.Uri = $"data:{mime};base64,{data}";
};
using var htmlStream = new MemoryStream();
document.Save(htmlStream, FormatType.Html);
htmlStream.Position = 0;
using var reader = new StreamReader(htmlStream);
var html = await reader.ReadToEndAsync();
richTextEditor.HtmlText = html;
Refer to the following image.
Importing a Word document in .NET MAUI Rich Text Editor
Export .NET MAUI Rich Text Editor content back to Word
To export .NET MAUI Rich Text Editor content to a Word document, start by cleaning the HTML to remove escaped characters and extra quotes, ensuring valid markup for insertion.
Then, call the EnsureMinimal() method to generate the essential structure of the Word document, including sections and body, which is required before adding content.
After that, hook the ImageNodeVisited event to convert Base64-encoded images in the HTML into binary streams so they can be properly embedded in the Word file. Finally, save the document to a MemoryStream and export it as a .docx using the OS-native save dialog, allowing the user to choose the file name and location.
Refer to the following code example.
private async void OnExport(object sender, EventArgs e)
{
var html = PrepareHtml(richTextEditor.HtmlText);
using var document = new WordDocument();
document.EnsureMinimal();
document.HTMLImportSettings.ImageNodeVisited += OnImageNodeVisited;
document.AddSection().Body.InsertXHTML(html);
document.HTMLImportSettings.ImageNodeVisited -= OnImageNodeVisited;
using var output = new MemoryStream();
document.Save(output, FormatType.Docx);
document.Close();
output.Position = 0;
// Shows the OS save dialog so the user can rename and choose the location.
var saveResult = await FileSaver.Default.SaveAsync(
"ExportedDocument.docx",
output,
CancellationToken.None);
if (!saveResult.IsSuccessful && saveResult.Exception is not null)
await DisplayAlertAsync("Export failed", saveResult.Exception.Message, "OK");
}
private static string PrepareHtml(string html) =>
html.IndexOf('\\') >= 0
? Regex.Unescape(html).Trim('"')
: html;
private static void OnImageNodeVisited(object sender, ImageNodeVisitedEventArgs args)
{
if (string.IsNullOrWhiteSpace(args.Uri) ||
!args.Uri.StartsWith("data:", StringComparison.OrdinalIgnoreCase))
return;
var stream = LoadDataUri(args.Uri);
if (stream != null)
args.ImageStream = stream;
}
private static Stream? LoadDataUri(string uri)
{
var commaIndex = uri.IndexOf(',');
if (commaIndex < 0)
return null;
var base64 = uri[(commaIndex + 1)..]
.Trim()
.Replace("\r", string.Empty)
.Replace("\n", string.Empty)
.Replace(" ", string.Empty);
try
{
return new MemoryStream(Convert.FromBase64String(base64));
}
catch
{
return null;
}
}
Here’s the output image.
Exporting .NET MAUI Rich Text Editor content to a Word document
Why does this work well in real apps?
Keeps Word formatting consistent across platforms.
Handles images without external dependencies.
Works with a single shared MAUI codebase.
Fits naturally into business, content, and document‑centric apps.
This makes it a solid choice for editors, internal tools, blogging apps, and document workflows.
GitHub reference
For more details, refer to the example for importing and exporting Word documents in .NET MAUI Rich Text Editor on GitHub.
Frequently Asked Questions
Can I display a Word document in the .NET MAUI Rich Text Editor?
Yes. Use Syncfusion DocIO’s WordDocument class to open the .docx file. Save the file in HTML format (using FormatType.Html). Assign the resulting HTML string to the SfRichTextEditor.HtmlText property to display the content.
How do I handle images when converting Word to HTML?
Use the document.SaveOptions.ImageNodeVisited event. This event lets you access each image as you convert from Word to HTML. Convert each image stream to a Base64-encoded data URI and set the args.Uri to this value so the image displays in HTML.
Does the HTML conversion preserve styles, lists, and tables?
DocIO’s HTML export keeps structure and formatting. Test complex elements with sample documents.
Can I bind the editor content using MVVM?
Yes. Bind a string property in your ViewModel to the SfRichTextEditor.HtmlText property. This supports two-way updates using the MVVM (Model-View-ViewModel) pattern.
How do I prevent whitespace/newlines from breaking data URIs on export?
When processing data URIs, ensure your LoadDataUri routine trims whitespace and removes carriage returns, line feeds, and spaces from the Base64 (encoded string) part before decoding. This helps the data URI parse correctly when exporting images from the document.
Thanks for reading! Importing and exporting Word documents in .NET MAUI doesn’t have to be complex. With the Syncfusion .NET MAUI Rich Text Editor and DocIO, you can seamlessly import, edit, and export Word files directly within your app, across both mobile and desktop platforms.
More than a basic text box, the Rich Text Editor delivers a polished, reliable document‑editing experience while preserving formatting, images, and structure. It’s ideal for document management, blogging, and collaborative applications where consistency and productivity matter.
This is a true cross‑platform document editor, not an afterthought.
Ready to level up your MAUI apps? Download our free trial and explore the full power of Syncfusion’s .NET MAUI suite.
TL;DR: Need secure PDF signing in Android apps with .NET MAUI? This hands-on guide walks through digitally signing new and existing PDFs using a PFX certificate, customizing visible signatures, adding timestamps, tracking revisions, and managing signature fields, all with production-ready, developer-friendly APIs.
Why digital signatures matter for Android PDFs
As mobile apps increasingly handle contracts, approvals, and sensitive documents, ensuring document integrity and authenticity is critical.
Digital signatures play a key role by providing:
Integrity: Ensures the document hasn’t been altered.
Authenticity: Verifies the signer’s identity.
Non-repudiation: Prevents signers from denying their actions.
Role in mobile workflows: They enable quick, secure approvals and document exchanges directly from Android devices, ensuring compliance and trust.
Unlike electronic signatures (simple images or consent marks), digital signatures rely on cryptographic certificates, making them suitable for compliance-driven and security-sensitive workflows.
However, developers often struggle with:
Managing certificates securely
Customizing signature appearance
Implementing standards-compliant signing in mobile apps
This is where a .NET MAUI-based PDF solution significantly simplifies the process. The Syncfusion® .NET PDF Library supports digital signatures in Android through .NET MAUI, making it easy to add secure signatures to PDF documents. It offers APIs for certificate-based signing, appearance customization, timestamping, and validation, all within your application.
In this blog post, we’ll walk through using the Syncfusion .NET PDF Library with .NET MAUI to sign new and existing PDFs and implement advanced features such as timestamping, deferred signing, and revision tracking.
By the end, you’ll have a clear roadmap to integrate secure, professional digital signing into your Android MAUI apps.
Implement digital signatures in Android with Syncfusion .NET MAUI PDF Library
The Syncfusion .NET PDF Library simplifies implementing digital signatures in Android apps built with .NET MAUI.
Key features include:
Easy-to-use APIs for adding, validating, and managing signatures.
Support for visible signatures with custom images and metadata.
Compliance with global standards like PAdES and X.509.
With these capabilities, creating secure and professional signing experiences on mobile is effortless.
Set up a .NET MAUI project for Android
Create a new .NET MAUI App in Visual Studio 2022 and ensure the latest .NET MAUI workload is installed.
Install Syncfusion PDF Library
In Solution Explorer, right-click your project and select Manage NuGet Packages.
Search for Syncfusion.Pdf.Net and install it.
Installing Syncfusion PDF Library via NuGet in Visual Studio
Note: Run the sample using an Android Emulator or connect a physical Android device for testing.
Curious about creating a .NET MAUI sample using Syncfusion PDF Library? Explore our official documentation for a complete walkthrough.
Add digital signatures to your PDFs in Android using .NET MAUI
Adding a digital signature to a PDF ensures the PDF’s authenticity and legal validity. The process involves creating or loading a document, applying a certificate-based signature, and saving the signed file.
If you’re wondering how to add a digital signature to a PDF on Android, this step-by-step guide will help you integrate it seamlessly.
Step 1: Create and sign a new PDF document
You can create a new PDF from scratch and sign it using a digital certificate. The signing process typically includes:
Creating the PDF document
Adding a page
Loading a certificate (PFX)
Applying a signature field
Customizing signer metadata and appearance
Example code: Create and sign a new PDF
//Creates a new PDF document.
PdfDocument document = new PdfDocument();
//Adds a new page.
PdfPageBase page = document.Pages.Add();
//Create PDF graphics for the page.
PdfGraphics graphics = page.Graphics;
//Creates a certificate instance from a PFX file with a private key.
FileStream certificateStream = new FileStream("PDF.pfx", FileMode.Open, FileAccess.Read);
PdfCertificate pdfCert = new PdfCertificate(certificateStream, "password123");
//Creates a digital signature.
PdfSignature signature = new PdfSignature(document, page, pdfCert, "Signature");
//Sets an image for the signature field.
FileStream imageStream = new FileStream("signature.jpg", FileMode.Open, FileAccess.Read);
//Sets an image for the signature field.
PdfBitmap signatureImage = new PdfBitmap(imageStream);
//Sets signature information.
signature.Bounds = new RectangleF(new PointF(0, 0), signatureImage.PhysicalDimension);
signature.SignedName = "Syncfusion";
signature.ContactInfo = "johndoe@owned.us";
signature.LocationInfo = "Honolulu, Hawaii";
signature.Reason = "I am the author of this document.";
//Draws the signature image.
signature.Appearance.Normal.Graphics.DrawImage(signatureImage, 0, 0);
//Saves the PDF to the memory stream.
using MemoryStream ms = new();
document.Save(ms);
//Close the PDF document
document.Close(true);
ms.Position = 0;#
//Saves the memory stream as a file.
SaveService saveService = new();
saveService.SaveAndView("Result.pdf", "application/pdf", ms);
Syncfusion PDF Library makes this process smooth through APIs that handle field detection and signing.
Example Code: Sign an existing PDF
Assembly assembly = typeof(MainPage).GetTypeInfo().Assembly;
string basePath = "CreatePdfDemoSample.Resources.Data.";
Stream inputStream = assembly.GetManifestResourceStream(basePath + "PdfDocument.pdf");
Stream pfxStream = assembly.GetManifestResourceStream(basePath + "PDF.pfx");
Stream signStream = assembly.GetManifestResourceStream(basePath + "signature.png");
PdfLoadedDocument lDoc = new PdfLoadedDocument(inputStream);
PdfLoadedPage page = lDoc.Pages[0] as PdfLoadedPage;
PdfLoadedSignatureField signField = lDoc.Form.Fields[6] as PdfLoadedSignatureField;
//Creates a certificate instance from PFX file with private key.
PdfCertificate pdfCert = new PdfCertificate(pfxStream, "password123");
//Creates a digital signature.
PdfSignature signature = new PdfSignature(lDoc, page, pdfCert, "Signature", signField);
//Sets an image for the signature field.
PdfBitmap signatureImage = new PdfBitmap(signStream);
//Sets signature information.
signature.Bounds = signField.Bounds;
signature.SignedName = "Syncfusion";
signature.ContactInfo = "johndoe@owned.us";
signature.LocationInfo = "Honolulu, Hawaii";
signature.Reason = "I am the author of this document.";
//Create appearance for the digital signature.
signature.Appearance.Normal.Graphics.DrawImage(signatureImage, new RectangleF(0, 0, 60, 35));
//Saves the PDF to the memory stream.
using MemoryStream ms = new();
lDoc.Save(ms);
//Close the PDF document
lDoc.Close(true);
ms.Position = 0;
//Saves the memory stream as a file.
SaveService saveService = new();
saveService.SaveAndView("Result.pdf", "application/pdf", ms);
PDF form before and after adding a digital signature
Did you know? Syncfusion also supports adding multiple signatures to a single PDF document, making collaborative signing effortless. Check out our documentation and explore the full sample on GitHub.
Remove digital signatures from PDFs in Android
Removing digital signatures is useful when documents need to be updated or re-signed. Syncfusion PDF Library provides simple APIs to identify and remove signed fields.
The following code demonstrates how to remove a single digital signature from a PDF:
Assembly assembly = typeof(MainPage).GetTypeInfo().Assembly;
string basePath = "CreatePdfDemoSample.Resources.Data.";
Stream inputStream = assembly.GetManifestResourceStream(basePath + "DrawSignInput.pdf");
//Load the PDF document using the path of the file
PdfLoadedDocument lDoc = new PdfLoadedDocument(inputStream);
PdfLoadedPage page = lDoc.Pages[0] as PdfLoadedPage;
//Access the signature field from the form field collection
PdfLoadedSignatureField signField = lDoc.Form.Fields[6] as PdfLoadedSignatureField;
//Remove signature field from form field collection.
lDoc.Form.Fields.Remove(signField);
//Saves the PDF to the memory stream.
using MemoryStream ms = new();
lDoc.Save(ms);
//Close the PDF document
lDoc.Close(true);
ms.Position = 0;
//Saves the memory stream as a file.
SaveService saveService = new();
saveService.SaveAndView("Result.pdf", "application/pdf", ms);
PDF form before and after removing a digital signature
Remove multiple digital signatures
To remove multiple signatures, iterate through the form field collection and delete all signature fields.
Here’s how you can do it in code:
//Load the PDF document using the path of the file
PdfLoadedDocument lDoc = new PdfLoadedDocument(inputStream);
PdfLoadedPage page = lDoc.Pages[0] as PdfLoadedPage;
for (int i = lDoc.Form.Fields.Count - 1; i >= 0; i--)
{
if (lDoc.Form.Fields[i] is PdfLoadedSignatureField)
{
lDoc.Form.Fields.RemoveAt(i);
}
}
//Saves the PDF to the memory stream.
using MemoryStream ms = new();
lDoc.Save(ms);
//Close the PDF document
lDoc.Close(true);
ms.Position = 0;
Advanced digital signature features for Android PDFs
Digital signing often requires more than basic authentication. Advanced capabilities help meet compliance and long-term validation requirements. These include:
Timestamping for long-term validity
Custom cryptographic standards and hash algorithms for compliance
Deferred signing for external workflows
Revision tracking to verify document integrity
Add timestamping to digital signatures
Timestamping records the exact signing time using a trusted authority, ensuring validity even if the certificate expires later.
Example code: Add timestamp
//Creates a new PDF document
PdfDocument document = new PdfDocument();
//Adds a new page
PdfPageBase page = document.Pages.Add();
//Create PDF graphics for the page
PdfGraphics graphics = page.Graphics;
//Creates a certificate instance from a PFX file with a private key
FileStream certificateStream = new FileStream("PDF.pfx", FileMode.Open, FileAccess.Read);
PdfCertificate pdfCert = new PdfCertificate(certificateStream, "password123");
//Creates a digital signature
PdfSignature signature = new PdfSignature(document, page, pdfCert, "Signature");
//Sets an image for the signature field
FileStream imageStream = new FileStream("syncfusion_logo.jpeg", FileMode.Open, FileAccess.Read);
//Sets an image for the signature field
PdfBitmap image = new PdfBitmap(imageStream);
//Adds time stamp by using the server URI and credentials
signature.TimeStampServer = new TimeStampServer(new Uri("http://syncfusion.digistamp.com"), "user", "123456");
//Sets signature info
signature.Bounds = new RectangleF(new PointF(0, 0), image.PhysicalDimension);
signature.SignedName = "Syncfusion";
signature.ContactInfo = "johndoe@owned.us";
signature.LocationInfo = "Honolulu, Hawaii";
signature.Reason = "I am the author of this document.";
//Draws the signature image
signature.Appearance.Normal.Graphics.DrawImage(image, 0, 0);
//Save the document
using MemoryStream ms = new();
loadedDocument.Save(ms);
//Close the document.
loadedDocument.Close(true);
//Saves the memory stream as a file.
SaveService saveService = new();
saveService.SaveAndView("Result.pdf", "application/pdf", ms);
Interested in the implementation details? Our documentation and GitHub sample have all the details and ready-to-use code.
Configuring cryptographic standards and hash algorithms
You can choose cryptographic standards (CMS or CAdES) and digest algorithms (SHA256) to meet security and compliance requirements.
Example codes:
Set a cryptographic standard
//Sets signature settings to customize the cryptographic standard specified
PdfSignatureSettings settings = signature.Settings;
settings.CryptographicStandard = CryptographicStandard.CADES;
Set digest algorithm
//Sets signature settings to customize the digest algorithm specified
PdfSignatureSettings settings = signature.Settings;
settings.DigestAlgorithm = DigestAlgorithm.SHA256;
Implement deferred signing
Deferred signing allows a document to be prepared for signing while the actual signature is provided later, useful for external or server-based workflows.
Key APIs involved:
IPdfExternalSigner
AddExternalSigner
ReplaceEmptySignature
Note: Use IPdfExternalSigner and AddExternalSigner to create an empty signature field, generate the document hash, and later replace it with the signed hash using ReplaceEmptySignature.
For advanced scenarios, you can perform deferred signing without using the standard PKCS#7 format for full control over the signature process.
Want to learn more and try it yourself? Check out the full workflow in our documentation and explore the complete sample on GitHub.
Retrieve certificate and revision information
Revision tracking helps determine whether a PDF was modified after signing by identifying the revision associated with each digital signature and the total number of document revisions.
Example code: Retrieve revision info
PdfLoadedDocument document = new PdfLoadedDocument(inputStream);
//Get the document revisions.
PdfRevision[] revisions = document.Revisions;
foreach (PdfRevision rev in revisions)
{
//Get revision start position.
long startPosition = rev.StartPosition;
}
//Load the existing signature field.
PdfLoadedSignatureField field = document.Form.Fields[6] as PdfLoadedSignatureField;
//Get the revision of the signature.
int revisionIndex = field.Revision;
//Close the document.
document.Close(true);
This version improves readability, developer engagement, and SEO consistency with previous sections.
How reliable are Syncfusion digital signatures when PDFs are opened in different Android PDF viewers?
Signatures created using Syncfusion .NET PDF Library and PAdES/CAdES standards remain valid across compliant viewers, but trust indicators depend on the viewer’s certificate trust store, not the signature itself.
Is storing a PFX certificate inside a .NET MAUI Android app recommended for production use?
No. Storing a PFX certificate using PdfCertificate is suitable only for development or demo purposes. Production apps should use deferred signing with IPdfExternalSigner or server-side signing to avoid exposing private keys on Android devices.
Does Syncfusion support long-term validation (LTV) for signed PDFs?
Yes. Syncfusion supports long-term validation by using TimeStampServer with PdfSignature, which preserves signature validity even after the signing certificate expires.
When should developers prefer CAdES over CMS in Syncfusion digital signatures?
Use CryptographicStandard.CADES when compliance-focused workflows need richer validation metadata; choose CMS for better compatibility across PDF viewers.
Does deferred signing improve security in enterprise signing workflows?
Can Syncfusion validate digital signatures programmatically inside a MAUI app?
Yes, signature validation can be implemented using PdfLoadedSignatureField, certificate properties, and revision indexes without relying on external PDF viewers.
Thank you for reading! Syncfusion makes implementing PDF digital signatures on Android simple, secure, and efficient. With cross-platform support, customizable signature features, and compliance with global standards, it delivers everything developers and businesses need for professional workflows.
Ready to explore more? Check out the feature tour page and dive into the detailed documentation to start building secure, user-friendly signing experiences in your Android apps today.
If you’re a Syncfusion user, you can download the latest setup from the license and downloads page. Otherwise, you can download a free 30-day trial.
Washington Gov. Bob Ferguson is directing $500,000 from a state economic development fund to support the expansion of IonQ’s manufacturing facility for quantum computing hardware in Bothell, Wash. (GeekWire Photo / Alan Boyle)
Leaders of the Pacific Northwest’s computing community gathered in downtown Seattle today to mark World Quantum Day — and Washington Gov. Bob Ferguson gave them one more reason to celebrate. Or rather, 500,000 reasons.
Ferguson took the occasion to announce that $500,000 would be directed from the Governor’s Economic Development Strategic Reserve Fund to support the expansion of IonQ’s quantum computer manufacturing facility in Bothell, Wash. The 100,000-square-foot factory opened in 2024 and is ramping up production.
Over the next 18 months, Maryland-based IonQ plans to add about 100 engineering positions in Bothell, paying an average salary of $177,000. Over the next five years, the expansion is projected to generate between 1,200 and 2,000 regional jobs.
The Strategic Reserve Fund makes use of unclaimed lottery prize money for investments that deliver significant job creation and capital investment in Washington state. The newly announced award will go to the Economic Alliance of Snohomish County for building upgrades, workforce expenses and other expansion costs.
The state’s funding is coming on top of more than $14 million in private investment. “Quantum is the future, and it’s being built here,” Ferguson said in a news release.
April 14 is marked worldwide as World Quantum Day for a thoroughly geeky reason: The date (4/14) commemorates one of the foundational numbers of quantum mechanics, Planck’s constant (4.14 X 10-15 eV ⋅ s).
Quantum computing systems don’t follow the binary rules of classical computing. Instead, they leverage the properties of subatomic particles to process multiple values simultaneously. Quantum-based algorithms hold the promise of solving some types of problems that would be impractical or impossible to solve using classical computers.
The promise hasn’t yet come to full fruition — but Washington’s lieutenant governor, Denny Heck, set a bullish tone as today’s keynote speaker. “Quantum computing is inarguably going to be one of the most impactful scientific and technical breakthroughs in all recorded history, and frankly, in the parlance of contemporary discussion, it will dwarf AI,” he said.
Heck predicted that quantum computing would give rise to “fulsome commercial applications” in the next five or 10 years. “You know we’re not there yet,” he told the audience, “but you also should know that it is no longer a question of if. It is indeed a question of when.”
How AI is fostering a quantum leap
Several speakers said the rapidly advancing revolution in artificial intelligence is accelerating the quantum revolution as well.
“Quantum plays a very interesting synergistic role with AI,” said Nathan Baker, who leads an engineering team focused on quantum application development at Microsoft. “For a while, quantum is going to be a scarce and relatively low-throughput computational resource. It’ll be solving problems we can’t solve today, so it’ll be a whole new resource. But the best way to get mileage out of this … is to scale quantum up by partnering with AI.”
Krysta Svore, Nvidia’s vice president of applied research for quantum computing, said AI could help developers address challenges that have slowed progress in the field.
“AI will help with quantum error correction in particular, providing a way to perform the inference that’s needed to keep the quantum computer stable and essentially alive for longer periods of time,” Svore said.
Svore also noted that the general public shouldn’t expect to buy a quantum computer for their desktop. “When you look at what’s required to operate a quantum computer, most of us don’t necessarily have a cryogenic environment in our house,” she said. “Realistically, you’re going to access this type of compute just like you’re accessing AI supercomputers, through the cloud. Most of us don’t have an AI supercomputer in our backyard either, yet all of us are using LLMs, whether you’re using ChatGPT or Copilot or Gemini.”
Those potential perils and payoffs have captured the attention of policymakers. Back in 2018, the National Quantum Initiative Act authorized $1.2 billion over a five-year period to boost investment in quantum information science. More recently, the White House paired quantum technologies with AI in an initiative called the Genesis Mission.
What’s next for the quantum realm?
In honor of World Quantum Day, legislation known as the National Quantum Initiative Reauthorization Act was approved unanimously today by the Senate Commerce Committee.
“From scientific breakthroughs in health care to clean energy solutions, quantum technology is a game-changer, and federal investment is vital to accelerating the transition from basic science to quantum innovation and practical applications,” U.S. Sen. Maria Cantwell, D-Wash., one of the bill’s lead sponsors, said in a news release. “The state of Washington, with its vibrant tech industry, national lab partnerships and a growing pipeline of quantum engineers, is poised to become ‘Quantum Valley.’ “
On that point, Heck was less bullish than Cantwell. “Here’s the question: Are we really moving as fast as we could in our region?” he asked. “Are our investments, and is our coordination, coming anywhere near matching the sheer magnitude of the opportunity that exists? And if we’re being honest with one another — no, it’s not.”
Heck and the other speakers at Northwest Quantum Day said more needed to be done to support education and workforce development, foster innovative computing ventures and strengthen the Pacific Northwest’s tech ecosystem.
“Having that local environment, a rich environment with talent, is important,” Baker said. “And it’s not just physicists, right? The quantum pipeline, especially if you’re aiming for quantum computing to be a commercial product … needs expertise across all areas, from ‘go to market’ down to the people engineering the hardware.”
Michael Brett, who leads go-to-market strategy for quantum technologies at Amazon Web Services, even had an idea for the marketing campaign. “I think our license plate should say, ‘The Quantum State,’ ” he said. Was the suggestion serious? Was it a joke? In the spirit of World Quantum Day, maybe it was both.
Coverage of violent anti‑AI actions after a Molotov cocktail and gunfire targeted Sam Altman's home and OpenAI facilities, including the arrest of suspect Daniel Moreno Gamma and evidence of doxxing and an anti‑AI manifesto. Analysis of rhetoric from AI doomers, industry leaders, and media examines how existential‑risk framing, perceived inequality, and social‑media amplification can fuel political violence and erode democratic trust. Calls for de‑escalation stress democratizing AI power, building society‑wide safety responses, and pursuing economic policies and reskilling programs instead of violent tactics.
If you're an engineering leader right now, everything around you feels like it's changing at once — new tools, new processes, new expectations. It's tempting to accept chaos as the new normal, but in today's episode, I make the case that your job is to go on the offense and *create* order. Not by clinging to old processes, but by becoming the groundskeeper of your team's ceremonies — the regular, repeated actions that give your team a foundation to actually improve from.
Humans Are the Limiting Factor (And That's Okay): Our fundamental cognitive capabilities haven't changed in tens of thousands of years. Progress is collective — better tools, better documentation, better knowledge systems — but individually, our brains work the same way they always have. Any process that involves humans has to account for this.
Why Ceremony Matters More Than Ever: Whether you call them scrum ceremonies, team rituals, or just "the way we work," regular and repeated team actions aren't bureaucratic overhead. They're how humans learn, build comfort, and reduce cognitive load. Just like sitting in the same seat at your coffee shop or driving the same route to work, repeated patterns free up mental energy for the things that actually require your attention.
Regularity of Action Over Specific Process: This isn't a prescription for scrum or kanban or any particular framework. The point is that your team has some determined, repeated way of doing things — whether that's a weekly planning session, a daily standup, or a trigger-based refinement process. The specific process matters less than the consistency.
Ceremony Enables Experimentation: If you want to get better, you need to be able to change one variable at a time and measure the result. That's impossible when everything is changing at once. Holding your core processes steady gives you the controlled environment you need to actually learn what's working and what isn't.
Spot the Anomalies: When you maintain regularity, deviations become visible. If productivity dips but your ceremonies stayed constant, you have a much better shot at diagnosing what actually changed. Without that baseline, every signal gets lost in the noise.
Episode Homework: Sit down with your team this week and talk about what your ceremonies are. What do you want to hold constant? What do you want to be true on a regular basis? Name them, write them down, and commit to tending them — even as everything else shifts around you.
No matter what you're building, SerpApi is the web search API for your needs. If you're building an application that needs real-time search data—whether that's an AI agent, an SEO tool, or a price tracker—SerpApi handles it for you. ● Make an API call and get back clean JSON. ● They handle the proxies, CAPTCHAs, parsing, and all the scraping so you don't have to. ● They support dozens of search engines and platforms, and are trusted by companies like NVIDIA, Adobe, and Shopify. ● If you're building with AI, they even have an official MCP to make getting up and running a simple task. Get started with a free tier to build and test your application before you commit. Go to serpapi.com.
📮 Ask a Question
If you enjoyed this episode and would like me to discuss a question that you have on the show, drop it over at: developertea.com.
If you want to be a part of a supportive community of engineers (non-engineers welcome!) working to improve their lives and careers, join us on the Developer Tea Discord community today!
🗞️ Subscribe to The Tea Break
We are developing a brand new newsletter called The Tea Break! You can be the first in line to receive it by entering your email directly over at developertea.com.
🧡 Leave a Review
If you're enjoying the show and want to support the content head over to iTunes and leave a review!