C# DocX: добавить внутреннюю ссылку
В библиотеке DocX доступны по адресу: https://github.com/WordDocX/DocX
Можно добавить гиперссылку, но я не нашел способа добавить внутреннюю ссылку.
Кто-нибудь знает, как добавить ссылку на конкретный абзац или на закладку?
2 ответа
Способ, который я нашел:
synthesisDocument.AddHyperlink("Link",new Uri("file:///path/to/doc/file.doc#MY_BOOKMARK"));
synthesisDocument.Paragraphs[0].InsertHyperlink(h)
Таким образом, вы решите проблему, но только в формате doc, когда вы экспортируете в PDF, это не сработает. Я надеюсь, что это помогает
Как уже упоминалось, #BookMark работает, если Uri создан с флагом UriKind.Relative:
var uri = new Uri("#" + BookMark,UriKind.Relative);
var hyperLink = doc.AddHyperlink(textToDisplay, uri );
Теперь, чтобы использовать гиперссылку на абзац, p:
p.InsertHyperlink(hyperLink,indexToInsertAt);
Я достиг именно того результата, который хотел, используя это как в.docx, так и в.pdf
Надеюсь, это работает для вас,
Ник