最近领导提了个需求 需要把多个word和多个图片 放在一起并且转换成pdf格式
我这里的思路是先把多个word放在一个新的word里
再把图片循环添加到这个新的word文档里
保存之后转换成PDF格式
之前用的spire Doc的这个插件实现的 但是因为这个插件生成后会有水印 虽然它有免费版本的 但是转换pdf格式只会转换3页 超出部分显示不了 所以研究了一下微软的Microsoft.Office.Interop.Word 完美解决
现在还有一个没解决的问题就是怎么设置这个添加图片的位置 如何把两个图片放在同一行中 如果有知道的大佬希望可以得到您的帮助(●’◡’●) 爱你 比心
(需要引用 Microsoft.Office.Interop.Word)
附上代码
/// <summary>
/// 将多个word拼成一个 插入图片后转成PDF
/// </summary>
/// <param name="ImageFileNames">图片路径</param>
/// <param name="OldDocFileName">word路径</param>
/// <param name="NewDocFileName">插入文档之后新的word文档路径</param>
/// <param name="PdfFileName">转换后pdf的路径</param>
/// <returns></returns>
public bool ConverterToPDF(List<string> ImageFileNames, List<string> OldDocFileName, string NewDocFileName, string PdfFileName)
{
Microsoft.Office.Interop.Word.Application App = new Microsoft.Office.Interop.Word.Application();
Microsoft.Office.Interop.Word.Document Doc = new Microsoft.Office.Interop.Word.Document();
object lobjMissing = System.Reflection.Missing.Value;
object lobjSaveChanges = null;
try
{
#region 拼接word
object oPageBreak = WdBreakType.wdLineBreak;//接下行合并(LineBreak)
//object oPageBreak = WdBreakType.wdPageBreak;//接下页合并(PageBreak)
object docFileName = null;
object NewdocFileName = null;
OldDocFileName = OldDocFileName.Reverse<string>().ToList();
for (int i = 0; i < OldDocFileName.Count; i++)
{
NewdocFileName = (object)NewDocFileName;
docFileName = OldDocFileName<