使用VB.NET中的PDFsharp或MigraDoc将DOCX文件转换为PDF文件

时间:2018-05-31 05:53:09

标签: c# vb.net converter pdfsharp migradoc

我在VB中有一个控制台应用程序。 今天我正在使用PDFsharp(http://www.pdfsharp.net/)来合并PDF文件 像这样:

Private Sub mergePdfFiles(pdfFiles As String(), output As String)
    Dim out As PdfDocument = New PdfDocument
    Try
        For Each file As String In pdfFiles
            Dim inputDoc As PdfDocument = PdfSharp.Pdf.IO.PdfReader.Open(file,IO.PdfDocumentOpenMode.Import)
            Dim count As Integer = inputDoc.PageCount

            For idx As Integer = 0 To count - 1
                Dim page As PdfPage = inputDoc.Pages(idx)
                out.AddPage(page)
            Next
        Next
        out.Save(output)
    Catch ex As Exception
    End Try
End Sub

这很好用。 现在我想将DOCX文件转换为PDF,但似乎PDFsharp无法做到这一点。 我知道MigraDoc可以做到这一点

  

MigraDoc基础开源.NET库,可以根据具有段落,表格,样式等的对象模型轻松创建文档,并将它们呈现为PDF或RTF。

但我没有成功。样品不是很清晰,适用于C#。 http://www.pdfsharp.net/wiki/DocumentViewer-sample.ashx

例如:

//create RTF file From document
private void miRtf_Click(object sender, System.EventArgs e)
{
  RtfDocumentRenderer rtf = new RtfDocumentRenderer();
  rtf.Render(this.pagePreview.Document, "test.rtf", null);

  Process.Start("test.rtf");
}

在VB中,我尝试使用Me代替this,但我没有pagePreview。

如何使用MigraDoc或PDFsharp将DOCX文件转换为VB文件?

1 个答案:

答案 0 :(得分:0)

只要您可以解析输入文件,就可以将任何文件转换为MigraDoc。

您必须编写读取DOCX文件的代码并从中提取表格,文本等。

MigraDoc文档并未说MigraDoc可以导入RTF或DOC或DOCX或HTML。您可以使用MigraDoc创建新文档。