第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

當點位于占位符內(nèi)時,在頁眉/頁腳中使用 Apache POI 替換文本不起作用

當點位于占位符內(nèi)時,在頁眉/頁腳中使用 Apache POI 替換文本不起作用

慕絲7291255 2022-12-21 12:01:14
我使用 templ4docx/Apache POI (2.0.3/3.17)。在那里你可以像這樣設(shè)置一個 VariablePatten :private static final String START_PATTERN = "#{";private static final String END_PATTERN = "}";...targetDocx.setVariablePattern(new VariablePattern(START_PATTERN, END_PATTERN));當我使用帶點的占位符時,它在頁眉/頁腳中不起作用。在帶點的 Body 中它有效。圖像也適用于占位符和內(nèi)部點!Example in Word-Template:#{Person.Name} // works in Body NOT in Header/Footer!#{Person.Name} // works in Body and Header/Footer!#{Person} // works in Body and Header/Footer!#{Image.Name} // works in Body and Header/Footer! Here i use ImageVariable instead of Textvariable.我調(diào)試代碼,看到“run.setText()”是用正確的文本調(diào)用的,但在最終文檔中卻不是。@Overridepublic void insert(Insert insert, Variable variable) {    if (!(insert instanceof TextInsert)) {        return;    }    if (!(variable instanceof TextVariable)) {        return;    }    TextInsert textInsert = (TextInsert) insert;    TextVariable textVariable = (TextVariable) variable;    for (XWPFRun run : textInsert.getParagraph().getRuns()) {        String text = run.getText(0);        if (StringUtils.contains(text, textInsert.getKey().getKey())) {            text = StringUtils.replace(text, textVariable.getKey(), textVariable.getValue());            if (text.contains("\n")) {                String[] textLines = text.split("\n");                run.setText(textLines[0], 0);                for (int i = 1; i < textLines.length; i++) {                    run.addBreak();                    run.setText(textLines[i]);                }            } else {                run.setText(text, 0);            }        }    }}有什么想法為什么它不能與占位符“#{Person.Name}”一起用作頁眉/頁腳中的 TextVariable?但它適用于“#{PersonName}”和 ImageVariable“#{Images.Logo1}”???
查看完整描述

1 回答

?
慕田峪4524236

TA貢獻1875條經(jīng)驗 獲得超5個贊

看起來 Word 有時會分隔占位符,因此您只能在運行中找到部分占位符。

在“TextInsertStrategy”類中,我檢查拆分占位符的運行循環(huán)并相應(yīng)地處理它。這樣我就可以解決問題了。


查看完整回答
反對 回復(fù) 2022-12-21
  • 1 回答
  • 0 關(guān)注
  • 101 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號