在分佈式團隊環境中,團隊的不同成員可能會處理文檔的某些模塊,這些模塊需要組合以生成統一版本。可以使用各種應用程序執行此操作,但合併 word 文檔的手動步驟可能是一項乏味的活動。所以為了有一個更可行的解決方案,我們將討論如何使用Java SDK合併word文檔的細節。
合併文檔 API
Aspose.Words Cloud SDK for Java 使您能夠在 Java 應用程序中引入 Word 文檔創建、操作和轉換功能。它還提供了組合 word 文檔以生成單個統一輸出的功能。現在,為了使用 SDK,請在您的 maven 構建類型的 pom.xml 文件中添加以下詳細信息。
<repositories>
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.cloud/repo/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words-cloud</artifactId>
<version>22.5.0</version>
</dependency>
</dependencies>
安裝後,我們需要使用 GitHub 或 Google 帳戶在 Aspose.Cloud dashboard 上註冊一個免費帳戶,或者只需註冊並獲取您的客戶憑據。
在 Java 中合併 Word 文檔
請按照下面給出的說明使用 Java 代碼片段組合 Word 文檔。
- 第一步是創建 WordsApi 類的對象,同時將客戶端 ID 和客戶端機密詳細信息作為參數傳遞
- 其次,創建一個 DocumentEntry 對象,它接受要合併的文檔,然後將 setImportFormatMode(..) 方法的值設置為 KeepSourceFormatting
- 現在創建一個 ArrayList 對象並在其中添加 DocumentEntry 對象
- 然後創建一個以 ArrayList 對象為參數的 DocumentEntryList 對象
- 最後但同樣重要的是,創建一個 AppendDocumentOnlineRequest 對象,它將源 Word 文件和 DocumentEntryList 對像作為參數
- 最後,調用API的appendDocumentOnline(..)方法合併文檔,並將輸出結果保存在雲存儲中
For more examples, please visit https://github.com/aspose-words-cloud/aspose-words-cloud-java
try
{
// 從 https://dashboard.aspose.cloud/ 獲取 ClientID 和 ClientSecret
String clientId = "bbf94a2c-6d7e-4020-b4d2-b9809741374e";
String clientSecret = "1c9379bb7d701c26cc87e741a29987bb";
// 如果 baseUrl 為 null,WordsApi 使用默認的 https://api.aspose.cloud
WordsApi wordsApi = new WordsApi(clientId, clientSecret, null);
String firstFile = "Resultant.docx";
String documentToAppend = "TableDocument.doc";
String resultantFile = "MergedFile.docx";
// 讀取輸入 Word 文檔的所有字節
byte[] requestDocument = Files.readAllBytes(Paths.get("c://Downloads/"+firstFile).toAbsolutePath());
DocumentEntry requestDocumentListDocumentEntries0 = new DocumentEntry();
requestDocumentListDocumentEntries0.setHref("c://Downloads/"+documentToAppend);
requestDocumentListDocumentEntries0.setImportFormatMode("KeepSourceFormatting");
ArrayList<DocumentEntry> requestDocumentListDocumentEntries = new ArrayList<DocumentEntry>();
requestDocumentListDocumentEntries.add(requestDocumentListDocumentEntries0);
DocumentEntryList requestDocumentList = new DocumentEntryList();
requestDocumentList.setDocumentEntries(requestDocumentListDocumentEntries);
AppendDocumentOnlineRequest appendRequest = new AppendDocumentOnlineRequest(requestDocument, requestDocumentList, null, null, null, resultantFile, null, null);
wordsApi.appendDocumentOnline(appendRequest);
System.out.println("Combine Word Documents in Java sucessfull !");
}catch(Exception ex)
{
System.out.println(ex);
}
使用 cURL 命令合併 Word 文檔
cURL 命令還可用於訪問任何平台上的 REST API。因此,在本節中,我們將詳細討論如何使用 cURL 命令合併 word 文檔。現在第一步是生成 JSON Web Token (JWT),所以請在終端應用程序中執行以下命令。
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4&client_secret=d87269aade6a46cdc295b711e26809af" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
一旦我們有了 JWT Token,請執行以下命令來合併雲存儲中已有的 word 文檔。
curl -v -X PUT "https://api.aspose.cloud/v4.0/words/ComparisonResult.docx/appendDocument?destFileName=MergedFile.docx" \
-H "accept: application/json" \
-H "Authorization: Bearer <JWT Token>" \
-H "Content-Type: application/json" \
-d "{\"DocumentEntries\":[{\"Href\":\"SampleMailMergeTemplate.docx\",\"ImportFormatMode\":\"KeepSourceFormatting\"}],\"ApplyBaseDocumentHeadersAndFootersToAppendingDocuments\":true}"
結論
我們已經討論瞭如何在 Java 中組合 word 文檔以及使用 cURL 命令的細節。請注意,SDK 的完整源代碼可以從 GitHub 下載。此外,為了探索 API 功能,您可以考慮通過 swagger 接口 訪問它。
如果您有任何進一步的疑問或遇到任何困難,請訪問免費支持論壇。
相關文章
我們強烈建議瀏覽以下博客