1
我正在使用EPPlus 4.1.0版本 我知道這個問題看起來非常奇怪,但我已經浪費了2天的時間,並且任何輸入都非常受歡迎!EPPlus AutoFit()在不同的機器上有不同的列寬
我運行下面的代碼:
using (var package = new ExcelPackage())
{
ExcelWorksheet ws = package.Workbook.Worksheets.Add("Sheet1");
...
for (int i = ws.Dimension.Start.Column; i <= ws.Dimension.End.Column; i++)
{
ws.Column(i).AutoFit(0, 100);
ws.Column(i).Style.WrapText = ws.Column(i).Width > 60;
}
...
我在多臺計算機上運行該代碼和AutFit()
函數始終返回列的寬度相同的值。
但在一臺機器上(不幸的是我的新筆記本電腦)寬度完全關閉(即33而不是預期的11)。
任何線索如何我的機器設置可能會影響這?
你是新的筆記本電腦運行hi-rez屏幕?如果是這樣,你可能會將你的DPI設置得高於100%,這也許可以解釋這種差異。 – Ernie
是的,這是其實。你有什麼想法是否這是影響客戶的最終文件? – w33z33
我沒有遇到那個之前。它可能。如果您查看Epplus在ExcelRangeBase.cs中自動安裝的代碼,您將看到它會根據單元格在System.Drawings.Graphics對象中包含的文本大小進行一些計算。由於這是在服務器上,它將無法解釋用戶縮放。對不起,我不能幫助更多... – Ernie