1

有没有办法使用编程软件更改 .odt 文件的文本格式?我正在尝试制作一些需要在 lib.office 中手动完成的文本版本(文本很大)。使用 R 或 python,我可以使用蛮力编辑空格和回车符,但是,要进行左对齐、右对齐等编辑,我最终必须返回编辑器来执行此操作。我可以看到 python 中有包含选项卡、更改大小写等的功能,但是是否可以使用编程软件间接在 .odt 文本文件中进行左右对齐?

4

1 回答 1

1

对于像 Python 这样的脚本语言来说,这是一项很棒的工作。我想你想要像str.ljust这样的字符串方法。该方法左对齐字符串。打开文件。

或者,您可以尝试在 OpenOffice 中定义一个宏(如果它们存在并且您的任务很简单) - 或者花一些时间学习 emacs 或其他东西并使用它(链接至少显示了对 .odt 文件的某种程度的 emacs 支持)。或者学vim,才是正道!

编辑:经过一些研究,我发现了这个。看来您可以解压缩 .odt 文件,读取其中的文件,并在那里手动编辑 XML 的文本节点。但是,使用库似乎更容易 - 这里有两个:

https://pypi.python.org/pypi/odfpy

http://ooopy.sourceforge.net/

编辑2:就实际证明文本而言,假设您已经提取了它,这个:

def justify(string, left=True):
if left:
    return "\n".join(line.lstrip() for line in string.splitlines())
else:
    lines = string.splitlines()
    longest_line = len(max(lines, key=len))
    return "\n".join(line.rjust(longest_line) for line in lines)

应该管用。

于 2013-09-07T17:29:53.547 回答