添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
// 產生亂數資料填充到 cells 陣列中 Random random = new Random(); for (int i = 0; i < rowCount * columnCount; i++) cells.Add(new Cell(random.Next(100).ToString())); // 以亂數填充儲存格的值 // 根據 rows 和 cells 陣列建立資料表 CreateTable(rows, cells, rowCount, columnCount); // 建立 PDF 文件 string outputPath = "D://txt//test.PDF"; Document document = new Document(); PdfWriter writer = PdfWriter.GetInstance(document, new FileStream(outputPath, FileMode.Create)); document.Open(); // 建立字型 BaseFont baseFont = BaseFont.CreateFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.NOT_EMBEDDED); Font font = new Font(baseFont, 12, Font.NORMAL); // 建立 PDF 表格 PdfPTable table = new PdfPTable(columnCount); table.WidthPercentage = 100; // 加入表頭 foreach (Cell cell in rows[0].Cells) PdfPCell headerCell = new PdfPCell(new Phrase(cell.Value, font)); table.AddCell(headerCell); // 加入資料 for (int i = 1; i < rows.Count; i++) foreach (Cell cell in rows[i].Cells) PdfPCell dataCell = new PdfPCell(new Phrase(cell.Value, font)); table.AddCell(dataCell); // 將表格加入 PDF 文件 document.Add(table); // 關閉文件 document.Close(); writer.Close(); Console.WriteLine("PDF 文件已建立完成。"); public static void CreateTable(List rows, List cells, int rowCount, int columnCount) // 建立表頭 Row headerRow = new Row(); for (int i = 0; i < columnCount; i++) headerRow.Cells.Add(new Cell($"Header {i + 1}")); rows.Add(headerRow); // 建立資料列 for (int i = 0; i < rowCount; i++) Row dataRow = new Row(); for (int j = 0; j < columnCount; j++) int index = i * columnCount + j; if (index < cells.Count) dataRow.Cells.Add(cells[index]); rows.Add(dataRow); public class Row public List Cells { get; set; } public Row() Cells = new List(); public class Cell public string Value { get; set; } public Cell(string value) Value = value;

https://hackmd.io/dRoFmR2sSI-7-cugfQDZPw