码农的狗蛋 2023-05-30 16:19 采纳率: 47.9%
浏览 22
已结题

求CharacterRun的全部属性

求CharacterRun的全部属性,另外HWPF怎么分页啊,也就是doc怎么分页啊。

if(filename.endsWith(".doc")){
                    HWPFDocument documentlisth = new HWPFDocument(in);
                    Range range = documentlisth.getRange();
                    documentlists.add(range);
                    for(int i=0;i<documentlists.size();i++){
                        doch=documentlists.get(0);
                            if(i==0){
                                Paragraph  paragraph=doch.getParagraph(0);
                                CharacterRun crun=paragraph.getCharacterRun(0);
                                crun.insertAfter(tname);
                                crun.setBold(false);
                                crun.setFontSize(28);        
                       
                        }   
                    }

  • 写回答

2条回答 默认 最新

  • IT论之程序员 2023-05-30 19:36
    关注

    haracterRun的属性有:

    1. String getText() 获取文本内容
    2. int getFontSize() 获取字体大小
    3. boolean isBold() 是否加粗
    4. boolean isItalic() 是否斜体
    5. boolean isUnderline() 是否下划线
    6. int getFontIndex() 获取字体索引
    7. Color getColor() 获取字体颜色
    8. String getFontName() 获取字体名称
    9. boolean isHidden() 是否隐藏
    10. boolean isSmallCaps() 是否小型大写字母
    11. short getSpacing() 获取字间距
    12. int getKerning() 获取字距
      HWPF分页的原理是:
    13. 一个Section代表一页,HWPFDocument中可以有多个Section
    14. 每个Section中可以有多个Paragraph,每个Paragraph代表一个段落
    15. 每个Paragraph中可以有多个CharacterRun,每个CharacterRun代表一行文字
    16. word处理文档时,当文字填充满一页时,会自动生成一个新的Section来代表新页
    17. 读取word文档时,通过 iterating Sections、Paragraphs 和 CharacterRuns 可获取每个页的内容
      所以代码中的documentlisth代表整个文档,range代表文档的一个段落(可以跨页),通过range可以获取段落里的CharacterRun,对CharacterRun进行修改即可实现对DOC的修改。
      修改字体大小、加粗等属性可以通过range里的CharacterRun完成,插入文字可以通过CharacterRun的insertAfter方法实现。
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 6月8日
  • 已采纳回答 5月31日
  • 创建了问题 5月30日

悬赏问题

  • ¥15 Spring MVC项目,访问不到相应的控制器方法
  • ¥15 esp32在micropython环境下使用ssl/tls连接mqtt服务器出现以下报错Connected on 192.168.154.223发生意外错误: 5无法连接到 MQTT 代理,如何解决?
  • ¥15 关于#genesiscsheel#的问题,如何解决?
  • ¥15 Android aidl for hal
  • ¥15 STM32CubeIDE下载程序报错
  • ¥15 微信好友如何转变为会员系统?(相关搜索:小程序)
  • ¥15 c# 直接使用c++ 类库文件
  • ¥15 一个主机电脑有两个显示器,当前有两个软件主体是网页html打包的exe程序,如何通过cmd命令bat同时打开软件一个在主屏幕显示,另外一个软件在2副屏幕上显示
  • ¥15 AE SDK插件开发,获取关键帧值得问题
  • ¥15 谁知道这个咋搞的吗,有偿