Конвертируйте файлы DOCX в файлы PDF с помощью PDFsharp или MigraDoc в VB.NET - PullRequest
0 голосов
/ 31 мая 2018

У меня есть консольное приложение в 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 Foundation - библиотека с открытым исходным кодом .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.

Как я могу конвертировать файлы DOCX в PDF-файлы в VB, используя MigraDoc или PDFsharp?

1 Ответ

0 голосов
/ 31 мая 2018

Вы можете конвертировать любой файл в MigraDoc при условии, что вы можете анализировать входной файл.

Вы должны написать код, который считывает файлы DOCX и извлекает из них таблицы, текст и т. Д.

В документации MigraDoc не сказано, что MigraDoc может импортировать RTF, DOC, DOCX или HTML.Вы можете использовать MigraDoc для создания новых документов.

...