次のコードを使用して、iTextSharp ライブラリ バージョン 5.4.2 を使用して PDF ドキュメントを生成しています。
// Create a Document object
var document = new Document(PageSize.A4, 50, 50, 25, 25);
// Create a new PdfWriter object, specifying the output stream
var output = new MemoryStream();
var writer = PdfWriter.GetInstance(document, output);
// Open the Document for writing
document.Open();
//Gets System.Web.UI.WebControls.Table
//Returns HTML table with 4 coulms
var flowsheetTable = GetTable(report);
var stringWriter = new StringWriter();
using (var htmlWriter = new HtmlTextWriter(stringWriter))
{
flowsheetTable.RenderControl(htmlWriter);
}
List<IElement> htmlarraylist = HTMLWorker.ParseToList(new StringReader(stringWriter.ToString()), null);
for (int k = 0; k < htmlarraylist.Count; k++)
{
document.Add((IElement)htmlarraylist[k]);
}
document.Close();
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition", "attachment;filename=Receipt-test.pdf");
Response.BinaryWrite(output.ToArray());
メソッド GetTable() は、4 つの列を持つ System.Web.UI.WebControls.Table を返します。テーブルの最初の列の幅を修正する方法はありますか? 最初の列が全幅の 40% になるようにします。
ありがとうございました