Edit XLSM Files in Java


Download Free Trial

About GroupDocs.Annotation for Java API

GroupDocs.Annotation for Java API is a library that allows you to add annotations to PDF, Word and other documents on Mac, Windows or Ubuntu. GroupDocs.Annotation for Java is a native Java API for managing annotations with comprehensive support for creating, adding, editing, deleting, extracting and exporting annotations from images and various other documents. The full list of supported document formats you could see on this page.

This library allows you to work not only with XLSM document but also with many other types documents such as Word, Excel, PowerPoint, Outlook emails, Visio, Adobe, OpenDocument, OpenOffice, Photoshop, AutoCad and many others.

The GroupDocs.Annotation for Java API allows you to create and add new notes, edit annotations, extract comments, annotations, and remove them from documents. The library supports 13 different annotation types, including Text, Polyline, Area, Underline, Point, Watermark, Arrow, Ellipse, Text Replacement, Distance, Text Field, Resource Redaction in PDF, HTML, Microsoft Word documents, spreadsheets, diagrams, presentations, drawings, images and many other file formats.

The example (please see below) demonstrates working with XLSM document, in this example you could see the main steps of how to work with GroupDocs.Annotation: Setup a license, open a document you want to work with, creating an annotation, adding data objects to set annotation properties according to your requirements and saving the result to the needed place. Also you could have a look more detailed on the supported features on our github page, or in our product documentation.

Steps to Edit Annotations in XLSM in Java

GroupDocs.Annotation makes it easier for Java developers to update various annotation properties from XLSM files within any Java-based application by implementing a few easy steps.

  • Instantiate Annotator object with input document path or stream with instantiated LoadOptions with ImportAnnotations = true.
  • Create some AnnotationBase implementation and set Id of existed annotation (if annotation with that Id not found, nothing will be changed) or path list of annotations (all existed annotations will be removed).
  • Call update method of Annotator object with passed annotations.
  • Call save method with resultant document path or stream and SaveOptions object.

System Requirements

GroupDocs.Annotation for Java APIs are supported on all major platforms and operating systems. Before executing the code below, please make sure that you have the following prerequisites installed on your system.

  • Operating Systems: Microsoft Windows, Linux, MacOS
  • Development Environment: NetBeans, Intellij IDEA, Eclipse etc
  • Java Runtime Environment: Java 7 (1.7) and above
  • Get the latest version of GroupDocs.Annotation for Java from GroupDocs Artifact Repository

String outputPath = "UpdateAnnotation.bmp";

// Create an instance of Annotator class
Annotator annotator = new Annotator("input.bmp");

// Create an instance of Reply class for first example and add comments
Reply reply1 = new Reply();
reply1.setComment("Original first comment");
reply1.setRepliedOn(Calendar.getInstance().getTime());

Reply reply2 = new Reply();
reply2.setComment("Original second comment");
reply2.setRepliedOn(Calendar.getInstance().getTime());

java.util.List replies = new ArrayList();
replies.add(reply1);
replies.add(reply2);

// Create an instance of AreaAnnotation class and set options
AreaAnnotation original = new AreaAnnotation();
original.setId(1);
original.setBackgroundColor(65535);
original.setBox(new Rectangle(100, 100, 100, 100));
original.setCreatedOn(Calendar.getInstance().getTime());
original.setMessage("This is original annotation");
original.setReplies(replies);

// Add original annotation
annotator.add(original);
annotator.save(outputPath);
annotator.dispose();

LoadOptions loadOptions = new LoadOptions();

// Open annotated document
Annotator annotator1 = new Annotator(outputPath, loadOptions);

// Create an instance of Reply class for update first example
Reply reply3 = new Reply();
reply3.setComment("Updated first comment");
reply3.setRepliedOn(Calendar.getInstance().getTime());

Reply reply4 = new Reply();
reply4.setComment("Updated second comment");
reply4.setRepliedOn(Calendar.getInstance().getTime());

java.util.List replies1 = new ArrayList();
replies1.add(reply3);
replies1.add(reply4);

// Suggest we want change some properties of existed annotation
AreaAnnotation updated = new AreaAnnotation();
updated.setId(1);
updated.setBackgroundColor(255);
updated.setBox(new Rectangle(0, 0, 50, 200));
updated.setCreatedOn(Calendar.getInstance().getTime());
updated.setMessage("This is updated annotation");
updated.setReplies(replies1);

// Update and save annotation
annotator1.update(updated);
annotator1.save(outputPath);
annotator1.dispose();

Live Demos to Annotate Documents and Images

Read and edit annotations from XLSM file right now by visiting GroupDocs.Annotation Live Demos website. The live demo has the following benefits

No need to download API

No need to write any code

Just upload the source file

Get download link to save the file

About XLSM File Format

Files with XLSM extension is a type of Spreasheet files that support Macros. From application point of view, a Macro is set of instructions that are used for automating processes. A macro is used to record the steps that are performed repeatedly and facilitates performing the actions by running the macro again. Macros are programmed with Microsoft’s Visual Basic for Applications (VBA) from within the Excel Workbook using the Visual Basic Editor and can be run/debug directly from there.

Read More About XLSM File Format

Editing Annotating From Other Popular File Formats

Java annotations editor API for documents and image formats. Update annotation properties from some of the popular file formats as stated below.

Edit Annotation in PDF

(Adobe Portable Document Format)

Edit Annotation in DOC

(Microsoft Word Document)

Edit Annotation in DOCM

(Microsoft Word Macro-Enabled Document)

Edit Annotation in DOCX

(Microsoft Word Open XML Document)

Edit Annotation in DOT

(Microsoft Word Document Template)

Edit Annotation in DOTX

(Word Open XML Document Template)

Edit Annotation in RTF

(Rich Text Document)

Edit Annotation in ODT

(Open Document Text)

Edit Annotation in XLS

(Microsoft Excel Binary File Format)

Edit Annotation in XLSX

(Microsoft Excel Open XML Spreadsheet)

Edit Annotation in XLSM

(Microsoft Excel Macro-Enabled Spreadsheet)

Edit Annotation in XLSB

(Microsoft Excel Binary Worksheet)

Edit Annotation in ODS

(Open Document Spreadsheet)

Edit Annotation in PPT

(PowerPoint Presentation)

Edit Annotation in PPTX

(PowerPoint Open XML Presentation)

Edit Annotation in PPSX

(PowerPoint Open XML Slide Show)

Edit Annotation in POTM

(Microsoft PowerPoint Template)

Edit Annotation in PPTM

(Microsoft PowerPoint Presentation)

Edit Annotation in PPS

(Microsoft PowerPoint 97-2003 Slide Show)

Edit Annotation in ODP

(OpenDocument Presentation)

Edit Annotation in HTML

(HyperText Markup Language)

Edit Annotation in TIFF

(Tagged Image File Format)

Edit Annotation in PNG

(Portable Network Graphic)

Edit Annotation in EML

(E-mail Message)

Edit Annotation in MSG

(Microsoft Outlook E-mail Message)

Edit Annotation in VSD

(Microsoft Visio 2003-2010 Drawing)

Edit Annotation in VSDX

(Microsoft Visio Drawing)

Edit Annotation in VSS

(Microsoft Visio 2003-2010 Stencil)

Edit Annotation in VST

(Microsoft Visio 2013 Stencil)

Edit Annotation in DWG

(Autodesk Design Data Formats)

Edit Annotation in DXF

(AutoCAD Drawing Interchange)

Edit Annotation in DCM

(Digital Imaging and Communications in Medicine)

Edit Annotation in WMF

(Windows Metafile)

Edit Annotation in EMF

(Enhanced Metafile Format)

Back to top
 English