我想讓應用程序從字符串類型列表和圖像類型列表中生成一個Excel文件。我有用戶輸入行然後讓,直到G被壓制他們採取截圖等,然後它應該生成Excel與格式文件等等:使用EPPlus將圖像寫入Excel文件
Row 1- Title-0-
Row 2- Header-1-
Row 3- Image-0-
Row 4- Header-2-
Row 5- Image-1-
Row 6- Header-3-
Row 7- Image-2-
Row 8- Header-4-
Row 9- Image-3-
Row 10- Header-5-
Row 11- Image-4-
...依此類推,直至對其做所有的收藏品。
我已經創建了列表和列表,並且我知道它們都包含字符串和圖像,然後再按G,因爲我查看了收藏夾調試模式。
這是我到目前爲止的代碼,excel文件看起來是正確的,除了沒有圖像可以看到,但它是重新調整行高度圖片的大小。我以前從未與Images合作過,因此我認爲我可能會錯過重要的東西,但不知道是什麼。
將集合從調用方法傳遞到此方法 字符串集合被命名爲「withHeadersList」, 圖像集合被命名爲「withImgList」。
生成EXCEL方法:
public static bool GenerateTestPlan(List<String> withHeadersList, List<Image> withImgList, string stringOutputPath)
{
ExcelPackage newExcelPackage = CreateExcelPackage(withHeadersList[0]);
ExcelWorksheet newExcelWorksheet = CreateWorkSheet(newExcelPackage, "Sheet1");
SetCellValue(newExcelWorksheet, 1, 1, withHeadersList[0]); //Title
newExcelWorksheet.Row(1).Style.Font.Size = 35;
newExcelWorksheet.Row(1).Style.Font.Bold = true;
int pRowIndex = 3;
int hRowIndex = 2;
for (int i = 1; i < withHeadersList.Count; i++)
{
SetCellValue(newExcelWorksheet, hRowIndex, 1, withHeadersList[i]);
newExcelWorksheet.Row(hRowIndex).Style.Font.Size = 20;
newExcelWorksheet.Row(pRowIndex).Height = withImgList[i - 1].Height; //Set row height to height of screenshot
var img = newExcelWorksheet.Drawings.AddPicture(withHeadersList[i], withImgList[i - 1]); //Add Images (THINK THIS LAST PARAMETER IS THE PROBLEM)
img.SetPosition(pRowIndex, Pixel2MTU(2), 1, Pixel2MTU(2));
img.SetSize(withImgList[i - 1].Width, withImgList[i - 1].Height);
hRowIndex += 2;
pRowIndex += 2;
}
SaveExcelPackage(newExcelPackage, stringOutputPath);
return true;
}
Excel File here 正如你看到的就好像只是沒有被呈現的圖像。
'Pixel2MTU'在做什麼? – Ernie