[英]Aspose Words - remove only part of bookmarks
我在删除书签和段落时遇到问题。
书签: SUB_1 , SUB_2 , SUB_3 , SUB_4 , SUB_5 。
循环执行后,仅删除SUB_1,SUB_3和SUB_5 。
BookmarkCollection bookmarks = doc.getRange().getBookmarks();
DocumentBuilder builder = new DocumentBuilder(doc);
System.out.println(bookmarks.getCount());
for(Bookmark b : bookmarks) {
System.out.println("bookmark: " + b.getName());
builder.moveToBookmark(b.getName());
builder.getCurrentParagraph().remove();
}
输出:
10:13:10,379 INFO [stdout] 5
10:13:10,380 INFO [stdout] (EJB default - 8) bookmark: SUB_1
10:13:10,381 INFO [stdout] (EJB default - 8) bookmark: SUB_3
10:13:10,382 INFO [stdout] (EJB default - 8) bookmark: SUB_5
您也可以使用bookmark.remove()方法删除书签,而不是将光标移动到段落然后删除该段落。
我在Aspose担任开发人员推广员。
我解决了我的问题。 它不是很好,但是对我有用。
BookmarkCollection bookmarks = doc.getRange().getBookmarks();
DocumentBuilder builder;
try {
builder = new DocumentBuilder(doc);
while(bookmarks.getCount() > 0) {
for(Bookmark b : bookmarks) {
System.out.println("bookmark: " + b.getName());
b.setText("");
builder.moveToBookmark(b.getName());
builder.getCurrentParagraph().remove();
}
}
} catch (Exception e) {
e.printStackTrace();
logger.error("Problem with deleting bookmark");
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.