feat: bookmark replace

This commit is contained in:
zzs 2025-03-07 16:01:41 +08:00
parent f07fdf7bb7
commit dfee41ef5a

View File

@ -5,7 +5,6 @@ import cn.hutool.core.io.IoUtil;
import cn.hutool.core.io.file.FileNameUtil;
import com.wmyun.farmwork.word.core.model.BookmarkInfo;
import com.wmyun.farmwork.word.core.model.BookmarkReplaceDataModel;
import com.wmyun.farmwork.word.core.utils.StyleUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.xwpf.usermodel.*;
import org.apache.xmlbeans.XmlCursor;
@ -93,7 +92,7 @@ public class BookmarkExec {
// 处理列表
for (String mk : listMark) {
replaceListContent(doc, new String[]{"行1", "行2", "行3", "行4", "行5"}, mk);
handleListContent(doc, new String[]{"行1", "行2", "行3", "行4", "行5"}, mk);
}
@ -241,7 +240,10 @@ public class BookmarkExec {
}
}
public static void replaceListContent(XWPFDocument doc, String[] newListItems, String bookmarkName) {
/**
* 处理行新增
*/
public static void handleListContent(XWPFDocument doc, String[] newListItems, String bookmarkName) {
// 查找书签所在的段落
XWPFParagraph bookmarkParagraph = findBookmarkParagraph(doc, bookmarkName);
if (bookmarkParagraph == null) {
@ -331,7 +333,7 @@ public class BookmarkExec {
XWPFRun run = newPara.createRun();
run.setText(item);
// 将游标移动到新段落之后关键步骤
// 将游标移动到新段落之后
cursor = newPara.getCTP().newCursor();
cursor.toNextSibling();
}