使用POI 技術 的SetColumnWidth 精確控制列寬不能成功的解決辦法(java)


在使用NPOI技術開發自動操作EXCEL軟件時遇到不能精確設置列寬的問題。

ISheet sheet1 = hssfworkbook.CreateSheet("Sheet1");

sheet1.SetColumnWidth(0,  50 * 256);   // 在EXCEL文檔中實際列寬為49.29

sheet1.SetColumnWidth(1, 100 * 256);   // 在EXCEL文檔中實際列寬為99.29

sheet1.SetColumnWidth(2, 150 * 256);   // 在EXCEL文檔中實際列寬為149.29

到此一般人應該知道問題出在哪了,解決方法如下:

 

ISheet sheet1 = hssfworkbook.CreateSheet("Sheet1");

sheet1.SetColumnWidth(0,  (int)((50 + 0.72) * 256));   // 在EXCEL文檔中實際列寬為50

sheet1.SetColumnWidth(1,  (int)((100 + 0.72) * 256));   // 在EXCEL文檔中實際列寬為100

sheet1.SetColumnWidth(2,  (int)((150 + 0.72) * 256));   // 在EXCEL文檔中實際列寬為150

既在要設置的實際列寬中加上列寬基數:0.72


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM