interface DocType {
    addHeaderFooter: (
        headerFooterInfo: HeaderFooterElementInfoType,
    ) => Promise<boolean>;
    addStandardFont: (
        font: string,
        encoding?: FontEncodingType,
    ) => Promise<null | PDFFontType>;
    addWatermark: (watermarkInfo: WatermarkElementInfoType) => Promise<boolean>;
    clearChangeMark: () => Promise<void>;
    close: (options?: CloseOptions) => Promise<boolean>;
    createButtonForm: (
        __namedParameters: {
            name: string;
            pageIndex: number;
            rect: Rect;
            rotate?: number;
        },
    ) => Promise<null | AnnotType>;
    createCheckboxForm: (
        __namedParameters: {
            name: string;
            pageIndex: number;
            rect: Rect;
            rotate?: number;
        },
    ) => Promise<null | AnnotType>;
    createComboxForm: (
        __namedParameters: {
            name: string;
            pageIndex: number;
            rect: Rect;
            rotate?: number;
        },
    ) => Promise<null | AnnotType>;
    createListboxForm: (
        __namedParameters: {
            name: string;
            pageIndex: number;
            rect: Rect;
            rotate?: number;
        },
    ) => Promise<null | AnnotType>;
    createPdfNewPageDict: (
        pageIndex: number,
    ) => Promise<null | PDFDictionaryType>;
    createRadioButtonForm: (
        __namedParameters: {
            name: string;
            pageIndex: number;
            rect: Rect;
            rotate?: number;
        },
    ) => Promise<null | AnnotType>;
    createSignatureForm: (
        __namedParameters: {
            name: string;
            pageIndex: number;
            rect: Rect;
            rotate?: number;
        },
    ) => Promise<null | AnnotType>;
    createTextFieldForm: (
        __namedParameters: {
            name: string;
            pageIndex: number;
            rect: Rect;
            rotate?: number;
        },
    ) => Promise<null | AnnotType>;
    destroy: () => Promise<void>;
    doPrint: () => Promise<void>;
    doPrintSilently: () => Promise<void>;
    doSave: (options: SaveDocOptionType) => Promise<boolean>;
    doSaveAs: () => Promise<void>;
    extractPages: (extraPageArr: number[], savPath: string) => Promise<boolean>;
    getCurrentDocView: () => Promise<null | DocViewType>;
    getCurrentPageIndex: () => Promise<number>;
    getDocView: (viewIndex: number) => Promise<null | DocViewType>;
    getDocViewCount: () => Promise<number>;
    getFileName: () => Promise<string>;
    getInterForm: () => Promise<null | InterFormType>;
    getPage: (index: number) => Promise<null | PageType>;
    getPageCount: () => Promise<number>;
    getPermissions: () => Promise<number>;
    getRoot: () => Promise<null | PDFObjectType>;
    getRootBookmark: () => Promise<null | BookmarkType>;
    getTextSelectTool: () => Promise<null | TextSelectToolType>;
    insertPages: (options: InsertPagesType) => Promise<boolean>;
    isDocModify: () => Promise<boolean>;
    options: Options;
    printPages: (firstPage: number, lastPage: number) => Promise<void>;
    printSetup: () => Promise<void>;
    reloadPage: (pageIndex: number, disableGoto: boolean) => Promise<boolean>;
    removeHeaderFooter: (
        specifyHeaderFooterDicValue: string,
    ) => Promise<boolean>;
    removeWatermark: (specifyWatermarkDicValue: string) => Promise<boolean>;
    replacePages: (__namedParameters: ReplacePagesType) => Promise<boolean>;
    resizePage: (options: ResizePageOptions) => Promise<boolean>;
    savePdf: (
        srcFileName: string,
        flag?: number,
        enable?: boolean,
    ) => Promise<boolean>;
    setChangeMark: () => Promise<void>;
    setPermissions: (permission: number) => Promise<void>;
}

Implemented by

Properties

addHeaderFooter: (
    headerFooterInfo: HeaderFooterElementInfoType,
) => Promise<boolean>

Add header and footer without updating document view.

Type declaration

addStandardFont: (
    font: string,
    encoding?: FontEncodingType,
) => Promise<null | PDFFontType>

Add standard font to document.

Type declaration

addWatermark: (watermarkInfo: WatermarkElementInfoType) => Promise<boolean>

Add watermark without updating document view.

Type declaration

clearChangeMark: () => Promise<void>

Invalidates all modification.

Type declaration

    • (): Promise<void>
    • Returns Promise<void>

      • TRUE if the operation is successful, otherwise not.
close: (options?: CloseOptions) => Promise<boolean>

Closes the doc object.

Type declaration

    • (options?: CloseOptions): Promise<boolean>
    • Parameters

      • Optionaloptions: CloseOptions

        Close parameters, default values: {'promptToSave': true, 'showCancel': true}

      Returns Promise<boolean>

      • Result of the close operation
createButtonForm: (
    __namedParameters: {
        name: string;
        pageIndex: number;
        rect: Rect;
        rotate?: number;
    },
) => Promise<null | AnnotType>

Creates a button form field.

Type declaration

    • (
          __namedParameters: {
              name: string;
              pageIndex: number;
              rect: Rect;
              rotate?: number;
          },
      ): Promise<null | AnnotType>
    • Parameters

      • __namedParameters: { name: string; pageIndex: number; rect: Rect; rotate?: number }

      Returns Promise<null | AnnotType>

      • The created button form field.
const doc = await app.getActiveDoc();
const pageIndex = await doc.getCurrentPageIndex();
const rect = {
left: 200,
top: 550,
right: 300,
bottom: 500
};
const buttonForm = await doc.createButtonForm({
pageIndex,
rect,
rotate: 0,
name: 'MyButton'
});
console.log(buttonForm); // Button form field
createCheckboxForm: (
    __namedParameters: {
        name: string;
        pageIndex: number;
        rect: Rect;
        rotate?: number;
    },
) => Promise<null | AnnotType>

Creates a checkbox form field.

Type declaration

    • (
          __namedParameters: {
              name: string;
              pageIndex: number;
              rect: Rect;
              rotate?: number;
          },
      ): Promise<null | AnnotType>
    • Parameters

      • __namedParameters: { name: string; pageIndex: number; rect: Rect; rotate?: number }

      Returns Promise<null | AnnotType>

      • The created checkbox form field.
createComboxForm: (
    __namedParameters: {
        name: string;
        pageIndex: number;
        rect: Rect;
        rotate?: number;
    },
) => Promise<null | AnnotType>

Creates a combobox form field.

Type declaration

    • (
          __namedParameters: {
              name: string;
              pageIndex: number;
              rect: Rect;
              rotate?: number;
          },
      ): Promise<null | AnnotType>
    • Parameters

      • __namedParameters: { name: string; pageIndex: number; rect: Rect; rotate?: number }

      Returns Promise<null | AnnotType>

      • The created combobox form field.
const doc = await app.getActiveDoc();
const pageIndex = await doc.getCurrentPageIndex();
const rect = {
left: 200,
top: 550,
right: 300,
bottom: 500
};
const comboboxForm = await doc.createComboxForm({
pageIndex,
rect,
rotate: 0,
name: 'MyComboBox'
});
console.log(comboboxForm); // Combobox form field
createListboxForm: (
    __namedParameters: {
        name: string;
        pageIndex: number;
        rect: Rect;
        rotate?: number;
    },
) => Promise<null | AnnotType>

Creates a listbox form field.

Type declaration

    • (
          __namedParameters: {
              name: string;
              pageIndex: number;
              rect: Rect;
              rotate?: number;
          },
      ): Promise<null | AnnotType>
    • Parameters

      • __namedParameters: { name: string; pageIndex: number; rect: Rect; rotate?: number }

      Returns Promise<null | AnnotType>

      • The created listbox form field.
const doc = await app.getActiveDoc();
const pageIndex = await doc.getCurrentPageIndex();
const rect = {
left: 200,
top: 550,
right: 300,
bottom: 500
};
const listboxForm = await doc.createListboxForm({
pageIndex,
rect,
rotate: 0,
name: 'MyListBox'
});
console.log(listboxForm); // Listbox form field
createPdfNewPageDict: (pageIndex: number) => Promise<null | PDFDictionaryType>

Create a new page.

Type declaration

    • (pageIndex: number): Promise<null | PDFDictionaryType>
    • Parameters

      • pageIndex: number

        The index position of the new page.

      Returns Promise<null | PDFDictionaryType>

      • The new page Dictionary.
createRadioButtonForm: (
    __namedParameters: {
        name: string;
        pageIndex: number;
        rect: Rect;
        rotate?: number;
    },
) => Promise<null | AnnotType>

Creates a radio button form field.

Type declaration

    • (
          __namedParameters: {
              name: string;
              pageIndex: number;
              rect: Rect;
              rotate?: number;
          },
      ): Promise<null | AnnotType>
    • Parameters

      • __namedParameters: { name: string; pageIndex: number; rect: Rect; rotate?: number }

      Returns Promise<null | AnnotType>

      • The created radio button form field.
const doc = await app.getActiveDoc();
const pageIndex = await doc.getCurrentPageIndex();
const rect = {
left: 200,
top: 550,
right: 300,
bottom: 500
};
const radioButtonForm = await doc.createRadioButtonForm({
pageIndex,
rect,
rotate: 0,
name: 'MyRadioButton'
});
console.log(radioButtonForm); // Radio button form field
createSignatureForm: (
    __namedParameters: {
        name: string;
        pageIndex: number;
        rect: Rect;
        rotate?: number;
    },
) => Promise<null | AnnotType>

Creates a signature form field.

Type declaration

    • (
          __namedParameters: {
              name: string;
              pageIndex: number;
              rect: Rect;
              rotate?: number;
          },
      ): Promise<null | AnnotType>
    • Parameters

      • __namedParameters: { name: string; pageIndex: number; rect: Rect; rotate?: number }

      Returns Promise<null | AnnotType>

      • The created signature form field.
const doc = await app.getActiveDoc();
const pageIndex = await doc.getCurrentPageIndex();
const rect = {
left: 200,
top: 550,
right: 300,
bottom: 500
};
const signatureForm = await doc.createSignatureForm({
pageIndex,
rect,
rotate: 0,
name: 'MySignature'
});
console.log(signatureForm); // Signature form field
createTextFieldForm: (
    __namedParameters: {
        name: string;
        pageIndex: number;
        rect: Rect;
        rotate?: number;
    },
) => Promise<null | AnnotType>

Creates a text field form.

Type declaration

    • (
          __namedParameters: {
              name: string;
              pageIndex: number;
              rect: Rect;
              rotate?: number;
          },
      ): Promise<null | AnnotType>
    • Parameters

      • __namedParameters: { name: string; pageIndex: number; rect: Rect; rotate?: number }

      Returns Promise<null | AnnotType>

      • The created text field form.
const doc = await app.getActiveDoc();
const pageIndex = await doc.getCurrentPageIndex();
const rect = {
left: 200,
top: 550,
right: 300,
bottom: 500
};
const textFieldForm = await doc.createTextFieldForm({
pageIndex,
rect,
rotate: 0,
name: 'MyTextField'
});
console.log(textFieldForm); // Text field form
destroy: () => Promise<void>
doPrint: () => Promise<void>

print the current document.

Type declaration

    • (): Promise<void>
    • Returns Promise<void>

doPrintSilently: () => Promise<void>

Performs the print operation, not including user dialog box.

Type declaration

    • (): Promise<void>
    • Returns Promise<void>

doSave: (options: SaveDocOptionType) => Promise<boolean>

Saves the document.

Type declaration

    • (options: SaveDocOptionType): Promise<boolean>
    • Parameters

      • options: SaveDocOptionType

        The save options object.

        Save document options.

        • OptionaldocPDFOptimizer?: boolean

          Indicates whether to enable the document PDF optimizer.

        • OptionalpromptInfo?: boolean

          Indicates whether to prompt information.

        • OptionalsaveAsTempFile?: boolean

          Indicates whether to save the document as a temporary file.

        • OptionalshowProgressBar?: boolean

          Indicates whether to display the progress bar.

      Returns Promise<boolean>

doSaveAs: () => Promise<void>

Saves the document as another file by prompting a file dialog box to specify the saving path before saving.

Type declaration

    • (): Promise<void>
    • Returns Promise<void>

extractPages: (extraPageArr: number[], savPath: string) => Promise<boolean>

Extracts pages from the current document.

Type declaration

    • (extraPageArr: number[], savPath: string): Promise<boolean>
    • Parameters

      • extraPageArr: number[]

        An array of page numbers to extract.

      • savPath: string

        The path to save the extracted pages.

      Returns Promise<boolean>

      A Promise that resolves to true if the extraction operation is successful, otherwise false.

getCurrentDocView: () => Promise<null | DocViewType>

Gets the current DocView for specified document.

Type declaration

getCurrentPageIndex: () => Promise<number>

Get the current page index

Type declaration

    • (): Promise<number>
    • Returns Promise<number>

getDocView: (viewIndex: number) => Promise<null | DocViewType>

Gets the specified DocView for specified document.

Type declaration

getDocViewCount: () => Promise<number>

Gets the number of DocView for specified document.

Type declaration

    • (): Promise<number>
    • Returns Promise<number>

getFileName: () => Promise<string>

Gets the filename.

Type declaration

    • (): Promise<string>
    • Returns Promise<string>

      • The filename.
getInterForm: () => Promise<null | InterFormType>

Gets the interactive form of the document.

Type declaration

getPage: (index: number) => Promise<null | PageType>

Gets the specified Page from specified document.

Type declaration

    • (index: number): Promise<null | PageType>
    • Parameters

      • index: number

        The page index, starting from 0.

      Returns Promise<null | PageType>

      • The specified Page.
getPageCount: () => Promise<number>

Get the number of pages in the document.

Type declaration

    • (): Promise<number>
    • Returns Promise<number>

      • The number of pages in the document.
getPermissions: () => Promise<number>

Gets permissions of a document.

Type declaration

getRoot: () => Promise<null | PDFObjectType>

Gets the root object of the document.

Type declaration

getRootBookmark: () => Promise<null | BookmarkType>

Get root bookmark.

Type declaration

getTextSelectTool: () => Promise<null | TextSelectToolType>

Gets the text select tool for the document.

Type declaration

insertPages: (options: InsertPagesType) => Promise<boolean>

Insert pages from one document into another at a specified position.

Type declaration

    • (options: InsertPagesType): Promise<boolean>
    • Parameters

      Returns Promise<boolean>

      A promise that resolves to true if the insertion was successful, otherwise false.

isDocModify: () => Promise<boolean>

Checks whether the document is modified.

Type declaration

    • (): Promise<boolean>
    • Returns Promise<boolean>

      • TRUE if the document is modified, otherwise not.
options: Options
printPages: (firstPage: number, lastPage: number) => Promise<void>

Print document from specific page range.

Type declaration

    • (firstPage: number, lastPage: number): Promise<void>
    • Parameters

      • firstPage: number

        Starting page index (0-based)

      • lastPage: number

        Ending page index (0-based)

      Returns Promise<void>

printSetup: () => Promise<void>

Open the print dialog for the current document.

Type declaration

    • (): Promise<void>
    • Returns Promise<void>

reloadPage: (pageIndex: number, disableGoto: boolean) => Promise<boolean>

Reloads the specified page, used to refresh page view.

Type declaration

    • (pageIndex: number, disableGoto: boolean): Promise<boolean>
    • Parameters

      • pageIndex: number

        The specified page index.

      • disableGoto: boolean

      Returns Promise<boolean>

      • TRUE if the operation is successful, otherwise not.
removeHeaderFooter: (specifyHeaderFooterDicValue: string) => Promise<boolean>

Remove header and footer without updating document view.

Type declaration

    • (specifyHeaderFooterDicValue: string): Promise<boolean>
    • Parameters

      • specifyHeaderFooterDicValue: string

        Specified watermark DictValue

      Returns Promise<boolean>

      • TRUE if the operation is successful, otherwise not.
removeWatermark: (specifyWatermarkDicValue: string) => Promise<boolean>

Remove watermark without updating document view.

Type declaration

    • (specifyWatermarkDicValue: string): Promise<boolean>
    • Parameters

      • specifyWatermarkDicValue: string

        Specified watermark Dictionary Value

      Returns Promise<boolean>

replacePages: (__namedParameters: ReplacePagesType) => Promise<boolean>

Asynchronously replaces pages in the current PDF document.

Type declaration

    • (__namedParameters: ReplacePagesType): Promise<boolean>
    • Parameters

      Returns Promise<boolean>

      A Promise that resolves to true if the replacement operation is successful, otherwise false.

resizePage: (options: ResizePageOptions) => Promise<boolean>

Resize page.

Type declaration

    • (options: ResizePageOptions): Promise<boolean>
    • Parameters

      Returns Promise<boolean>

      Indicates whether the resize operation was successful

savePdf: (
    srcFileName: string,
    flag?: number,
    enable?: boolean,
) => Promise<boolean>

Save the data of a PDF document

Type declaration

    • (srcFileName: string, flag?: number, enable?: boolean): Promise<boolean>
    • Parameters

      • srcFileName: string

        Output file name (e.g., D:\123.pdf)

      • Optionalflag: number

        Save flag, default is FPD_SAVE_DEFAULT (0)

      • Optionalenable: boolean

        Whether to enable data compression, default is false

      Returns Promise<boolean>

      • TRUE if the operation is successful, otherwise not.
setChangeMark: () => Promise<void>

Sets the modify flag. Reader has a built-in flag that indicate whether a document has been modified, if the value of the flag is valid, the Save button on File toolbar is enable, otherwise the Save button is disable.

Type declaration

    • (): Promise<void>
    • Returns Promise<void>

setPermissions: (permission: number) => Promise<void>

Set document permissions.