private void ConvertWord2PDF(string inputFile, string outputPath) { try { if (outputPath.Equals("") || !File.Exists(inputFile)) { throw new Exception("Either file does not exist or invalid output path"); } // app to open the document belower Microsoft.Office.Interop.Word.Application wordApp = new Microsoft.Office.Interop.Word.Application(); Document wordDocument = new Document(); // input variables object objInputFile = inputFile; object missParam = Type.Missing; wordDocument = wordApp.Documents.Open(ref objInputFile, ref missParam, ref missParam, ref missParam, ref missParam, ref missParam, ref missParam, ref missParam, ref missParam, ref missParam, ref missParam, ref missParam, ref missParam, ref missParam, ref missParam, ref missParam); if (wordDocument != null) { // make the convertion wordDocument.ExportAsFixedFormat(outputPath, WdExportFormat.wdExportFormatPDF, false, WdExportOptimizeFor.wdExportOptimizeForOnScreen, WdExportRange.wdExportAllDocument, 0, 0, WdExportItem.wdExportDocumentContent, true, true, WdExportCreateBookmarks.wdExportCreateWordBookmarks, true, true, false, ref missParam); } // close document and quit application wordDocument.Close(); wordApp.Quit(); MessageBox.Show("File successfully converted"); ClearTextBoxes(); } catch (Exception e) { throw e; } }
public bool saveDocument(Document document, string outfile) { if (!Directory.Exists(Path.GetDirectoryName(outfile))) Directory.CreateDirectory(Path.GetDirectoryName(outfile)); try { if (document != null) document.ExportAsFixedFormat(outfile, paramExportFormat, paramOpenAfterExport, paramExportOptimizeFor, paramExportRange, paramStartPage, paramEndPage, paramExportItem, paramIncludeDocProps, paramKeepIRM, paramCreateBookmarks, paramDocStructureTags, paramBitmapMissingFonts, chkPDFA.Checked, ref paramMissing); } catch (Exception ex) { FileLog.LogWrite("Fikk ikke til å lagre dokumentet. Filen '" + outfile + "' må behandles manuelt." + ex.Message, FileLog.logType.Info); LogFromThread(progress, "Fikk ikke til å lagre dokumentet. Filen '" + outfile + "' må behandles manuelt" + Environment.NewLine); return false; } return true; }