python 将Microsoft Word公式转换为Latex

wnavrhmk  于 2023-02-21  发布在  Python
关注(0)|答案(2)|浏览(362)

我有一个docx文件,里面有几个方程,分在不同的页面,用Python和lxml成功提取了内容,现在需要把Word中的方程转换成Latex,部分方程如下所示:

- eq \\f (sinx,\\r(1 - sin 2 x))

是否有任何Python库的任何工具,我可以用来转换方程到乳胶格式?
下面是我从docxfile/word/document.xml获得的XML文件的一个片段:

<w:p w:rsidR="00677018" w:rsidRPr="007D05E5" w:rsidRDefault="00677018" w:rsidP="00677018">
            <w:pPr>
                <w:pStyle w:val="w" />
                <w:jc w:val="both" /></w:pPr>
            <w:r w:rsidRPr="007D05E5">
                <w:tab/>
                <w:t>a.</w:t>
            </w:r>
            <w:r w:rsidRPr="007D05E5">
                <w:tab/></w:r>
            <w:r w:rsidR="00453EF1" w:rsidRPr="007D05E5">
                <w:fldChar w:fldCharType="begin" /></w:r>
            <w:r w:rsidRPr="007D05E5">
                <w:instrText xml:space="preserve">eq \b\bc\[(\a\co2\hs4(7,-3,-1,2))</w:instrText>
            </w:r>
            <w:r w:rsidR="00453EF1" w:rsidRPr="007D05E5">
                <w:fldChar w:fldCharType="end" /></w:r>
            <w:r w:rsidRPr="007D05E5">
                <w:tab/>
                <w:t>b.</w:t>
            </w:r>
            <w:r w:rsidRPr="007D05E5">
                <w:tab/></w:r>
            <w:r w:rsidR="00453EF1" w:rsidRPr="007D05E5">
                <w:fldChar w:fldCharType="begin" /></w:r>
            <w:r w:rsidRPr="007D05E5">
                <w:instrText xml:space="preserve">eq \f(5,8)</w:instrText>
            </w:r>
            <w:r w:rsidR="00453EF1" w:rsidRPr="007D05E5">
                <w:fldChar w:fldCharType="end" /></w:r>
            <w:r w:rsidR="00453EF1" w:rsidRPr="007D05E5">
                <w:fldChar w:fldCharType="begin" /></w:r>
            <w:r w:rsidRPr="007D05E5">
                <w:instrText xml:space="preserve">eq \b\bc\[(\a\co2\hs4(7,-3,-1,2))</w:instrText>
            </w:r>
            <w:r w:rsidR="00453EF1" w:rsidRPr="007D05E5">
                <w:fldChar w:fldCharType="end" /></w:r>
        </w:p>
8gsdolmq

8gsdolmq1#

我不确定这本身就是一个答案,但也许是在通往答案的路上。
不久前我去寻找这样的工具,但没有找到,所以我认为简短的答案是没有。
Word支持多种公式格式。您使用的类型称为“Word EQ域公式”。http://office.microsoft.com/en-us/word-help/field-codes-eq-equation-field-HP005186148.aspx
我在搜索中没有找到任何Python解决方案,而且我知道python-docx肯定不支持它。
如果你下定决心,似乎有一些非Python的解决方案可以完成这种转换,如果你决定自己动手,它们可能是一个替代方案或学习的例子:)

1bqhqjot

1bqhqjot2#

https://pypi.org/project/docxlatex/
你可以试试,数学公式的乳胶代码直接提取出来打印,不用xml文件
我已经把谷歌翻了好几天了,这个图书馆几乎就是我所需要的全部

乳胶代码显示了4次,但这对我来说不是问题
我把他们带到html文件与一些标签

相关问题