みなさん、良い一日を !
グリッドビューを PDF に変換する前に、次を使用してフォント サイズと色を変更できます。
gridview.HeaderRow.Style.Add("font-family", "Arial, Helvetica, sans-serif;");
gridview.HeaderRow.Style.Add("font-size", "7.20px");
gridview.HeaderRow.Style.Add("color", "#284775");
gridview.Style.Add("font-family", "Arial, Helvetica, sans-serif;");
gridview.Style.Add("font-size", "6px");
表示されている情報のため、グリッドビューには異なる列幅があり、それらのサイズは .aspx ファイルに設定されています。ただし、生成された pdf ファイルは、各列の幅が同じサイズになるように自動調整されるため、情報が縮小され、見栄えが悪くなります。
私は次のことを試しました:
gridview.Width =100;
gridview.Style.Add("width","100");
他にもたくさんありますが、グリッドビューを元の列幅に調整することはできませんでした。
どうやってやるの?
前もって感謝します。
編集:私も試しました:
gridview.Columns[3].ItemStyle.Width =Unit.Pixel(10);
これは、PDF ファイルを生成するために使用するコードです。
StringWriter stw = new StringWriter();
HtmlTextWriter htextw = new HtmlTextWriter(stw);
gridview.HeaderRow.Style.Add("font-family", "Arial, Helvetica, sans-serif;");
gridview.HeaderRow.Style.Add("font-size", "8.20px");
gridview.HeaderRow.Style.Add("color", "#284775");
gridview.Style.Add("font-family", "Arial, Helvetica, sans-serif;");
gridview.Style.Add("font-size", "8px");
gridview.Columns[3].ItemStyle.Width =Unit.Pixel(10);
gridview.RenderControl(htextw);
Document document = new Document(iTextSharp.text.PageSize.LETTER.Rotate(), 10, 10, 42, 35);
string path = "path where im saving file".pdf";
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream(path, FileMode.Create));
StringReader str = new StringReader(stw.ToString());
iTextSharp.text.html.simpleparser.HTMLWorker htmlworker = new HTMLWorker(document);
htmlworker.Parse(str);
Response.Write(document);
document.Close();
編集:検索中にこのリンクが見つかりました。おそらくそれがまさに私が必要としているものですが、テーブルの作成時に次のエラーが発生します:
the type or namespace name 'table' does not exist in the namespace 'itextsharp.text'
そして、すべての itextsharp 参照を追加しました。おそらくバージョンの問題でしょうか?