Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 打开office api文本大小_Java_Api_Openoffice.org_Openoffice Writer_Uno - Fatal编程技术网

Java 打开office api文本大小

Java 打开office api文本大小,java,api,openoffice.org,openoffice-writer,uno,Java,Api,Openoffice.org,Openoffice Writer,Uno,我正在使用openofficeapi和javauno。我需要获取文档内容中所选文本的大小(例如,嵌入的图片在mm中有自己的大小,但通过XText.insertString(…)方法插入的文本没有任何大小) 换句话说:我想得到包围部分文本的框的大小(最好是mm)(它可以是整个段落,也可以是通过某种类型的光标选择的文本)有没有可能做到这一点?经过搜索,我认为目前没有办法做到这一点。出于我的目的,我写了一个小方法,以获得段落高度的1/100毫米 以下是此方法的工作原理: 获取xtextdocument

我正在使用
openofficeapi
javauno
。我需要获取文档内容中所选文本的大小(例如,嵌入的图片在
mm
中有自己的大小,但通过
XText.insertString(…)
方法插入的文本没有任何大小

换句话说:我想得到包围部分文本的框的大小(最好是
mm
)(它可以是整个段落,也可以是通过某种类型的光标选择的文本)
有没有可能做到这一点?

经过搜索,我认为目前没有办法做到这一点。出于我的目的,我写了一个小方法,以获得段落高度的1/100毫米

以下是此方法的工作原理:

  • 获取
    xtextdocument
    控制器的
    XTextViewCursor
    以向左/向右移动
  • 转到段落进行测量
  • 循环阅读段落以获取每个字符。对于每个字符do:检查其高度(
    CharHeight
    段落属性);从
    XTextViewCursor
    中获取
    XLineCursor
    ,并检查是否有行尾-如果是,则添加(到结果)行中字符的最大高度
  • 这是一个临时解决方案(仍在等待更好的解决方案),有很多错误(例如行距不同于单个;段落应仅包含文本),但可能对某些人有所帮助