【iTextSharp】セルの中の任意位置に,直線を引きたい場合
関連記事
- 【iTextSharp】セルの高さ指定は,FixedHeightプロパティ 【2014年02月20日(木)】
- iTextSharpのPdfPCellオブジェクト内文字列を丸付き文字にしたい♥ 【2012年06月08日(金)】
- 難航中...難航中... 【2012年05月30日(水)】
- C#でPDFファイルを作るときは『itextsharp』を使うのが楽っぽい 【2012年02月28日(火)】
セルの任意位置に直線を引きたい!とか,2重線を引きたい!!とか
丸描きたい!!!とか,いろいろ,Bitmap系の小細工をやりたい場合
たとえば,こんな感じで,下線を引きたいとか?(Borderプロパティあたりでもこれぐらいなら実現できますけど:汗)
IPdfPCellEventインターフェースの継承クラスを作って,
CellLayout()メソッドを定義してやればよろしい感じ
ソースはこんな感じにて (セル内に丸を描きたい場合のソースはこちら)
//Cell描画イベントクラス
private class _add_event_MidasiLineYoko : IPdfPCellEvent {
public void CellLayout( PdfPCell cell, Rectangle position, PdfContentByte[] canvases)
{
PdfContentByte cb = canvases[PdfPTable.TEXTCANVAS];
cb.SetLineWidth(1.5f);
cb.MoveTo(position.Left, position.Bottom – 3);
cb.LineTo(position.Right, position.Bottom – 3);
cb.Stroke();
//直線だけじゃなく,丸でも,☆でも,Bitmapでも描画できまする(Bitmapだけは試してない:汗)
}
}
_add_event_MidasiLineYoko line = new _add_event_MidasiLineYoko(); //Cell描画イベントクラスのインスタンスを作る
PdfPCell cell = new PdfPCell(new Phrase(“請 求 書”, fntNormal));
cell.HorizontalAlignment = Element.ALIGN_LEFT ;
cell.BackgroundColor = BaseColor.WHITE;
cell.VerticalAlignment = Element.ALIGN_MIDDLE;
cell.FixedHeight = 22f;
cell.Border = Rectangle.NO_BORDER;
cell.CellEvent = line; // <--Cell描画イベントにインスタンスをセット
tbl.AddCell(pcell);
[/csharp]
コメント
今日は謎の宴会らしい...スーツが入るのかっ!?(GRB爆
「侍ジャパン」宮崎県入り 「プレミア12」向け きょうから合宿
【#総選挙】 衆議院選挙 きょう投票 ...ドロドロドロ(24/10/27)
【#線状降水帯】宮崎 延岡「土砂崩れで家がつぶれている」通報 1人不明(24/10/23)
【冬】お~日本海に筋雲が出ちょる!冬がキター
【#寒冷前線】13時頃30℃の気温が今は25℃無いぞー
【訃報】 俳優の西田敏行さん亡くなる 76歳 東京の自宅で
【#台風】衆議院議員選挙の投票日に超大型台風が直撃!なのか?(24/10/17)
【#キロタン】奄美地方(鹿児島県)記録的短時間大雨情報 第1号(24/10/16)
生駒高原へコスモスを見物しに行ってみた