Phần mềm LibreOffice là phần mềm mã nguồn mở, giải pháp thay thế Microsoft Office trên nhiều nền tảng khác nhau. Chúng ta có thể sử dụng nó để chuyển từ Word sang định dạng PDF. Tuy nhiên, hiện tại thì LibreOffice không có API chính thức cho .Net nhưng chúng ta có thể thực hiện bằng cách thực thi tập tin soffice có trong thư mục của LibreOffice.
Giải pháp
Đây là một giải pháp "cứu rỗi" linh hồn của mình khi đã bế tắc với những thư viện khác. Câu chuyện của mình là khi sử dụng thư viện của Apose.Word thì thư viện không thể chuyển đổi được Unicode / Tiếng Việt trong tập tin Word. Với thư viện Spire.Doc thì cứ báo lỗi thiếu font trên hệ thống nhưng mình cũng không mò được là nó thiếu font nào trong khi tập tin Word chỉ sử dụng mỗi Times New Roman.
Và dưới đây là đoạn code mẫu mình viết để dùng LibreOffice chuyển tập tin Word sang PDF:
Lỗi IIS không thể thực thi soffice
- Tắt site hiện tại của bạn trên IIS
- Tắt Application Pool tương ứng mà site bạn sử dụng
- Từ giao diện Application Pool, chọn pool tương ứng, chọn Advanced Settings...
- Chuyển Identity sang LocalSystem và nhấn OK
- Bật lại application pool
- Bật lại site của bạn trên IIS
Đăng nhận xét