用意とは?
|
「TIPS:[ASP.NET]Webフォームから動的にPDF文書を作成するには?」や「TIPS:[ASP.NET]PDF文書のセキュリティ情報やヘッダ/フッタを設定するには?」では、iText.NETライブラリを利用して、WebフォームからPDF文書を生成する方法を紹介した。 しかし、PDF文書を動的に生成するといっても、定型的なデザインを一から動的に生成する必要はない。そのようなことをすれば、コードが無駄に冗長になり、サーバに対する負荷を増やしてしまう一因ともなる。また、帳票レイアウトに変更が生じた場合に、コードを直接修正しなければならないのもうれしいことではないだろう。 そこで、一般的には定型的な枠組みの部分は「テンプレート」としてあらかじめ用意しておき、動的にデータベースなどから取得するべきデータ部分だけをASP.NETから操作するのが好ましい。 本稿では、あらかじめ用意したテンプレートPDF「template.pdf」に対してデータを動的に追記する方法について紹介しよう。なお、本稿ではあらかじめ以下のようなPDF文書を用意し、サーバ上に配置しておくものとする。 それではさっそく、具体的なサンプル・コードを眺めてみることにしよう。なお、本稿のサンプルを実行するには、「TIPS:[ASP.NET]Webフォームから動的にPDF文書を作成するには?」の手順に従って、iText.NETの展開とweb.configの設定を行っておく必要がある。 ここで注目していただきたいのは、ソースコード中、太字で示した部分だ。テンプレートを利用するには、PdfReaderクラス(com.lowagie.text.pdf名前空間)でまず、あらかじめ用意したテンプレートPDFを読み込む必要がある。読み込んだテンプレートは、PdfWriterオブジェクト(com.lowagie.text.pdf名前空間)のgetImportedPageメソッドからページ数を指定してインポートすることが可能だ。 このメソッドでは、第1パラメータにPdfReaderオブジェクトを、第2パラメータにページ数を渡すことができる。戻り値として、インポートされたページを表現するPdfImportedPageオブジェクト(com.lowagie.text.pdf名前空間)を返す。 このメソッドでは、第1パラメータにPdfTemplateオブジェクト(com.lowagie.text.pdf名前空間)を、第2パラメータにx座標、第3パラメータにy座標を渡すことができる。 以上を理解したら、実際にサンプルを動かしてみよう。以下の画面のように、テンプレートtemplate.pdfに対して、文字列が追記されていれば成功だ。 ちなみに、本サンプルではインポートしたテンプレートをそのまま貼り付けているが、貼り付け前に(先ほど示したaddTemplateメソッドの別バージョンのメソッドを利用することで)縮小/拡大処理を施すことも可能だ。 名前空間のエイリアス修飾子と外部アセンブリ (2007/11/30) 開発規模が大きくなると名前空間やクラスの名前が衝突してしまうことがある。C# 2.0には、それを避けるためのいくつかの記法が追加されている マスタ/詳細テーブルにおける更新処理 (2007/11/27) 外部キー制約や自動インクリメント列を使いこなして、追加・更新・削除されたマスタ/詳細データをDBに反映する エンジニアとしての力量を数値で測った経験は?ITSSレベルを無料で判定、12月25日(火)まで ホワイトペーパー利用者に「Amazonギフト券」を抽選で100名様にプレゼント!――TechTargetジャパン リニューアル・キャンペーン @ITトップ|Insider.NETフォーラム トップ|会議室|利用規約|プライバシーポリシー|サイトマップ |
[ 139] @IT:.NET TIPS [ASP.NET]あらかじめ用意したPDF文書をインポートするには? - C# VB.NET Webフォーム
[引用サイト] http://www.atmarkit.co.jp/fdotnet/dotnettips/315aspgenpdf3/aspgenpdf3.html
|
マイクロソフトはエンタープライズ向け製品をベータ版の段階から広くユーザーやパートナーに提供し、フィードバックを次の開発に生かす方向に転換した。例えば年内の開発完了を予定している「Windows Server 2008」(開発名Longhorn)の日本語版ベータ3は4月に配布を始めた。ただ、新OSのDVD-ROMがあってもハードを社内で用意できないケースは多い。そのようなときはどうすればいいのだろうか? マイクロソフトはWindows Server 2008をネットワーク経由で試すことができる「バーチャルラボ」を用意している。バーチャルラボは米国に置いたサーバに「Microsoft Virtual Server」をインストールし、ユーザーごとの環境を構築する仕組み。Windows Server 2008のほかに「Visual Studio 2005」「2007 Microsoft Office system」「SQL Server 2005」などの環境もあり、ユーザーはネットワーク経由で自分のサーバのように使うことができる。バーチャルラボは運用管理者向けの「TechNet バーチャルラボ」と開発者向けの「MSDN バーチャルラボ」の2つがある。 マイクロソフトはバーチャルラボに各ソフトウェアの機能を実際に試してもらえる複数のシナリオを用意している。付属するマニュアルを参照してソフトウェアを操作すれば、その機能が理解できるようになっている。例えば、Windows Server 2008の場合は、NAP(Network Access Protection)とターミナルサービスについてのシナリオを用意。ほかの機能についてもシナリオを増やしていく予定だ。MSDNバーチャルラボでは「Visual Studio 2005によるWebアプリケーション開発」などがある。 バーチャルラボでWindows Server 2008を試すにはマイクロソフトのWebサイトにInternet Explorer 6以降でアクセスし、ユーザー登録。Virtual ServerにアクセスするためのActiveXコントロールをインストールする。起動するとWindows Server 2008のログオン画面が表示され、これ以降は通常のOSと同じように使うことができる。ただ、利用できる時間は90分に制限される。外部ネットワークへの接続もできないようだ。 バーチャルラボでログオンしたWindows Server 2008のデスクトップ画面。ビルドは6001。AMDプロセッサ搭載のサーバで稼働しているようだ バーチャルラボはマイクロソフトが用意するシナリオをベースにユーザーがソフトウェアの機能を理解するのが基本だが、利用できるソフトウェアは「紙芝居ではない。実際のOSの中身が分かる」(マイクロソフト)ようになっている。インストールされているアプリケーションや管理ツールを自由に試すことができ、かなり実機に近い環境といえる。NAPの設定などでは複数のサーバを用意しないと検証できないが、バーチャルラボのNAPシナリオでは4台の仮想サーバを用意し、NAPを検証できるようにしている。 マイクロソフトは「検証のために複数台のサーバが必要なシナリオや、最新の製品についてのバーチャルラボが人気」としている。 エンジニアとしての力量を数値で測った経験は?ITSSレベルを無料で判定、12月25日(火)まで ホワイトペーパー利用者に「Amazonギフト券」を抽選で100名様にプレゼント!――TechTargetジャパン リニューアル・キャンペーン |
[ 140] ハードを用意せずに「Windows Server 2008」(Longhorn)を試す方法 − @IT
[引用サイト] http://www.atmarkit.co.jp/news/200708/17/labs.html
