Microsoft Word широко используется для создания, редактирования и преобразования документов Word (DOC/DOCX) в различные форматы. Точно так же Markdown — это упрощенный язык разметки, который можно использовать для добавления элементов форматирования в текстовые документы. Это простой текстовый документ, который можно читать без тегов, которые все путают, но все же должны быть способы добавить текстовые модификаторы, такие как списки, полужирный шрифт, курсив и т. д. Итак, если у нас есть документ Word, и нам нужно создать эквивалентный файл в синтаксисе Markdown его сложно создать вручную. Однако программное решение может решить проблему. В этой статье мы подробно объясним, как разработать конвертер слов в уценку с помощью Java Cloud SDK.
API преобразования Word в Markdown
Наш API на основе REST под названием Aspose.Words Cloud представляет собой прекрасное решение для реализации операций создания, обработки и преобразования документов MS Word в различные поддерживаемые форматы. Теперь, чтобы реализовать те же возможности преобразования и обработки документов в приложении Java, нам нужно использовать Aspose.Words Cloud SDK для Java, который является оболочкой для REST API. Итак, на первом этапе использования SDK нам нужно добавить его ссылку в наш проект Java, включив следующую информацию в pom.xml (проект типа сборки maven).
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>https://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words-cloud</artifactId>
<version>22.12.0</version>
</dependency>
</dependencies>
После добавления ссылки SDK в проект следующим важным шагом будет получение учетных данных вашего клиента из Cloud Dashboard. В противном случае вам необходимо сначала зарегистрировать бесплатную учетную запись, используя действующий адрес электронной почты.
Word в MD на Java
В этом разделе объясняются шаги и связанные с ними подробности о том, как мы можем преобразовать Word в формат MD с помощью фрагмента кода Java. Мы собираемся использовать два варианта загрузки входного документа Word, то есть из облачного хранилища или локального диска, а затем преобразовать его в формат Markdown.
Загрузить документ Word с локального диска
- Прежде всего, создайте экземпляр WordsApi и передайте персонализированные учетные данные в качестве аргументов.
- Во-вторых, прочитайте содержимое входного документа Word с помощью метода Files.readAllBytes(…) и получите возвращаемое значение в массиве byte[]
- В-третьих, создайте объект ConvertDocumentRequest, который принимает входной файл Word, формат MD и имя результирующего файла Markdown в качестве аргументов.
- Теперь вызовите метод convertDocument(…) для преобразования Word в MD. Результирующий Markdown возвращается как поток ответов для сохранения в экземпляре byte[]
- Наконец, чтобы сохранить полученный Markdown на локальный диск, создайте объект FileOutputStream и используйте его метод write(…)
// Дополнительные фрагменты кода см. на странице https://github.com/aspose-words-cloud/aspose-words-cloud-java.
try
{
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// если baseUrl имеет значение null, WordsApi использует https://api.aspose.cloud по умолчанию.
WordsApi wordsApi = new WordsApi(clientId, clientSecret, null);
// загрузить документ Word из локальной системы
File file1 = new File("sample_EmbeddedOLE.docx");
// прочитать содержимое входного документа Word
byte[] documentStream = Files.readAllBytes(file1.toPath());
// результирующий формат файла
String format = "md";
// создать запрос на преобразование документа, где мы указываем результирующее имя файла
ConvertDocumentRequest convertRequest = new ConvertDocumentRequest(documentStream,format, null,null, null, null);
// выполнить преобразование слова в уценку и сохранить вывод в массиве байтов
byte[] resultantFile = wordsApi.convertDocument(convertRequest);
// Сохраните полученную документацию по уценке на локальный диск.
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "resultant.md");
fos.write(resultantFile);
fos.close();
}catch(Exception ex)
{
System.out.println(ex);
}
Вы можете загрузить входной документ Word из sampleEmbeddedOLE.docx.
Загрузить документ Word из облачного хранилища
- Точно так же сначала нам нужно создать экземпляр WordsApi, передав персональные учетные данные в качестве аргументов.
- Во-вторых, создайте объект GetDocumentWithFormatRequest, который принимает имя входного файла Word, формат MD и имя результирующего файла Markdown в качестве аргументов.
- Наконец, вызовите метод getDocumentWithFormat(..), который запускает операцию преобразования Word в Markdown. Полученный файл MD сохраняется в облачном хранилище.
// Дополнительные фрагменты кода см. на странице https://github.com/aspose-words-cloud/aspose-words-cloud-java.
try
{
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// если baseUrl имеет значение null, WordsApi использует https://api.aspose.cloud по умолчанию.
WordsApi wordsApi = new WordsApi(clientId, clientSecret, null);
String format = "md";
// теперь создайте новый объект GetDocumentWithFormatRequest
GetDocumentWithFormatRequest convertRequest = new GetDocumentWithFormatRequest("sample_EmbeddedOLE.docx",format,null, null, null,null,null,"Converted.md",null);
// теперь вызовите метод, чтобы инициировать операцию преобразования
// полученный файл хранится в облачном хранилище
wordsApi.getDocumentWithFormat(convertRequest);
}catch(Exception ex)
{
System.out.println(ex);
}
DOC в Markdown с помощью команд cURL
API-интерфейсы REST также обеспечивают гибкость доступа с любой платформы с помощью команд cURL. Итак, в этом разделе мы подробно обсудим, как загрузить документ Word из облачного хранилища, выполнить преобразование DOCX в Markdown и сохранить полученный файл MD на локальном диске. Теперь сначала нам нужно сгенерировать токен доступа JWT (на основе учетных данных клиента), используя следующую команду, а затем выполнить преобразование DOCX в Markdown.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
После создания JWT выполните следующую команду, чтобы загрузить документ Word из облачного хранилища и выполнить преобразование Word в Markdown. Полученный файл MD затем сохраняется на локальном диске.
curl -v -X GET "https://api.aspose.cloud/v4.0/words/sample_EmbeddedOLE.docx?format=md" \
-H "accept: application/octet-stream" \
-H "Authorization: Bearer <JWT Token>" \
-o "newOutput.md"
Заключение
Мы подошли к концу этой статьи, где узнали подробности о том, как мы можем программно преобразовать Word в Markdown с помощью Java. Точно так же мы также изучили шаги по преобразованию DOCX в Markdown с помощью команд cURL.
Другой способ изучить возможности API — через SwaggerUI в веб-браузере. Мы также рекомендуем ознакомиться с Документацией по продукту, которая является отличным источником информации о других интересных функциях. Если вам нужно загрузить и изменить исходный код Cloud SDK, он доступен на GitHub (опубликован под лицензией MIT). Наконец, если у вас возникнут какие-либо проблемы при использовании API, вы можете обратиться к нам за быстрым решением через бесплатный форум поддержки продукта.
Статьи по Теме
Пожалуйста, перейдите по следующим ссылкам, чтобы узнать больше о: