メニュー最初の一歩基本的な仕組み機能サンプル
プログラム仕様デザイン仕様機能拡張その他関連製品開発・運営会社 |
任意のフォントを利用する方法RapidReportでは、帳票内で利用されるフォントを指定するには、 [フォント]>[フォント名]プロパティにフォントの種類を表すキーを指定します。 デフォルトで用意されているキーは[gothic]、[mincho]の2つです。 それぞれのキーに対応付けられる実際のフォントは、 各レンダラのSettingオブジェクトが持つFontMapというハッシュに定義されています。 各FontMapのデフォルトの内容を以下に示します。
利用するレンダラのFontMapに要素を追加することで、 任意のフォントを利用することが可能になります。 PDFレンダラでのフォント設定
PDFレンダラの設定オブジェクトであるPdfRendererSettingでは、デフォルトで MS-Gothic/MS-Mincho というフォントが設定されています。
これは、PDFを閲覧する環境に MSゴシック/明朝 がインストールされているならこれを採用するという論理フォントですが、
あくまで物理フォントを埋め込んでいるわけではないため、実際にどのフォントが利用されるかは閲覧する環境に依存します。 目的のフォントがインストールされていない環境や、任意の閲覧ソフトが利用された場合でも、 確実に指定したフォントでPDFの描画が行われるようにするには、フォントを埋め込む必要があります。 フォントの埋め込みを行うには、BaseFontオブジェクトを作成してFontMapに設定します。 例えば、[gothic]と[mincho]にそれぞれ[MSゴシック]と[MS明朝]を埋め込みフォントとして割り当てるには、 以下のように書きます。 (システムのフォントフォルダのパスが"C:\Windows\Fonts"であるという前提とします)
// C#
PdfRendererSetting setting = new PdfRendererSetting();
setting.FontMap["gothic"] = BaseFont.CreateFont("C:\\Windows\\Fonts\\msgothic.ttc,0", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
setting.FontMap["mincho"] = BaseFont.CreateFont("C:\\Windows\\Fonts\\msmincho.ttc,0", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
PdfRenderer renderer = new PdfRenderer(stream, setting);
' VisualBasic
Dim setting As PdfRendererSetting = New PdfRendererSetting()
setting.FontMap("gothic") = BaseFont.CreateFont("C:\Windows\Fonts\msgothic.ttc,0", BaseFont.IDENTITY_H, BaseFont.EMBEDDED)
setting.FontMap("mincho") = BaseFont.CreateFont("C:\Windows\Fonts\msmincho.ttc,0", BaseFont.IDENTITY_H, BaseFont.EMBEDDED)
Dim renderer PdfRenderer = New PdfRenderer(stream, setting)
// Java
PdfRendererSetting setting = new PdfRendererSetting();
setting.fontMap.put("gothic", BaseFont.createFont("C:\\Windows\\Fonts\\msgothic.ttc,0", BaseFont.IDENTITY_H, BaseFont.EMBEDDED));
setting.fontMap.put("mincho", BaseFont.createFont("C:\\Windows\\Fonts\\msmincho.ttc,0", BaseFont.IDENTITY_H, BaseFont.EMBEDDED));
PdfRenderer renderer = new PdfRenderer(stream, setting);
[gothic]と[mincho]以外にキーを追加することもできます。 例えば、[meiryo]というキーでメイリオフォントを利用するには以下のように書きます。
// C#
PdfRendererSetting setting = new PdfRendererSetting();
setting.FontMap.Add("meiryo", BaseFont.CreateFont("C:\\Windows\\Fonts\\meiryo.ttc,0", BaseFont.IDENTITY_H, BaseFont.EMBEDDED));
PdfRenderer renderer = new PdfRenderer(stream, setting);
' VisualBasic
Dim setting As PdfRendererSetting = New PdfRendererSetting()
setting.FontMap.Add("meiryo", BaseFont.CreateFont("C:\Windows\Fonts\meiryo.ttc,0", BaseFont.IDENTITY_H, BaseFont.EMBEDDED))
Dim renderer PdfRenderer = New PdfRenderer(stream, setting)
// Java
PdfRendererSetting setting = new PdfRendererSetting();
setting.fontMap.put("meiryo", BaseFont.createFont("C:\\Windows\\Fonts\\meiryo.ttc,0", BaseFont.IDENTITY_H, BaseFont.EMBEDDED));
PdfRenderer renderer = new PdfRenderer(stream, setting);
BaseFont.CreateFontメソッドの詳細については、iTextまたはiTextSharpのドキュメントを参照してください。 ※ PDFレンダラで外字を利用する方法については「レンダラの仕様」をご覧ください。 XLSレンダラでのフォント設定XLSレンダラで、[meiryo]というキーでメイリオフォントを利用する例を以下に示します。
// C#
XlsRendererSetting setting = new XlsRendererSetting();
setting.FontMap.Add("meiryo", "メイリオ");
XlsRenderer renderer = new XlsRenderer(workbook, setting);
' VisualBasic
Dim setting As New XlsRendererSetting
setting.FontMap.Add("meiryo", "メイリオ")
Dim renderer As New XlsRenderer(workbook, setting)
// Java
XlsRendererSetting setting = new XlsRendererSetting();
setting.fontMap.put("meiryo", "メイリオ");
XlsRenderer renderer = new XlsRenderer(workBook, setting);
直接印刷・プレビューでのフォント設定.NETで直接印刷・プレビューを行うPrinterオブジェクトに、 [meiryo]というキーでメイリオフォントを利用する例を以下に示します。
// C#
GdiRendererSetting setting = new GdiRendererSetting();
setting.FontMap.Add("meiryo", "メイリオ");
Printer printer = new Printer(pages, setting);
' VisualBasic
Dim setting As New GdiRendererSetting
setting.FontMap.Add("meiryo", "メイリオ")
Dim printer As New Printer(pages, setting)
レポートデザイナでのフォント設定レポートデザイナで任意のフォントを選択可能にするには、 レポートデザイナの実行バイナリと同じ場所にある設定ファイル[setting.json]に、fontプロパティを追加します (extフォルダ内に任意のJSONファイルを作成して記述する方法でも設定可能です)。 例えば、[meiryo]というキーでメイリオフォントを利用する場合は、以下の赤字の部分を追加します。
{
font: [
{key:"meiryo", font_name:"メイリオ"}
]
}
デザイナを実行する環境に当該のフォントがインストールされていない場合は、 font_nameは省略することができます。省略した場合は[MS ゴシック]が利用されます。 複数のフォントを追加する場合はカンマ区切りで書きます。
{
font: [
{key:"key1", font_name:"フォント1"},
{key:"key2", font_name:"フォント2"},
...
]
}
なお、設定ファイルが存在しない場合は作成してください。 ファイル全体は中カッコで囲む必要があり、 また、エンコーディングをUTF-8とする必要があります。 [setting.json]の書き方についての完全なドキュメントは「レポートデザイナの設定」にあります。 |
||||||||||||||||||
Copyright (c) 2013, SystemBase Co.,Ltd. All rights reserved. |