Я могу посмотреть, как напечатать объект PrintDocument в pdf и сохранить его в файл здесь: Вопрос Stackoverflow
Но я хочу захватить созданный PDF-файл и прикрепить его к электронному письму. Не требует сохранения в файл. Я могу сохранить его в файл, прикрепить файл к электронному письму, затем удалить файл, но это кажется неэффективным.
У меня уже есть код для создания и прикрепления файла в качестве вложения:
pDoc = New PrintDocument()
'set the printer to 'Microsoft Print to PDF'
pDoc.PrinterSettings.PrinterName = "Microsoft Print to PDF"
'tell the object this document will print to file
pDoc.PrinterSettings.PrintToFile = True
'set the filename
pDoc.PrinterSettings.PrintFileName = tempfilename
pDoc.Print()
email = app.CreateItem(Outlook.OlItemType.olMailItem)
email.Subject = EmailSubject
If File.Exists(tempfilename) Then email.Attachments.Add(tempfilename)