EditViewer Class
Edit Viewer is used to edit the pages in document, such as, rotating, cropping, filtering, etc. as well as adjust the layout of the display.
API Index
Create and Destroy Instances
API Name | Description |
---|---|
EditViewer() |
Default constructor of an EditViewer instance. |
destroy() |
Destroy the EditViewer instance. |
Viewer Control
API Name | Description |
---|---|
bindContainer() |
Bind the viewer to the specified container. |
unbindContainer() |
Unbind the viewer from the specified container. |
isBoundContainer |
Return whether the viewer is bound to a container. |
getStyle() |
Get the style object of EditViewer . |
updateStyle() |
Update the style object of EditViewer . |
getUiConfig() |
Get current UiConfig object. |
updateUiConfig() |
Update UiConfig object. |
show() |
Show the viewer. |
hide() |
Hide the viewer. |
isVisible |
Return whether the viewer is shown or hidden. |
toolMode |
Specify or return the tool mode of the viewer. |
annotationMode |
Specify or return the annotation mode of the viewer. |
Document and Page Control
API Name | Description |
---|---|
openDocument() |
Open the specified document by document uid. |
closeDocument() |
Close current document. |
currentDocument |
Return the object of the current document. |
getPageCount() |
Get the page count in the viewer. |
goToPage() |
Navigate to the specified page by index. |
getCurrentPageIndex() |
Get the index of current page. |
getCurrentPageUid() |
Get the uid of the current page. |
indexToUid() |
Get the uid of the specified page by its index. |
uidToIndex() |
Get the index of the specified page by its uid. |
Display Control
API Name | Description |
---|---|
displayMode |
Specify or return the display mode of the viewer. |
setParallelScrollCount() |
Specify the number of pages to scroll in parallel. |
fitMode |
Specify or return the fit mode of the viewer. |
zoom |
Specify or return zoom ratio. |
zoomOrigin |
Specify or return the zoom origin of the viewer. |
Annotation Control
API Name | Description |
---|---|
selectAnnotations() |
Select the specified annotation(s) on the current page. |
getSelectedAnnotations() |
Get selected annotation(s). |
Edit Operations
API Name | Description |
---|---|
rotate() |
Rotate the specified pages. |
crop() |
Crop the specified page(s) with the specified rectangle. |
getCropRect() |
Get the crop rectangular selection. |
setCropRect() |
Set a crop rectangular selection on the current page. This method is only available when toolMode is crop mode. |
undo() |
Undo the last editing operation. |
redo() |
Redo the last undo operation. |
saveOperations() |
Save the edit operations in pages to document. |
Events
API Name | Description |
---|---|
on() |
Bind a listener to the specified event. |
off() |
Unbind event listener(s) from the specified event. |
Integrated Events
Event Name | Description |
---|---|
resized |
Triggered when the viewer is resized. |
pageRendered |
Triggered when a page has been completely rendered. |
currentIndexChanged |
Triggered when currentIndex is changed. |
currentPageChanged |
Triggered when current page is changed. |
displayModeChanged |
Triggered when the display mode is changed. |
fitModeChanged |
Triggered when the fit mode has changed. |
zoomChanged |
Triggered when the zoom ratio has been changed. |
toolModeChanged |
Triggered when the tool mode has changed. |
cropRectDrawn |
Triggered when a rectangular selection is drawn. |
cropRectDeleted |
Triggered when the rectangular selection is deleted. |
cropRectModified |
Triggered when the crop rectangular selection is modified. |
selectedAnnotationsChanged |
Triggered when selected annotation(s) is changed. |
click |
Triggered when click in the viewer’s viewing area. |
dblclick |
Triggered when double click in the viewer’s viewing area. |
rightclick |
Triggered when right click in the viewer’s viewing area. |
Create and Destroy Instances
EditViewer()
Default constructor of an EditViewer
instance.
Syntax
new Dynamsoft.DDV.EditViewer(options?: EditViewerConstructorOptions);
Parameters
options
: The constructor options for an EditViewer
instance. Please refer to EditViewerConstructorOptions
.
Code Snippet
const editViewer = new Dynamsoft.DDV.EditViewer({
container: document.getElementById("viewer"),
});
// An IBrowseViewer object will be created at meanwhile. Please refer to Remark part.
const thumbnailObj = editViewer.thumbnail;
Exception
Error Code | Error Message |
---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. |
-80001 | License string is invalid. |
-80002 | XXX(LicenseModuleName) module license has expired. |
-80003 | XXX(LicenseModuleName) module license is missing. |
-80004 | XXX(LicenseModuleName) module license version does not match. |
-80005 | Domain does not match the domain bound to the XXX(LicenseModuleName) module license. |
-80050 | DDV.Core.init() has not been set up yet. |
-80051 | DDV.Core.init() has not been completed. |
-80302 | minZoom value cannot be larger than maxZoom value. |
Warning
Error Code | Error Message |
---|---|
-80316 | ImageFilter needs to be configured by Dynamsoft.DDV.setProcessingHandler to enable the image filter feature. |
Remark
- An
IBrowseViewer
object,editViewer.thumbnail
, will be created at meanwhile which represents the thumbnail object in edit viewer. Please refer toIBrowseViewer
.
destroy()
Destroy the EditViewer
instance.
Syntax
destroy(): void;
Code Snippet
editViewer.destroy();
Remark
- The editing operations (rotating, cropping, filtering) in pages will be saved to document automatically when destroy the viewer instance.
See Also
Viewer Control
bindContainer()
Bind the viewer to the specified container.
Syntax
bindContainer(container: string | HTMLElement): void;
Parameters
container
: The container which is used to show the viewer. Its id
or HTMLElement
is acceppted.
Code Snippet
// Assume there is a container with id "viewercontainer" on the page.
editViewer.bindContainer("viewercontainer");
Exception
Error Code | Error Message |
---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. |
-80102 | XXX(API): XXX(ParameterName) is missing. |
-80301 | The specified container does not exist. |
Remark
- A viewer can only be bound to one container at once. If you bind the viewer to another container when it has been bound to a container, the viewer will be bound to the new container and unbound from the old container automatically.
unbindContainer()
Unbind the viewer from the specified container.
Syntax
unbindContainer(): void;
Code Snippet
editViewer.unbindContainer();
isBoundContainer
Return whether the viewer is bound to a container.
Syntax
readonly isBoundContainer: boolean;
getStyle()
Get the style object of EditViewer
.
Syntax
getStyle(editViewerStyleName: EditViewerStyleName): EditViewerStyle | null;
Parameters
editViewerStyleName
: An EditViewerStyleName
can be one of five types.
type EditViewerStyleName = "canvasStyle" | "pageStyle" | "currentPageStyle" | "quadSelectionStyle" | "annotationSelectionStyle";
Return values
The style object. Please refer to Style Interfaces..
Code Snippet
// Get pageStyle object;
const pageStyle = editViewer.getStyle("pageStyle");
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. | null |
-80102 | XXX(API): XXX(ParameterName) is missing. | null |
-80103 | XXX(API): The value for XXX(ParameterName) is not supported. | null |
updateStyle()
Update the style object of EditViewer
.
Syntax
updateStyle(editViewerStyleName: EditViewerStyleName, editViewerStyle: EditViewerStyle): boolean;
Parameters
editViewerStyleName
: An EditViewerStyleName
can be one of five types.
type EditViewerStyleName = "canvasStyle" | "pageStyle" | "currentPageStyle" | "quadSelectionStyle" | "annotationSelectionStyle";
editViewerStyle
: The style object. Please refer to Style Interfaces.
Return Value
true
: Successfully.
false
: Failed.
Code Snippet
-
First method
// Get style object const pageStyle = editViewer.getStyle("pageStyle"); // Modify the style object pageStyle.background = "red"; pageStyle.border = "1px solid green"; // Update page style editViewer.updateStyle("pageStyle", pageStyle);
-
Second method
// Update the style object directly editViewer.updateStyle("pageStyle", { background: "red", border: "1px solid green", });
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. | false |
-80102 | XXX(API): XXX(ParameterName) is missing. | false |
-80103 | XXX(API): The value for XXX(ParameterName) is not supported. | false |
Remark
- The updates are independent of whether the viewer is displayed and are updated in real time.
getUiConfig()
Get current UiConfig
object.
Syntax
getUiConfig(): UiConfig;
Return Value
The UiConfig
object.
Code Snippet
const viewerUi = editViewer.getUiConfig();
updateUiConfig()
Update UiConfig
object.
Syntax
updateUiConfig(uiConfig: UiConfig): boolean;
Parameters
uiConfig
: The UiConfig
to update.
Return Value
true
: Successfully.
false
: Failed.
Code Snippet
const viewerUi = Dynamsoft.DDV.getDefaultUiConfig("editViewer");
const header = viewerUi.children[0];
header.children.splice(0,0,Dynamsoft.DDV.Elements.Delete); //Add `Delete` element in header.
editViewer.updateUiConfig(viewerUi);
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. | false |
-80102 | XXX(API): XXX(ParameterName) is missing. | false |
-80313 | The element XXX(ElementName) is not supported in XXX(ClassName) class. | false |
Remark
- The updates are independent of whether the viewer is displayed and are updated in real time.
show()
Show the viewer.
Syntax
show(): void;
Code Snippet
editViewer.show();
Remark
- The viewer is shown automatically when it is created.
hide()
Hide the viewer.
Syntax
hide(): void;
Code Snippet
editViewer.hide();
isVisible
Return whether the viewer is shown or hidden.
Syntax
readonly isVisible: boolean;
Remark
- The viewer is shown automatically when it is created which means the default value of
isVisible
istrue
.
toolMode
Specify or return the tool mode of the viewer.
Syntax
toolMode: ToolMode;
A ToolMode
can be one of three types.
type ToolMode = "pan" | "crop" | "annotation";
pan
: The default tool mode.
crop
: A mode what allows to draw a rectangle by setCropRect()
.
annotation
: A mode that allows to annotations to be manipulated via the UI.
Code Snippet
editViewer.toolMode = "crop";
Warning
Error Code | Error Message |
---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. |
-80103 | XXX(API): The value for XXX(ParameterName) is not supported. |
Remark
- If
toolMode
is set toannotation
, can useannotationMode
to clarify the specific operation.
annotationMode
Specify or return the annotation mode of the viewer.
Syntax
annotationMode: AnnotationMode;
An AnnotationMode
can be one of eleven types.
type AnnotationMode = "select" | "erase" | "rectangle" | "ellipse" | "line" | "polygon" | "polyline" | "ink" | "textBox" | "textTypewriter" | "stamp";
select
: A mode that allows to select annotation(s) via UI.
erase
: A mode that allows to delete annotation(s) via UI.
rectangle
: A mode that allows to draw rectangle annotation(s) via UI.
ellipse
: A mode that allows to draw ellipse annotation(s) via UI.
line
: A mode that allows to draw line annotation(s) via UI.
polygon
: A mode that allows to draw polygon annotation(s) via UI.
polyline
: A mode that allows to draw polyline annotation(s) via UI.
ink
: A mode that allows to draw ink annotation(s) via UI.
textBox
: A mode that allows to draw text box annotation(s) via UI.
textTypewriter
: A mode that allows to draw text typewriter annotation(s) via UI.
stamp
: A mode that allows to draw stamp annotation(s) via UI.
Code Snippet
editViewer.toolMode = "annotation";
editViewer.annotationMode = "select";
Warning
Error Code | Error Message |
---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. |
-80103 | XXX(API): The value for XXX(ParameterName) is not supported. |
Remark
- It only take effect when
toolMode
isannotation
. - Default value is
select
. - When
enableContinuousDrawing
is false, please note that thetoolMode
will automatically switch topan
after completing an annotation drawing interaction, unless theannotationMode
is set toselect
,erase
, orink
mode.
Document and Page Control
openDocument()
Open the specified document.
Syntax
openDocument(docUid: string | doc: IDocument): void;
Parameters
docUid
: The uid of the specified document.
doc
: The object of the document to open. Please refer to IDocument.
Code Snippet
// Assume there is a document whose id is "lnn0ll9o124".
editViewer.openDocument("lnn0ll9o124");
// OR
// Assume there is a document object firstDoc.
const docUid = firstDoc.uid;
editViewer.openDocument(docUid);
editViewer.openDocument(firstDoc);
Exception
Error Code | Error Message |
---|---|
-80100 | XXX(API): docUid or doc is invalid. |
-80102 | XXX(API): docUid or doc is missing. |
-80104 | XXX(API): The specified document(s) do not exist. |
Remark
- If another ducument is opened when there is a document already opened, the opened document will be closed automatically.
closeDocument()
Close current document.
Syntax
closeDocument(): boolean;
Return Value
true
: Successfully.
false
: Failed.
Code Snippet
editViewer.closeDocument();
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80304 | No document opened. | false |
currentDocument
Return the object of the current document.
Syntax
readonly currentDocument: IDocument | null;
Code Snippet
const currentDoc = editViewer.currentDocument;
See Also
getPageCount()
Get the page count in the viewer.
Syntax
getPageCount(): number;
Return Value
The page count.
Code Snippet
const pageCount = editViewer.getPageCount();
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80304 | No document opened. | -1 |
goToPage()
Navigate to the specified page by index.
Syntax
goToPage(index: number): number;
Parameters
index
: The index of the page which need to navigate to.
Return Value
The index of the page which navigate to.
Code Snippet
// Navigate to page 4.
editViewer.goToPage(3);
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. | -1 |
-80101 | XXX(API): XXX(ParameterName) is out of range. | -1 |
-80102 | XXX(API): XXX(ParameterName) is missing. | -1 |
-80304 | No document opened. | -1 |
-80305 | There is no image in the current document. | -1 |
getCurrentPageIndex()
Get the index of the current page.
Syntax
getCurrentPageIndex(): number;
Return Value
The index of the current page.
Code Snippet
const currentIndex = editViewer.getCurrentPageIndex();
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80304 | No document opened. | -1 |
-80305 | There is no image in the current document. | -1 |
getCurrentPageUid()
Get the uid of the current page.
Syntax
getCurrentPageUid(): string;
Return Value
The uid of the current page.
Code Snippet
const curPageUid = editViewer.getCurrentPageUid();
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80304 | No document opened. | '' |
-80305 | There is no image in the current document. | '' |
indexToUid()
Get the uid of the specified page by its index.
Syntax
indexToUid(index: number): string;
Parameters
index
: The index of the specified page.
Return Value
The uid of the page.
Code Snippet
// Get the first page's uid
const firstPageUid = editViewer.indexToUid(0);
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. | '' |
-80101 | XXX(API): XXX(ParameterName) is out of range. | '' |
-80102 | XXX(API): XXX(ParameterName) is missing. | '' |
-80304 | No document opened. | '' |
-80305 | There is no image in the current document. | '' |
uidToIndex()
Get the index of the specified page by its uid.
Syntax
uidToIndex(pageUid: string): number;
Parameters
pageUid
: The uid of the specified page.
Return Value
The index of the page.
Code Snippet
const curPageUid = editViewer.getCurrentPageUid();
editViewer.uidToIndex(curPageUid);
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. | -1 |
-80102 | XXX(API): XXX(ParameterName) is missing. | -1 |
-80105 | XXX(API): The specified page(s) do not exist. | -1 |
-80304 | No document opened. | -1 |
-80305 | There is no image in the current document. | -1 |
Annotation Control
selectAnnotations()
Select the specified annotations on the current page.
Syntax
selectAnnotations(annotationUids: string[]): boolean;
Parameters
annotationUids
: Specify the array of annotation uids to select. If set to []
, no annotation will be selected.
Return value
true
: Successfully.
false
: Failed.
Warning
Error Code | Error Message | API return value |
---|---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. | false |
-80102 | XXX(API): XXX(ParameterName) is missing. | false |
-80304 | No document opened. | false |
-80305 | There is no image in the current document. | false |
-80314 | XXX(API): Not available in current toolMode. | false |
-80317 | The specified annotation(s) is not on the current page or does not exist. | false |
-80319 | ReadOnly annotation or noView annotation cannot be selected. | false |
-80320 | Unknown annotation or incomplete annotation cannot be selected. | false |
getSelectedAnnotations()
Get selected annotation(s).
Syntax
getSelectedAnnotations(): Annotation[];
Return value
An array of selected Annotation
object.
Code Snippet
const selectAnnots = editViewer.getSelectAnnotations();
Warning
Error Code | Error Message | API return value |
---|---|---|
-80304 | No document opened. | [] |
-80305 | There is no image in the current document. | [] |
Display Control
displayMode
Specify or return the display mode of the viewer.
Syntax
displayMode: DisplayMode;
A DisplayMode
can be one of two types.
type DisplayMode = "single" | "continuous";
single
: The pages in the viewer is displayed page by page.
continuous
: The pages in the viewer is displayed continuously.
Code Snippet
editViewer.displayMode = "single";
Warning
Error Code | Error Message |
---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. |
-80103 | XXX(API): The value for XXX(ParameterName) is not supported. |
Remark
- Default
displayMode
iscontinuous
. - When
displayMode
iscontinuous
, the default number of pages to scroll in parallel is 1 and which can be configure bysetParallelScrollCount
.
setParallelScrollCount()
Specify the number of pages to scroll in parallel.
Syntax
setParallelScrollCount(count: number): boolean;
Parameters
count
: The number of pages to scroll in parallel. The maximum value is 20.
Return Value
true
: Successfully.
false
: Failed.
Code Snippet
// Set three pages to scroll in parallel
editViewer.setParallelScrollCount(3);
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. | false |
-80101 | XXX(API): XXX(ParameterName) is out of range. | false |
-80102 | XXX(API): XXX(ParameterName) is missing. | false |
-80308 | EditViewer.setParallelScrollCount: Not available in current displayMode. | false |
Remark
- The setting will be applied when
displayMode
iscontinuous
mode.
fitMode
Specify or return the fit mode of the viewer.
Syntax
fitMode: FitMode;
A FitMode
can be one of four types.
type FitMode = "width" | "height" | "window" | "actualSize";
width
: The page is displayed to fit the width.
height
: The page is displayed to fit the height.
window
: The page is displayed to fit the window.
actualSize
: The page is displayed at its actual size, equal to zoom
set to 1.
Code Snippet
editViewer.fitMode = "width";
Warning
Error Code | Error Message |
---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. |
-80103 | XXX(API): The value for XXX(ParameterName) is not supported. |
Remark
- The default
fitMode
iswindow
, which means fit window. - Since the specified
fitMode
is calculated by zoom ratio, if the zoom ratio which set byzoom
does not match any offitMode
, the page will be displayed in specified zoom ratio andfitMode
will returnnone
.
zoom
Specify or return zoom ratio.
Syntax
zoom: number;
Code Snippet
//Actual size
editViewer.zoom = 1;
//Twice the actual size
editViewer.zoom = 2;
//10% the actual size
editViewer.zoom = 0.1;
Warning
Error Code | Error Message |
---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. |
-80306 | The value for zoom is larger than maxZoom value. |
-80307 | The value for zoom is smaller than minZoom value. |
Remark
- The interval of available values depends on
minZoom
andmaxZoom
which is set in EditViewerConfig when createEditViewer
object. - 1 means actual size of the page and equals to
actualSize
infitMode
. - Return value will be rounded to four decimal places.
zoomOrigin
Specify or return the zoom origin of the viewer.
Syntax
zoomOrigin: ZoomOrigin;
Code Snippet
// Set the zoom origin to upper left
const newZoomOrigin = {
x: "start",
y: "start",
};
editViewer.zoomOrigin = newZoomOrigin;
Warning
Error Code | Error Message |
---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. |
Remark
- The default zoomOrigin is center point of the viewer.
See Also
Edit Operations
rotate()
Rotate the specified pages.
Syntax
rotate(
angle: number,
indices?: number[]
): boolean;
Parameters
angle
: Specify the angle. Only multiples of 90 degrees are supported. Positive value means clockwise rotation, negative value means counterclockwise rotation.
indices
: The array of the pages indices which will be rotated. If not set, the current page will be rotated.
Return Value
true
: Successfully.
false
: Failed.
Code Snippet
// Rotate the first and second pages 90 degrees clockwise.
editViewer.rotate(90, [0,1]);
// Rotate current page 90 degrees counterclockwise.
editViewer.rotate(-90);
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. | false |
-80102 | XXX(API): XXX(ParameterName) is missing. | false |
-80103 | XXX(API): The value for XXX(ParameterName) is not supported. | false |
-80304 | No document opened. | false |
-80305 | There is no image in the current document. | false |
crop()
Crop the specified page(s) with the specified rectangle.
Syntax
crop(
rect: Rect,
indices?: number[]
): boolean;
Parameters
rect
: Specify the rectangle. Please refer to Rect
.
indices
: Specify the indices of the pages to be cropped. If not set, the current page will be cropped.
Return Value
true
: Successfully.
false
: Failed.
Code Snippet
const rect = {
left: 100,
top: 100,
width: 200,
height: 200,
};
editViewer.crop(rect, [0]); // Crop the first page
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. | false |
-80102 | XXX(API): XXX(ParameterName) is missing. | false |
-80304 | No document opened. | false |
-80305 | There is no image in the current document. | false |
-80309 | The specified rect exceeds the bounds of page index X(IndexNum). | false |
Remark
If one of the points of the rectangle is out of page range, crop operation does not take effect in this page and report warning.
getCropRect()
Get the crop rectangular selection.
Syntax
getCropRect(): Rect | null;
Return Value
The rectangular selection. Please refer to Rect
.
Code Snippet
editViewer.getCropRect();
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80304 | No document opened. | null |
Remark
- If there is no crop rectangular selection, returns
null
.
setCropRect()
This method is only available when
toolMode
iscrop
mode.
Set a crop rectangular selection on the current page.
Syntax
setCropRect(rect: Rect): boolean;
Parameters
rect
: Specify the rectangular selection. Please refer to Rect
.
Return Value
true
: Successfully.
false
: Failed.
Code Snippet
editViewer.toolMode = "crop"; // Set toolMode to "crop"
const rect = {
left: 100,
top: 100,
width: 200,
height: 200,
};
editViewer.setCropRect(rect);
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. | false |
-80102 | XXX(API): XXX(ParameterName) is missing. | false |
-80304 | No document opened. | false |
-80305 | There is no image in the current document. | false |
-80309 | The specified rect exceeds the bounds of page index X(IndexNum). | false |
-80314 | XXX(API): Not available in current toolMode. | false |
Remark
- In the viewer, only one rectangular selection can exist on the page at a time, which means if there is a rectangular selection existed when a new selection is drawn, the old one will be clear automatically.
- When
toolMode
is set topan
, the drawn rectangular selection will be clear.
undo()
Undo the last editing operation.
Syntax
undo(): boolean;
Return Value
true
: Successfully.
false
: Failed.
Code Snippet
editViewer.undo();
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80304 | No document opened. | false |
-80310 | No operations to undo. | false |
redo()
Redo the last undo operation.
Syntax
redo(): boolean;
Return Value
true
: Successfully.
false
: Failed.
Code Snippet
editViewer.redo();
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80304 | No document opened. | false |
-80311 | No operations to redo. | false |
saveOperations()
This method takes effect only for crop, rotate & filter(which is operated by using UI Element) operations.
Save the edit operations in pages to document.
Syntax
saveOperations(): boolean;
Return Value
true
: Successfully.
false
: Failed.
Code Snippet
editViewer.saveOperations();
Warning
Error Code | Error Message | API Return Value |
---|---|---|
-80304 | No document opened. | false |
Events
on()
Bind a listener to the specified event.
Syntax
on(eventName: EventName, listener:(event:EventObject)=>void): void;
Parameters
eventName
: Specify the event name. It can be an integrated event name or a custom event name configured through UiConfig
-events
.
listener
: Specify the listener.
Code Snippet
// Bind a listener to the integrated event resized.
const eventFunc = (e)=>{
console.log(e);
console.log(e.oldWidth);
console.log(e.newWidth);
};
editViewer.on("resized", eventFunc);
Warning
Error Code | Error Message |
---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. |
-80102 | XXX(API): XXX(ParameterName) is missing. |
off()
Unbind event listener(s) from the specified event.
Syntax
off(eventName: EventName, listener?:(event:EventObject)=>void): void;
Parameters
eventName
: Specify the event name. It can be an integrated event name or a custom event name configured through UiConfig
-events
.
listener
: Specify the listener. If no listener is specified, unbind all event listeners from the specified event.
Code Snippet
const eventFunc = (e)=>{
console.log(e);
console.log(e.oldWidth);
console.log(e.newWidth);
};
editViewer.on("resized", eventFunc);
// Unbind the specified event listener.
editViewer.off("resized", eventFunc);
Warning
Error Code | Error Message |
---|---|
-80100 | XXX(API): XXX(ParameterName) is invalid. |
-80102 | XXX(API): XXX(ParameterName) is missing. |
Integrated Events
resized
Triggered when the viewer is resized.
Callback
ResizedEvent
: An EventObject.
Attributes
oldWidth
: The old width of the viewer.
oldHeight
: The old height of the viewer.
newWidth
: The new width of the viewer.
newHeight
: The new height of the viewer.
pageRendered
Triggered when a page has been completely rendered. We only render the pages that are visible on the screen, so this event won’t get fired for every page in the document at once. This event will get called when the user scrolls up and down the document, or when a page is zoomed or rotated, or anything else that makes it rerender.
Callback
PageRenderedEvent
: An EventObject.
Attributes
index
: The index of the rendered page.
pageUid
: The pageUid of the rendered page.
currentIndexChanged
Triggered when currentIndex is changed.
Callback
CurrentindexChangedEvent
: An EventObject.
Attributes
oldIndex
: The old current index.
newIndex
: The new current index. If there is no index in the viewer, return -1
.
currentPageChanged
Triggered when current page is changed.
Callback
CurrentPageChangedEvent
: An EventObject.
Attributes
oldPageUid
: The uid of the page which is old current index. If the old page is removed, return ''
.
newPageUid
: The uid of the page which is new current index. If there is no index in the viewer, return ''
.
displayModeChanged
Triggered when the display mode is changed.
Callback
DisplayModeChangedEvent
: An EventObject.
Attributes
oldDisplayMode
: The old display mode.
newDisplayMode
: The new display mode.
fitModeChanged
Triggered when the fit mode has changed.
Callback
FitModeChangedEvent
: An EventObject.
Attributes
oldFitMode
: The old fit mode.
newFitmode
: The new fit mode.
zoomChanged
Triggered when the zoom ratio has been changed.
Callback
ZoomChangedEvent
: An EventObject.
Attributes
oldZoomRatio
: The old zoom ratio.
newZoomRatio
: The new zoom ratio.
toolModeChanged
Triggered when the tool mode has changed.
Callback
ToolModeChangedEvent
: An EventObject.
Attributes
oldToolMode
: The old tool mode.
newToolMode
: The new tool mode.
cropRectDrawn
Triggered when a rectangular selection is drawn.
Callback
CropRectDrawnEvent
: An EventObject.
Attributes
rect
: The drawn rectangle.
cropRectDeleted
Triggered when the rectangular selection is deleted.
Callback
CropRectDeletedEvent
: An EventObject.
Attributes
rect
: The deleted rectangle.
cropRectModified
Triggered when the crop rectangular selection is modified.
Callback
CropRectModifiedEvent
: An EventObject.
Attributes
oldRect
: The old rectangle.
newRect
: The new rectangle.
selectedAnnotationsChanged
Triggered when selected annotation(s) is changed.
Callback
SelectedAnnotationsChanged
: An EventObject.
Attributes
oldAnnotationUids
: The array of old selected annotations uids.
newAnnotationUids
: The array of new selected annotations uids.
Mouse Events
click
Triggered when click in the viewer’s viewing area. On mobile device, triggered when tap in the viewer’s viewing area.
dblclick
Triggered when double click in the viewer’s viewing area.
rightclick
Triggered when right click in the viewer’s viewing area. On mobile device, triggered when long-tap in the viewer’s viewing area.
Callback for mouse events
VPointerEvent
: An EventObject.
Attributes
index
: The page index.
pageUid
: The page uid.
imageX
: The relative x-coordinate of the click pointer on the image.
imageY
: The relative y-coordinate of the click pointer on the image.
canvasX
: The relative x-coordinate of the click pointer on the canvas.
canvasY
: The relative x-coordinate of the click pointer on the canvas.
nativeEvent
: PointerEvent