Добавление или изменение гиперссылок
Гиперссылкой в документах Microsoft Word является поле HYPERLINK
. В документе Aspose.Words гиперссылки реализуются с помощью класса FieldHyperlink.
Вставить гиперссылку
Используйте метод InsertHyperlink, чтобы вставить гиперссылку в документ. Этот метод принимает три параметра:
- Текст ссылки, которая будет отображаться в документе
- Место назначения ссылки (URL или название закладки внутри документа)
- Логический параметр, который должен иметь значение true, если
URL
является именем закладки внутри документа
Метод InsertHyperlink всегда добавляет апострофы в начале и конце URL.
Font
.
В следующем примере кода показано, как вставить гиперссылку в документ с помощью DocumentBuilder:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
builder.write("Please make sure to visit "); | |
builder.getFont().setColor(Color.BLUE); | |
builder.getFont().setUnderline(Underline.SINGLE); | |
builder.insertHyperlink("Aspose Website", "http://www.aspose.com", false); | |
builder.getFont().clearFormatting(); | |
builder.write(" for more information."); | |
doc.save(getArtifactsDir() + "AddContentUsingDocumentBuilder.InsertHyperlink.docx"); |
Заменять или модифицировать гиперссылки
Гиперссылка в документах Microsoft Word - это поле. Поле в документе Word, как мы говорили ранее, представляет собой сложную структуру, состоящую из множества узлов, которые включают начало поля, код поля, разделитель полей, результат поля и конец поля. Поля могут быть вложенными, содержать обширное содержимое и охватывать несколько абзацев или разделов документа.
Чтобы заменить или модифицировать гиперссылки, необходимо найти гиперссылки в документе и заменить либо их текст, либо URLs, либо и то, и другое.
В следующем примере кода показано, как найти все гиперссылки в документе Word и изменить их URL
и отображаемое название:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
Document doc = new Document(getMyDir() + "Hyperlinks.docx"); | |
for (Field field : doc.getRange().getFields()) | |
{ | |
if (field.getType() == FieldType.FIELD_HYPERLINK) | |
{ | |
FieldHyperlink hyperlink = (FieldHyperlink) field; | |
// Some hyperlinks can be local (links to bookmarks inside the document), ignore these. | |
if (hyperlink.getSubAddress() != null) | |
continue; | |
hyperlink.setAddress("http://www.aspose.com"); | |
hyperlink.setResult("Aspose - The .NET & Java Component Publisher"); | |
} | |
} | |
doc.save(getArtifactsDir() + "WorkingWithFields.ReplaceHyperlinks.docx"); |