PowerTools ActiveReports for .NET 9.0J
PDFフォントファクトリ
すべて展開すべて展開
すべて折りたたむすべて折りたたむ

通常、Medium信頼レベル環境でPDFエクスポートフィルタを使用する場合、セキュリティ制限によりActiveReportsはシステムフォントフォルダにアクセスできません。このため、PDFファイルにフォントを埋め込むことができず、ある特定のフォントにしか存在しない特殊なグリフや非ASCII文字をレポートで使用している場合には、配布先の環境でPDFファイルを閲覧した際に正しく表示されません。

PDFフォントファクトリは、ActiveReportsからフォントが格納されている任意のフォルダへの参照方法を設定することで、Medium信頼レベル環境でもPDFへ任意のフォントを埋め込むことを可能にする機能です。Medium信頼レベル環境においてPDFファイルにフォントを埋め込むには、web.configファイルにフォントファクトリを設定する必要があります。

メモ: 使用するフォントファイル(.ttc、.ttf)は、アクセス可能な任意のフォルダに手動でコピーする必要があります。

フォントファクトリセクショングループの追加

以下のサンプルコードを、web.configファイルの<configSections>タグ内に貼り付けます。

XMLコード(web.configファイルのconfigSectionsタグ内に貼り付けます)
コードのコピー
<sectionGroup name="ActiveReports.PdfExport">
        <section name="FontFactory"
        type="GrapeCity.ActiveReports.Web.FontFactorySectionHandler,
        GrapeCity.ActiveReports.Web.v9,
        Version=9.X.XXXX.1, Culture=neutral, PublicKeyToken=cc4967777c49a3ff"
        requirePermission="false" />
</sectionGroup>

フォントファクトリの設定

フォントファクトリで参照するフォントが格納されているフォルダや、フォントを設定します。以下のサンプルコードを、web.configファイルの<configSections>タグと<appSettings>タグの間に貼り付けます。

メモ: 使用するフォントに合わせて適宜設定を変更してください。以下のサンプルコードの場合は、「Fonts」フォルダを作成し、必要なフォントファイル(arial.ttf、tahoma.ttf、msgothic.ttc、simsun.ttc、gulim.ttc、mingliu.ttc、micross.ttf)をコピーしてください。

XMLコード(web.configファイルの<configSections>タグと<appSettings>タグの間に貼り付けます。

コードのコピー
<ActiveReports.PdfExport>
    <FontFactory Mode="File">
        <AddFolder VirtualPath="~/Fonts" Recurse="true"/>
        <Substitute Font="Helv" To="Helvetica"/>
        <SetFallbackFont Font="Arial"/>
        <!-- font link nodes -->
        <AddFontLink Font="Arial" List="SimSun,gulim,PMingLiU"/>
        <AddFontLink Font="Tahoma" List="MS UI Gothic,SimSun,gulim,PMingLiU"/>
        <AddFontLink Font="MS UI Gothic" List="SimSun,gulim,PMingLiU,Microsoft Sans Serif" IsDefault="true"/>
    </FontFactory>
</ActiveReports.PdfExport>
メモ: Azureワーカーロールプロジェクトの場合は、上記のコードのような仮想パスではなく、次のように絶対パスを使用します。<AddFolder Path="~/Fonts" Recurse="true"/>

利用可能なプロパティ

FontFactory

AddFolder

Substitute(*1)

SetFallbackFont(*1)(Professionalのみ)

AddFontLink(*1)(Professionalのみ)

メモ:

*1: フォントの検索順は以下の通りです。

  1. コントロールで指定されたフォント。
  2. Substitute設定でマップされたフォント。
  3. AddFontLink設定で指定されたフォント(Professionalのみ)。
  4. SetFallbackFont設定で指定されたフォント(Professionalのみ)。

SetFallbackFontおよびAddFontLinkについては、「PDFマルチランゲージ」における「システムフォントリンク」および「FontFallbackプロパティ」と同様の機能となります。詳細については、「PDFマルチランゲージ」を参照してください。

 

関連トピック

 

 


©2003-2015 GrapeCity inc. All rights reserved.