将.odt转换为pandoc中的.docx

时间:2015-05-13 00:05:16

标签: docx pandoc odt

我正在尝试通过以下命令将我的libre office文档转换为ms word文档

pandoc: Cannot decode byte '\xac': Data.Text.Encoding.Fusion.streamUtf8: Invalid UTF-8 stream

但我收到以下错误

    #region Synchronize the scrolling of the two panels in the SplitContainer.

    private Point _prevPan1Pos = new Point();
    private Point _prevPan2Pos = new Point();

    void PanelPaint(object sender, System.Windows.Forms.PaintEventArgs e)
    {
        SynchronizeSplitContainerScrollbars();
    }

    private void SynchronizeSplitContainerScrollbars()
    {
        if (splitContainer1.Panel1.AutoScrollPosition != _prevPan1Pos)
        {
            splitContainer1.Panel2.AutoScrollPosition = new System.Drawing.Point(-splitContainer1.Panel1.AutoScrollPosition.X, -splitContainer1.Panel1.AutoScrollPosition.Y);
            _prevPan1Pos = splitContainer1.Panel1.AutoScrollPosition;
        }
        else if (splitContainer1.Panel2.AutoScrollPosition != _prevPan2Pos)
        {
            splitContainer1.Panel1.AutoScrollPosition = new System.Drawing.Point(-splitContainer1.Panel2.AutoScrollPosition.X, -splitContainer1.Panel2.AutoScrollPosition.Y);
            _prevPan2Pos = splitContainer1.Panel2.AutoScrollPosition;
        } 
    }

    #endregion

实现此目的的正确命令是什么?

1 个答案:

答案 0 :(得分:4)

你有pandoc尝试将“从”(-f)降价转换为“转换为”(-t)docx。但是你给它一个odt文件。所以它试图读取odt,好像它是降价和窒息,因为它不是降价。你想要更接近的东西:

pandoc CS141Exam.odt -f odt -t docx -s -o test1.docx

... odt不受支持until pandoc 1.15.1,所以请pandoc -v确保您拥有最新版本。我的Ubuntu稳定回购给了我1.12.4.2 - 我必须得到the latest directly from pandoc,但这对我来说很好:

pandoc -f odt -t docx -o example.docx example.odt 

(虽然我没有MS Word所以我所知道的是example.docx在LibreOffice Writer中看起来很好)