日韩欧美国产精品免费一二-日韩欧美国产精品亚洲二区-日韩欧美国产精品专区-日韩欧美国产另-日韩欧美国产免费看-日韩欧美国产免费看清风阁

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

C#.net通過libreOffice實現Office文件轉換為pdf文件

admin
2020年4月16日 0:6 本文熱度 5754
一、安裝 libreOffice

點擊 libreOffice官網 或 點晴網站(64位:地址1地址2,32位:地址1地址2) 下載安裝 libreOffice,注意安裝的時候,不要做任何改動,全部按照默認值安裝即可。


二、創建一個新的項目 LibreOffice

創建一個新的項目,方便后面調用。

添加下面代碼:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
public class OfficeConvert
   {
       static string getLibreOfficePath()
       {
           switch (Environment.OSVersion.Platform)
           {
               case PlatformID.Unix:
                   return "/usr/bin/soffice";
               case PlatformID.Win32NT:
                   string binaryDirectory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
                   return binaryDirectory + "\\Windows\\program\\soffice.exe";
               default:
                   throw new PlatformNotSupportedException("你的系統暫不支持!");
           }
       }
 
       public static void ToPdf(string officePath, string outPutPath)
       {
           //獲取libreoffice命令的路徑
           string libreOfficePath = getLibreOfficePath();
            
           ProcessStartInfo procStartInfo = new ProcessStartInfo(libreOfficePath, string.Format("--convert-to pdf --outdir {0} --nologo {1}", outPutPath, officePath));
           procStartInfo.RedirectStandardOutput = true;                                         
           procStartInfo.UseShellExecute = false;
           procStartInfo.CreateNoWindow = true;
           procStartInfo.WorkingDirectory = Environment.CurrentDirectory;
 
           //開啟線程
           Process process = new Process() { StartInfo = procStartInfo, };
           process.Start();
           process.WaitForExit();
 
           if (process.ExitCode != 0)
           {
               throw new LibreOfficeFailedException(process.ExitCode);
           }
       }
   }
 
   public class LibreOfficeFailedException : Exception
   {
       public LibreOfficeFailedException(int exitCode)
           base(string.Format("LibreOffice錯誤 {0}", exitCode))
       { }
   }


三、當將程序發布到iis時,需要將應用程序池中的高級設置


設置為true,這個問題坑了我一個星期,如果不設置,進程會一直運行,不退出。


該文章在 2020/5/18 15:36:36 編輯過

全部評論2

admin
2020年4月16日 9:18
libreoffice 將文檔轉換成pdf格式的命令
LibreOffice 在Linux下的命令:
/opt/libreoffice5.3/program/soffice --convert-to pdf:writer_pdf_Export /home/lims/file/1111111.xlsx --outdir /home/lims/file

/opt/libreoffice5.3/program/soffice --convert-to pdf:writer_pdf_Export --outdir /home/lims/file /home/lims/file/1111111.xlsx

LibreOffice 在Windows命令:
c:\Program Files\LibreOffice 5\program\soffice.exe --convert-to pdf:writer_pdf_Export --outdir e:\file e:\file\1111111.xlsx
admin
2020年4月16日 11:11
注意,如果要開啟命令行轉換文件模式,需要在系統環境變量的path中增加主程序:soffice.exe 所在目錄:


新增加的path參數(一般是:C:\Program Files\LibreOffice 5\program),可能需要重啟服務器才會生效。

檢查參數是否生效的方法如下:
打開CMD,輸入以下命令:
"C:\Program Files\LibreOffice 5\program\soffice.exe" --convert-to pdf:writer_pdf_Export --outdir C:\temp C:\temp\測試文件.xlsx
回車執行后,就會看到此目錄下會增加一個自動轉換出來的文件:C:\temp\測試文件.pdf


該評論在 2020/4/16 11:20:51 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 精品无人区一区二区三区 | 99国产精品这里只有精品 | 精品一区精品二区 | 精品一区二区三区免费观看 | 免费午夜拔丝袜 | 午夜福利成人污在线观看 | 1000部夫妻午夜免费 | 国产精品亲子乱子伦xxxx | 欧美精品日韩精品一卡 | 亚洲中文欧美日韩在线 | 亚洲伊人色综合www962 | 去卫生间啪到腿软 | 亚洲亚中文 | 国产韩国精品一区二 | 欧美精品黄页在线观看2区 日本视频 | 国产成本人片免费v | 国内三级自拍小视频在线观看 | 精品国产免费一区二区三区香 | 91草莓视频在线观看 | 国产国精品视频 | 欧美一区二区三区精品视频在线 | 欧美校园激情清纯另类 | 欧美精选一区二区 | 国内综合网 | 欧美人与性囗牲恔配 | 国产精品a成v人在线播放 | 91九色在线观看 | 亚洲欧洲日产国码在线 | 国产精品视频高清在线播放 | 中文字幕在线影院 | 亚洲国产欧美在线综合 | 一区二区三区高清视频在线观看 | 91欧美精品综合在线观看 | 国产日韩精品欧美一区视频 | 1024手机 | 精品国产男人的 | 91秒拍国产福利 | 老司机67194免费观看 | 91普通话国产对白在线 | 青青青国产精品一区二区 | 国产亚洲欧美一区二区三区 |