DocumentProcessorBase Class
Implements the base functionality of a document processor.
Declaration
export abstract class DocumentProcessorBase
Inheritance
Properties
document Property
Provides access to document structural elements.
Declaration
document: RichEditDocumentBase
Property Value
Type | Description |
---|---|
RichEditDocumentBase | An object that lists a RichEdit document’s structural elements. |
Remarks
var proc = richEdit.createDocumentProcessor();
proc.document.fields.create(proc.document.length, 'docvariable complexContent');
proc.document.fields.create(proc.document.length, 'docvariable text');
proc.document.fields.create(proc.document.length, 'docvariable complexContent');
proc.document.fields.create(proc.document.length, 'docvariable text');
proc.onCalculateDocumentVariable = function (s, e) {
if (e.variableName == 'complexContent') {
var docvarProc = richEdit.createDocumentProcessor();
var picUrl = 'your-image-URL';
var picSize = new DevExpress.RichEdit.Size(docvarProc.unitConverter.pixelsToTwips(200), docvarProc.unitConverter.pixelsToTwips(200));
docvarProc.document.insertPicture(0, picUrl, picSize);
docvarProc.document.insertText(docvarProc.document.length, 'Content1');
docvarProc.document.setCharacterProperties(new DevExpress.RichEdit.Interval(1, 3), { bold: true });
docvarProc.document.insertText(docvarProc.document.length, 'Content2');
e.value = docvarProc;
}
if (e.variableName == 'text') {
e.value = '!SimpelText!';
}
}
proc.document.fields.updateAllFields(function () {
proc.exportDocumentToBase64(function (base64) {
proc.dispose();
richEdit.openDocument(base64, 'someFile', DevExpress.RichEdit.DocumentFormat.OpenXml, (succ) => console.log(succ));
}, DevExpress.RichEdit.DocumentFormat.OpenXml);
});
onCalculateDocumentVariable Property
Specifies an event handler to a client event that occurs when a DOCVARIABLE field is updated.
Declaration
set onCalculateDocumentVariable(val: null | ((s: DocumentProcessorBase, e: CalculateDocumentVariableEventArgs) => void))
Property Value
Type | Description |
---|---|
void | A function that handles the event. |
Remarks
The CalculateDocumentVariable event fires when a DOCVARIABLE value is calculated (when a field is updated, or during the mail merge process). Handle this event to analyze the DOCVARIABLE field name and arguments, and provide custom content to insert into this field.
The DOCVARIABLE field has the following structure: { DOCVARIABLE “variable name” “argument1” “argument 2”… }
var proc = richEdit.createDocumentProcessor();
proc.document.fields.create(proc.document.length, 'docvariable complexContent');
proc.document.fields.create(proc.document.length, 'docvariable text');
proc.document.fields.create(proc.document.length, 'docvariable complexContent');
proc.document.fields.create(proc.document.length, 'docvariable text');
proc.onCalculateDocumentVariable = function (s, e) {
if (e.variableName == 'complexContent') {
var docvarProc = richEdit.createDocumentProcessor();
var picUrl = 'your-image-URL';
var picSize = new DevExpress.RichEdit.Size(docvarProc.unitConverter.pixelsToTwips(200), docvarProc.unitConverter.pixelsToTwips(200));
docvarProc.document.insertPicture(0, picUrl, picSize);
docvarProc.document.insertText(docvarProc.document.length, 'Content1');
docvarProc.document.setCharacterProperties(new DevExpress.RichEdit.Interval(1, 3), { bold: true });
docvarProc.document.insertText(docvarProc.document.length, 'Content2');
e.value = docvarProc;
}
if (e.variableName == 'text') {
e.value = '!SimpelText!';
}
}
unitConverter Property
Allows you to convert units.
Declaration
readonly unitConverter: UnitConverter
Property Value
Type | Description |
---|---|
UnitConverter | A unit converter object. |
Remarks
var size = new DevExpress.RichEdit.Size(
richEdit.unitConverter.centimetersToTwips(24),
richEdit.unitConverter.centimetersToTwips(18));
richEdit.document.sections.getByIndex(0).pageSize = size;
Methods
dispose Method
Releases resources used by the document processor.
Declaration
dispose(): void
Remarks
Note
If you create a document processor in the onCalculateDocumentVariable event handler, the processor is disposed automatically.
var proc = richEdit.createDocumentProcessor();
...
proc.dispose();
downloadDocument(fileName, documentFormat) Method
Downloads the current document.
Declaration
downloadDocument(
fileName: string,
documentFormat: DocumentFormat
): void
Parameters
Name | Type | Description |
---|---|---|
fileName | string | The name of the downloaded document. |
documentFormat | DocumentFormat | The document format. |
downloadPdf(fileName) Method
Downloads the current document as a pdf file.
Declaration
downloadPdf(fileName: string, options?: ((pdfDocument: any) => void) | {
modifyPdfDocument?: (pdfDocument: any) => void;
modifyPdfPage?: (pdfDocument: any) => void;
}): void
Parameters
Name | Type | Description |
---|---|---|
fileName | string | The name of the downloaded document. |
options | (pdfDocument: any) => void | {modifyPdfDocument: (pdfDocument: any) => void, modifyPdfPage: (pdfDocument: any) => void} | A function that allows you to modify the PDF document before it is downloaded; or an object that contains modifyPdfDocument and modifyPdfPage functions. |
Remarks
The downloadPdf method exports the document to the Portable Document Format (PDF) and downloads it to a local machine.
You can write a function to modify each page after it is exported (modifyPdfPage), or modify the document after the export is completed (modifyPdfDocument). The pdfDocument parameter is an object of the PDFKit library. If an export fails, the parameter returns null
.
exportDocumentToBase64(callback) Method
Exports the current document in the specified format to base64.
Declaration
exportDocumentToBase64(
callback: (base64: string) => void,
documentFormat?: DocumentFormat
): void
Parameters
Name | Type | Description |
---|---|---|
callback | (base64: string) => void | A function that gets the base64 string as a parameter. |
documentFormat | DocumentFormat | The document format. |
Remarks
The exportDocumentToBase64 method exports the current document to a base64 string. Use the documentFormat parameter to specify the document’s format. After export, the document processor calls the callback function and returns the base64 string as a parameter. You can use this function to save the exported document.
var proc = richEdit.createDocumentProcessor();
...
proc.document.fields.updateAllFields(function () {
proc.exportDocumentToBase64(function (base64) {
proc.dispose();
richEdit.openDocument(base64, 'someFile', DevExpress.RichEdit.DocumentFormat.OpenXml, function (succ) { console.log(succ); });
}, DevExpress.RichEdit.DocumentFormat.OpenXml);
});
exportDocumentToBlob(callback) Method
Exports the current document in the specified format to a blob.
Declaration
exportDocumentToBlob(
callback: (blob: Blob) => void,
documentFormat?: DocumentFormat
): void
Parameters
Name | Type | Description |
---|---|---|
callback | (blob: Blob) => void | A function that gets the blob as a parameter. |
documentFormat | DocumentFormat | The document format. |
Remarks
The exportDocumentToBlob method exports the current document to a binary large object (blob). Use the documentFormat parameter to specify the document’s format. After export, the document processor calls the callback function and returns the blob as a parameter. You can use this function to save the exported document.
exportToPdf(callback) Method
Exports the current document to PDF.
Declaration
exportToPdf(callback: (base64: string, blob: Blob, stream: any) => void, options?: ((pdfDocument: any) => void) | {
modifyPdfDocument?: (pdfDocument: any) => void;
modifyPdfPage?: (pdfDocument: any) => void;
}): void
Parameters
Name | Type | Description |
---|---|---|
callback | (base64: string, blob: Blob, stream: any) => void | A function that gets the PDF document as a parameter. |
options | (pdfDocument: any) => void | {modifyPdfDocument: (pdfDocument: any) => void, modifyPdfPage: (pdfDocument: any) => void} | A function that allows you to modify the PDF document before it is downloaded; or an object that contains modifyPdfDocument and modifyPdfPage functions. |
Remarks
The exportToPdf method exports the current document to the Portable Document Format (PDF). You can write a function to modify each page after it is exported (modifyPdfPage), or modify the document after the export is completed (modifyPdfDocument).
The pdfDocument parameter is an object of the PDFKit library. If an export fails, the parameter returns null
.
The document processor sends the resulting PDF file in the base64, blob, and stream formats to the callback function. You can use the function to save the exported document.
Tip
Use the downloadPdf(fileName) method to download the current document as a PDF file.
importDocument(source, documentFormat, callback) Method
Imports a document from a base64 data or from a file.
Declaration
importDocument(
source: string | File,
documentFormat: DocumentFormat,
callback: (importSuccess: boolean) => void
): void
Parameters
Name | Type | Description |
---|---|---|
source | string | File | A document in a base64 format or a file object. |
documentFormat | DocumentFormat | The document format. |
callback | (importSuccess: boolean) => void | Allows you to perform custom actions after a file is imported. |