iTextSharpのPdfPCellオブジェクト内文字列を丸付き文字にしたい♥
関連記事
- 【iTextSharp】セルの中の任意位置に,直線を引きたい場合 【2014年02月20日(木)】
- 【iTextSharp】セルの高さ指定は,FixedHeightプロパティ 【2014年02月20日(木)】
- 難航中...難航中... 【2012年05月30日(水)】
- C#でPDFファイルを作るときは『itextsharp』を使うのが楽っぽい 【2012年02月28日(火)】
簡単には出来ない!(爆
どっポリハマった,約5時間...
いや単純に
男・女
なPDF出力項目部分に,男性なら男の周りを,円描きたかっただけなのに...
単純に,PdfContentByteを引っ張りだして,円描いたり線引っ張ったりすればいいのかと思ってたけど
PdfPTableなオブジェクトが図形の上に上書きしちゃって,まともに描画されない...
iTextな世界は,4つのレイヤー画面にて,PDFを作っていくらしいけど
PdfPTableはどうも,4つともレイヤーを食いつぶしている模様
これじゃ,丸付き文字が表示されない(涙
ってことで,あ~だこ~だ調べていったら,PdfPCellEvent なるクラスを使えと
英語のドキュメントに書いてある...ムムムッ
こやつ,セルの描画のタイミングで呼ばれるイベントっぽい...
ってことで,コードを書いてみた
private void func_hogehoge()
{
//前処理をいっぱいやってます
PdfPCell cell = new PdfPCell(new Phrase("男・女", fntNormal11e)); //フォントやら指定してくださいませ
cell.HorizontalAlignment = Element.ALIGN_CENTER ; //セルにいろんなパラメータのセット
cell.BackgroundColor = BaseColor.WHITE;
cell.Colspan = 5;
cell.VerticalAlignment = Element.ALIGN_MIDDLE;
cell.CellEvent = new _add_event_Maru1(); //一番大事なセルイベントの設定
tbl.AddCell(cell); //PdfPTableオブジェクトにセット
}
//IPdfPCellEventクラス(インターフェースなのか?)の継承クラス
private class _add_event_Maru1 : IPdfPCellEvent {
public void CellLayout( PdfPCell cell, Rectangle position, PdfContentByte[] canvases) //こやつが描画メソッド
{
PdfContentByte cb = canvases[PdfPTable.TEXTCANVAS]; //描画するレイヤーの指定
cb.Circle(417, 739, 9); //座標は適時変更してくださいませ.動的管理するのがよさそう
cb.Stroke();
}
}
丸付き文字,キタ━━━━(゚∀゚)━━━━ッ!!
参考にドゾー♪

コメント
【#特別重大報道】存立危機事態キター!有事発生ぢゃ!!なので,ぎんゆぅ~さんはしばらくお休みしまする
21年ぶりに新規航路 宮崎港に東京港と結ぶ貨物専用の定期航路開設へ
【#クマ】「泳ぐ宝石」ニシキゴイ、クマに襲われる…新潟県小千谷市のいけす
【クマ】クマによる人的被害、生活圏7割 環境省まとめ、出没は最多2万件
「ニュウハクシミ」紙を食べる害虫 生息19都道府県に拡大
文化の日な祭日らしい.文化的に休むもうず?
【#HTVX】新型宇宙輸送船HTV-X 油井さんがロボットアームでキャッチ
【冬】来週11℃予想とか出てきてる.秋があったのか,今年(25/10/23)
【ツル】出水平野に冬の訪れを告げるツル第一陣・今季初飛来 鹿児島(25/10/21)