Увеличение ширины двумя колонками в формате PDF на C#
Всем привет,
Я загружаю PDF-файл с помощью Itextsharp .Мне нужно увеличить ширину двух столбцов в pdf-файле.Я пробовал использовать celcols.ширина ,однако, не работает.Теперь все колонки имеют одинаковую ширину.Любая помощь будет очень признательна.спасибо заранее`.
Здесь мне нужно увеличить ширину 2-го и 4-го столбцов, то есть имя и пользователь .Любая помощь будет очень признательна .Заранее спасибо.
Что я уже пробовал:
<pre><pre>protected void Button6_Click(object sender, EventArgs e) { try { string fromdate = "", todate = ""; string compgrp = "All"; var pdfDoc = new Document(PageSize.A3, 10f, 10f, 10f, 0f); System.IO.MemoryStream mStream = new System.IO.MemoryStream(); PdfWriter writer = PdfWriter.GetInstance(pdfDoc, mStream); PdfPageEventHelper pageEventHelper = new PdfPageEventHelper(); writer.PageEvent = pageEventHelper; HeaderFooter header = new HeaderFooter(new Phrase("Schedule report" + DateTime.Now.ToString("dd/MMM/yyyy hh:mm tt") + ""), false); header.BackgroundColor = new iTextSharp.text.Color(System.Drawing.ColorTranslator.FromHtml("#62e456")); // Remove the border that is set by default header.Border = iTextSharp.text.Rectangle.TITLE; // Align the text: 0 is left, 1 center and 2 right. header.Alignment = Element.ALIGN_CENTER; pdfDoc.Header = header; // Header. pdfDoc.Open(); string Connectionstring = ConfigurationManager.ConnectionStrings["SPCFConnectionString"].ConnectionString; SqlConnection cn = new SqlConnection(Connectionstring); cn.Open(); try { if (ddl_clntsearch.SelectedValue.ToString() == "") { compgrp = "All"; } else { compgrp = ddl_clntsearch.SelectedValue.ToString(); } string[] querylist = new string[] { "exec [SP0480_05] '" + compgrp +"','" + txt_mobnum.Text +"','"+txt_searchdate.Text+"','" + ddl_status.SelectedValue.ToString() +"'", }; string[] Headers = new string[] { "Date"," Name","Shift time","User","Remarks","Amount","Signature" }; foreach (string query in querylist) { iTextSharp.text.Table pdfTableheader = new iTextSharp.text.Table(7, 1); pdfTableheader.BorderWidth = 1; pdfTableheader.Width = 100; pdfTableheader.Spacing = 1; //pdfTableheader.Padding = 1; foreach (string items in Headers) { Cell cellCols = new Cell(); Chunk chunkCols = new Chunk(); cellCols.BackgroundColor = new iTextSharp.text.Color(System.Drawing.ColorTranslator.FromHtml("#62e05e")); iTextSharp.text.Font ColFont = FontFactory.GetFont(FontFactory.TIMES_ROMAN, 12, iTextSharp.text.Font.BOLD, iTextSharp.text.Color.BLACK); //if (items == "Name") //{ // cellCols.Width = 300f; //} //else //{ // cellCols.Width = 100f; //} chunkCols = new Chunk(items, ColFont); cellCols.Add(chunkCols); pdfTableheader.AddCell(cellCols); } pdfDoc.Add(pdfTableheader); SqlCommand cmd = new SqlCommand(query, cn); cmd.CommandTimeout = 30; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); DataTable dataTable = new DataTable(); dataTable.Load(dr); object[] array = new object[dataTable.Columns.Count]; //dataTable.Rows.Add(array); int cols = dataTable.Columns.Count; int rows = dataTable.Rows.Count; iTextSharp.text.Table pdfTable = new iTextSharp.text.Table(cols, rows); pdfTable.BorderWidth = 1; pdfTable.Width = 100; pdfTable.Spacing = 2; //pdfTable.Padding = 1; //creating table data (actual result) for (int k = 0; k <= rows - 1; k++) { for (int j = 0; j < cols; j++) { Cell cellRows = new Cell(); //if (k % 2 == 0) cellRows.BackgroundColor = new iTextSharp.text.Color(System.Drawing.ColorTranslator.FromHtml("#ffffff")); iTextSharp.text.Font RowFont = FontFactory.GetFont(FontFactory.HELVETICA,12); Chunk chunkRows = new Chunk(dataTable.Rows[k][j].ToString(), RowFont); cellRows.Add(chunkRows); pdfTable.AddCell(cellRows); } } pdfDoc.Add(pdfTable); } } catch (Exception exc) { } //creating table headers cn.Close(); pdfDoc.Close(); Response.ContentType = "application/pdf"; Response.AddHeader("Content-Disposition", string.Format("attachment;filename=REF-{0}.pdf", "Report")); Response.BinaryWrite(mStream.ToArray()); } catch (Exception ex) { } }