officefileapi-devexpress-dot-aiintegration-dot-docs-dot-iaidocprocessingservice-dot-proofreadasync-x28-richeditdocumentserver-cultureinfo-cancellationtoken-x29.md
Reviews the text for spelling, grammar, punctuation, and style errors.
Namespace : DevExpress.AIIntegration.Docs
Assembly : DevExpress.AIIntegration.Docs.v25.2.dll
NuGet Package : DevExpress.AIIntegration.Docs
Task ProofreadAsync(
RichEditDocumentServer wordProcessor,
CultureInfo culture,
CancellationToken cancellationToken = default(CancellationToken)
)
Function ProofreadAsync(
wordProcessor As RichEditDocumentServer,
culture As CultureInfo,
cancellationToken As CancellationToken = Nothing
) As Task
| Name | Type | Description |
|---|---|---|
| wordProcessor | RichEditDocumentServer |
The RichEditDocumentServer instance which text should be reviewed.
| | culture | CultureInfo |
An object that specifies culture settings applied during proofreading.
|
| Name | Type | Default | Description |
|---|---|---|---|
| cancellationToken | CancellationToken | null |
The token that cancels the task.
|
| Type | Description |
|---|---|
| Task |
The response that contains AI-generated text.
|
The following code snippet proofreads an entire document. Code to proofread only the second paragraph is included as commented code.
using DevExpress.AIIntegration.Docs;
using DevExpress.XtraRichEdit;
using DevExpress.XtraRichEdit.API.Native;
using System.Diagnostics;
var docProcessingService = defaultAIExtensionsContainer.CreateAIDocProcessingService();
using (var wordProcessor = new RichEditDocumentServer())
{
// Load source document (ensure file exists in relative Documents folder)
wordProcessor.LoadDocument("Documents/FirstLookShortened.docx");
// Proofread entire document (culture en-US)
await docProcessingService.ProofreadAsync(wordProcessor, new System.Globalization.CultureInfo("en-US"));
// Proofread a single paragraph
// Paragraph paragraph = wordProcessor.Document.Paragraphs[1];
// await docProcessingService.ProofreadAsync(paragraph.Range, new System.Globalization.CultureInfo("en-US"));
// Prepare output directory & file path
string targetDir = @"C:\Test Documents";
Directory.CreateDirectory(targetDir); // Safe if already exists
string outputPath = Path.Combine(targetDir, "Proofread.docx");
// Save the proofread document
using (FileStream outputStream = new FileStream(outputPath, FileMode.Create, FileAccess.Write))
{
wordProcessor.SaveDocument(outputStream, DocumentFormat.OpenXml);
}
}
Imports DevExpress.AIIntegration.Docs
Imports DevExpress.XtraRichEdit
Imports DevExpress.XtraRichEdit.API.Native
Imports System.Globalization
Imports System.IO
Dim docProcessingService = defaultAIExtensionsContainer.CreateAIDocProcessingService()
Using wordProcessor As New RichEditDocumentServer()
' Load source document (ensure file exists in relative Documents folder)
wordProcessor.LoadDocument("Documents/FirstLookShortened.docx")
' Proofread entire document (culture en-US)
Await docProcessingService.ProofreadAsync(wordProcessor, New CultureInfo("en-US"))
' Proofread a single paragraph
' Dim paragraph As Paragraph = wordProcessor.Document.Paragraphs(1)
' Await docProcessingService.ProofreadAsync(paragraph.Range, New CultureInfo("en-US"))
' Prepare output directory & file path
Dim targetDir As String = "C:\Test Documents"
Directory.CreateDirectory(targetDir) ' Safe if already exists
Dim outputPath As String = Path.Combine(targetDir, "Proofread.docx")
' Save the proofread document
Using outputStream As New FileStream(outputPath, FileMode.Create, FileAccess.Write)
wordProcessor.SaveDocument(outputStream, DocumentFormat.OpenXml)
End Using
End Using
The following code snippet (auto-collected from DevExpress Examples) contains a reference to the ProofreadAsync(RichEditDocumentServer, CultureInfo, CancellationToken) method.
Note
The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.
office-file-api-ai-implementation/CS/Controllers/ProofreadController.cs#L48
default:
await docProcessingService.ProofreadAsync(wordProcessor, cultureInfo);
break;
See Also
IAIDocProcessingService Interface