Расширенные возможности сохранения HTML-документов с помощью Aspose.Words Java
В этом уроке мы рассмотрим расширенные возможности сохранения HTML-документов, предоставляемые Aspose.Words для Java. Aspose.Words — это мощный Java API для работы с документами Word, предлагающий широкий спектр функций для обработки и преобразования документов.
1. Введение
Aspose.Words for Java позволяет вам работать с документами Word программно. В этом руководстве мы сосредоточимся на расширенных параметрах сохранения документов HTML, которые позволяют вам контролировать, как документы Word преобразуются в HTML.
2. Экспорт информации о круговом маршруте
TheexportRoundtripInformation
Метод позволяет экспортировать документы Word в HTML, сохраняя информацию о передаче. Эта информация может быть полезна, когда вы хотите преобразовать HTML обратно в формат Word, не теряя никаких деталей, специфичных для документа.
public void exportRoundtripInformation() throws Exception {
Document doc = new Document("Your Directory Path" + "Rendering.docx");
HtmlSaveOptions saveOptions = new HtmlSaveOptions();
saveOptions.setExportRoundtripInformation(true);
doc.save("Your Directory Path" + "WorkingWithHtmlSaveOptions.ExportRoundtripInformation.html", saveOptions);
}
3. Экспорт шрифтов в формате Base64
СexportFontsAsBase64
Метод позволяет экспортировать шрифты, используемые в документе, в виде закодированных в Base64 данных в HTML. Это гарантирует, что представление HTML сохранит те же стили шрифтов, что и исходный документ Word.
public void exportFontsAsBase64() throws Exception {
Document doc = new Document("Your Directory Path" + "Rendering.docx");
HtmlSaveOptions saveOptions = new HtmlSaveOptions();
saveOptions.setExportFontsAsBase64(true);
doc.save("Your Directory Path" + "WorkingWithHtmlSaveOptions.ExportFontsAsBase64.html", saveOptions);
}
4. Экспорт ресурсов
TheexportResources
Метод позволяет указать тип таблицы стилей CSS и экспортировать ресурсы шрифтов. Вы также можете задать папку ресурсов и псевдоним для ресурсов в HTML.
public void exportResources() throws Exception {
Document doc = new Document("Your Directory Path" + "Rendering.docx");
HtmlSaveOptions saveOptions = new HtmlSaveOptions();
saveOptions.setCssStyleSheetType(CssStyleSheetType.EXTERNAL);
saveOptions.setExportFontResources(true);
saveOptions.setResourceFolder("Your Directory Path" + "Resources");
saveOptions.setResourceFolderAlias("http://example.com/resources");
doc.save("Your Directory Path" + "WorkingWithHtmlSaveOptions.ExportResources.html", saveOptions);
}
5. Конвертировать метафайлы в EMF или WMF
TheconvertMetafilesToEmfOrWmf
Метод позволяет преобразовывать метафайлы в документе в формат EMF или WMF, обеспечивая совместимость и плавную визуализацию в HTML.
public void convertMetafilesToEmfOrWmf() throws Exception {
string dataDir = "Your Document Directory";
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.write("Here is an image as is: ");
builder.insertHtml(
"<img src=\"data:image/png;base64,\r\n iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGP\r\n C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IA\r\n AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J\r\n REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq\r\n ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0\r\n vr4MkhoXe0rZigAAAABJRU5ErkJggg==\" alt=\"Красная точка\" />");
HtmlSaveOptions saveOptions = new HtmlSaveOptions(); { saveOptions.setMetafileFormat(HtmlMetafileFormat.EMF_OR_WMF); }
doc.save(dataDir + "WorkingWithHtmlSaveOptions.ConvertMetafilesToEmfOrWmf.html", saveOptions);
}
6. Конвертировать метафайлы в SVG
ИспользуйтеconvertMetafilesToSvg
метод преобразования метафайлов в формат SVG. Этот формат идеально подходит для отображения векторной графики в HTML-документах.
public void convertMetafilesToSvg() throws Exception {
string dataDir = "Your Document Directory";
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.write("Here is an SVG image: ");
builder.insertHtml(
"<svg height='210' width='500'>\r\n <polygon points='100,10 40,198 190,78 10,78 160,198' \r\n style='fill:lime;stroke:purple;stroke-width:5;fill-rule:evenodd;' />\r\n </svg> ");
HtmlSaveOptions saveOptions = new HtmlSaveOptions(); { saveOptions.setMetafileFormat(HtmlMetafileFormat.SVG); }
doc.save(dataDir + "WorkingWithHtmlSaveOptions.ConvertMetafilesToSvg.html", saveOptions);
}
7. Добавьте префикс имени класса CSS
СaddCssClassNamePrefix
Метод позволяет добавлять префикс к именам классов CSS в экспортированном HTML. Это помогает предотвратить конфликты с существующими стилями.
public void addCssClassNamePrefix() throws Exception {
Document doc = new Document("Your Directory Path" + "Rendering.docx");
HtmlSaveOptions saveOptions = new HtmlSaveOptions();
saveOptions.setCssStyleSheetType(CssStyleSheetType.EXTERNAL);
saveOptions.setCssClassNamePrefix("pfx_");
doc.save("Your Directory Path" + "WorkingWithHtmlSaveOptions.AddCssClassNamePrefix.html", saveOptions);
}
8. Экспортируйте URL-адреса CID для ресурсов MHTML
TheexportCidUrlsForMhtmlResources
Метод используется при сохранении документов в формате MHTML. Позволяет экспортировать URL Content-ID для ресурсов.
public void exportCidUrlsForMhtmlResources() throws Exception {
string dataDir = "Your Document Directory";
Document doc = new Document(dataDir + "Content-ID.docx");
HtmlSaveOptions saveOptions = new HtmlSaveOptions(SaveFormat.MHTML);
{
saveOptions.setPrettyFormat(true); saveOptions.setExportCidUrlsForMhtmlResources(true);
}
doc.save(dataDir + "WorkingWithHtmlSaveOptions.ExportCidUrlsForMhtmlResources.mhtml", saveOptions);
}
9. Разрешите названия шрифтов
TheresolveFontNames
Метод помогает разрешать названия шрифтов при сохранении документов в формате HTML, обеспечивая единообразную визуализацию на разных платформах.
public void resolveFontNames() throws Exception {
string dataDir = "Your Document Directory";
Document doc = new Document(dataDir + "Missing font.docx");
HtmlSaveOptions saveOptions = new HtmlSaveOptions(SaveFormat.HTML);
{
saveOptions.setPrettyFormat(true); saveOptions.setResolveFontNames(true);
}
doc.save(dataDir + "WorkingWithHtmlSaveOptions.ResolveFontNames.html", saveOptions);
}
10. Экспорт поля формы ввода текста как текста
TheexportTextInputFormFieldAsText
метод экспортирует поля формы как обычный текст в HTML, что делает их легко читаемыми и редактируемыми.
public void exportTextInputFormFieldAsText() throws Exception {
string dataDir = "Your Document Directory";
Document doc = new Document(dataDir + "Rendering.docx");
String imagesDir = Path.combine(dataDir, "Images");
// Указанная папка должна существовать и быть пустой.
if (Directory.exists(imagesDir))
Directory.delete(imagesDir, true);
Directory.createDirectory(imagesDir);
// Установите опцию экспорта полей формы как обычного текста, а не как элементов ввода HTML.
HtmlSaveOptions saveOptions = new HtmlSaveOptions(SaveFormat.HTML);
{
saveOptions.setExportTextInputFormFieldAsText(true); saveOptions.setImagesFolder(imagesDir);
}
doc.save(dataDir + "WorkingWithHtmlSaveOptions.ExportTextInputFormFieldAsText.html", saveOptions);
}
Заключение
В этом уроке мы изучили расширенные возможности сохранения HTML-документов, предоставляемые Aspose.Words for Java. Эти возможности дают вам детальный контроль над процессом преобразования, позволяя создавать HTML-документы, которые очень похожи на исходные документы Word.
Часто задаваемые вопросы
Вот некоторые часто задаваемые вопросы о работе с Aspose.Words для Java и параметрах сохранения документов HTML:
В1: Как преобразовать HTML обратно в формат Word с помощью Aspose.Words для Java?
Чтобы преобразовать HTML обратно в формат Word, вы можете использовать API Aspose.Wordsload
метод загрузки HTML-документа и последующего сохранения его в формате Word.
В2: Могу ли я настраивать стили CSS при экспорте в HTML?
Да, вы можете настраивать стили CSS, изменяя таблицы стилей, используемые в HTML, или используяaddCssClassNamePrefix
метод добавления префикса к именам классов CSS.
В3: Есть ли способ оптимизировать вывод HTML для отображения в Интернете?
Да, вы можете оптимизировать вывод HTML для отображения на веб-сайтах, настроив такие параметры, как экспорт шрифтов в формате Base64 и преобразование метафайлов в SVG.
В4: Существуют ли какие-либо ограничения при конвертации сложных документов Word в HTML?
Хотя Aspose.Words для Java предоставляет мощные возможности конвертации, для получения желаемого результата в формате HTML сложным документам Word со сложной структурой может потребоваться дополнительная постобработка.