Как добавить sharpPDF в документ Word? - PullRequest
1 голос
/ 20 июня 2011

Я работаю над приложением в asp.net / C # 3.5 / Winforms.

Это приложение отображает PDF-файл и файл Word.

Мы используем Microsoft.Office.Interop.Word for word и sharpPDF для PDF.

Наш клиент просит нас добавить в документ Word то же самое, что и в PDF.

Как мне легко это сделать безприкоснуться к существующему коду?

Вот код, который я хочу сделать

pdfDocument myPdf = new pdfDocument("Title", "Title");
// fill pdf

Microsoft.Office.Interop.Word.Application msWord = new Microsoft.Office.Interop.Word.Application();
// fill word

msWord.Bookmarks.get_Item(ref oBookMarkId).Range = myPdf ;

Редактировать: Идея может быть

  1. создать файл PDF
  2. загрузить pdf в изображение
  3. , переводя в слово изображение

Есть идеи о том, как преобразовать PDF в изображение?

Edit2: Iнайти эту функцию AddOLEObject

Как я могу связать свой PDF, находящийся в памяти, с этой функцией?

1 Ответ

1 голос
/ 21 июня 2011

Найдите решение с помощью AddOLEObject и создайте временный файл PDF:

string tempNameFilePdf = "C:\\temp\\temp" + DateTime.Now.Ticks + ".pdf";
pdfDocument pdfDocument = getPdf();

pdfDocument.createPDF(tempNameFilePdf);
object oBookMarkId = "Schema";

object missing = System.Reflection.Missing.Value;

object fileNameObject = tempNameFilePdf;
object classType = "AcroRd32.Document";
object oFalse = false;

wordDocument.Bookmarks.get_Item(ref oBookMarkId).Range.InlineShapes.AddOLEObject(
             ref classType, ref fileNameObject, ref missing, ref missing,
             ref missing, ref missing, ref missing, ref missing);
...