Add a text or image watermark to DOCX documents using Go. Load the DOCX document and insert the required watermark into it. Then save the result in a convenient format such as DOCX, PDF, MD, HTML, TXT, DOC, RTF, EPUB, XPS and more, and share the watermarked document with another person. Also remove the watermark from DOCX document if the watermark was previously added to the document, and the reasons for adding are not longer relevant.
With this Go API, developers can add a watermark to DOCX online. Just create the watermark using text or an image and then insert that watermark into your DOCX document in Go.
Note: there is no need to install any third party applications or libraries. Therefore, our Go software solution is very easy to use.
The given Go SDK is also helpful to remove watermarks from DOCX. Removing a watermark in DOCX means that you can load the desired DOCX document stamped with a text or image watermark, remove this watermark from the DOCX using Go, and then save the output file in a convenient format – DOC, DOCX, PDF, JPEG, PNG, TIFF and others.
To evaluate how to add or remove a watermark in DOCX with our Go API, load the DOCX and the watermark as an image or text. Then select a convenient export file format – DOC, DOCX, PDF, HTML, RTF, XPS and others.
Use the following example to see how it works:
import (
"os"
"github.com/aspose-words-cloud/aspose-words-cloud-go/dev/api/models"
)
config, _ := models.NewConfiguration("config.json")
wordsApi, ctx, _ := api.CreateWordsApi(config)
requestDocument, _ := os.Open("Input1.docx")
requestImageStream, _ := os.Open("Input2.jpg")
requestWatermarkDataImage := models.CreateLocalFileReference(requestImageStream)
requestWatermarkData := models.WatermarkDataImage{
Image: &requestWatermarkDataImage
}
insertWatermarkOptions := map[string]interface{}{}
insertWatermarkRequest := &models.InsertWatermarkOnlineRequest{
Document: requestDocument,
WatermarkData: &requestWatermarkData,
Optionals: insertWatermarkOptions
}
insertWatermarkResult, _, _ = wordsApi.InsertWatermarkOnline(ctx, insertWatermarkRequest)
convertDocumentOptions := map[string]interface{}{}
convertRequest := &models.ConvertDocumentRequest{
Document: insertWatermarkResult.Document.Values[0],
Format: ToStringPointer("docx"),
Optionals: convertDocumentOptions
}
_, _ = wordsApi.ConvertDocument(ctx, convertRequest)
import (
"os"
"github.com/aspose-words-cloud/aspose-words-cloud-go/dev/api/models"
)
config, _ := models.NewConfiguration("config.json")
wordsApi, ctx, _ := api.CreateWordsApi(config)
requestDocument, _ := os.Open("Input.docx")
requestWatermarkData := models.WatermarkDataText{
Text: ToStringPointer("This is the watermark text"),
Layout: ToStringPointer("Diagonal")
}
insertWatermarkOptions := map[string]interface{}{}
insertWatermarkRequest := &models.InsertWatermarkOnlineRequest{
Document: requestDocument,
WatermarkData: &requestWatermarkData,
Optionals: insertWatermarkOptions
}
insertWatermarkResult, _, _ = wordsApi.InsertWatermarkOnline(ctx, insertWatermarkRequest)
convertDocumentOptions := map[string]interface{}{}
convertRequest := &models.ConvertDocumentRequest{
Document: insertWatermarkResult.Document.Values[0],
Format: ToStringPointer("docx"),
Optionals: convertDocumentOptions
}
_, _ = wordsApi.ConvertDocument(ctx, convertRequest)
import (
"os"
"github.com/aspose-words-cloud/aspose-words-cloud-go/dev/api/models"
)
config, _ := models.NewConfiguration("config.json")
wordsApi, ctx, _ := api.CreateWordsApi(config)
requestDocument, _ := os.Open("Input.docx")
deleteWatermarkOnlineOptions := map[string]interface{}{}
deleteWatermarkOnline := &models.DeleteWatermarkOnlineRequest{
Document: requestDocument,
Optionals: deleteWatermarkOnlineOptions,
}
deletedWatermark = wordsApi.DeleteWatermarkOnline(ctx, deleteWatermarkOnline)
convertDocumentOptions := map[string]interface{}{}
convertDocument := &models.ConvertDocumentRequest{
Document: deletedWatermark.Document.Values[0],
Format: ToStringPointer("docx"),
Optionals: convertDocumentOptions,
}
_, _ = wordsApi.ConvertDocument(ctx, convertDocument)
Run go get -v github.com/aspose-words-cloud/aspose-words-cloud-go/2007/api to install Aspose.Words Cloud SDK for Go. You can get a lot of useful information about other installation methods from the "How to use SDK" section.
Clone Aspose.Words Cloud SDK for Go source code from GitHub and use it in your project. Please follow these Instructions to quickly get the necessary security credentials and access our REST API.
Refer to the Repository Documentation to see the details.
You can add a watermark to a document in other formats: