Docurain Labo

Docurainサービス開発日記

「外字」も出力可能です

官公庁・自治体・医療方面からのお客様からの問い合わせで多いのが外字の対応状況です。

もちろん、Docurainは「外字」*1に対応しています。

一般的に外字を必要とするのは人名・地名といった名詞において正確に一致する漢字を取り扱うケースですが、 Docurainは IPAmj明朝 に対応しています。このフォントは、いわゆる「外字」として必要とされるグリフのほぼ全て*2を含んだ特殊なフォントです。

例えば、f:id:yutay:20200720105116p:plain:w30 (U+3C08)という漢字の異体字である f:id:yutay:20200720105144p:plain:w30 (MJ文字図形名 MJ001865)は、この文字を埋め込むセルのフォントをIPAmj明朝にした上で、JSONで以下のようにユニコードエスケープで表現可能です。

f:id:yutay:20200720105144p:plain:w30

{ "str": "\ud879\udfdd" }

または、

{ "str": "\u{2e7dd}" }

と記述できます。

IPAmj明朝の文字一覧はこちらを参照してください。

今回は上記のIPAmj明朝の文字一覧からいくつかの文字を抜粋してPDF出力してみました。
f:id:yutay:20200720105144p:plain:w30f:id:yutay:20200720105956p:plain:w30 (の異体字、MJ文字図形名 MJ030058) をJSONに設定しています。

テンプレート・JSONは以下のように作成しています。
サンプルはこちらからダウンロードできます。

  • テンプレート f:id:yutay:20200720110500p:plain

  • 文字を埋め込むセルのフォントをIPAmj明朝に設定しています f:id:yutay:20200720110517p:plain

データ(JSON)はユニコードエスケープで表現したものを準備します。

{
    "外字1": "\ud879\udfdd",
    "外字2": "\u9f4a\udb40\udd03",
    "外字3": "\ud878\udda8",
    "外字4": "\ud873\udf1c",
    "外字5": "\ud87a\udcd9",
    ...省略...,
}

このテンプレートとJSONを使って出力してみましょう。

f:id:yutay:20200720114353p:plain

全て問題なく出力されていますね…!

IPAmj明朝の文字一覧に存在する5万8,844文字は全て検証済みで出力可能となっています。

今回作成したサンプルは、無料トライアルページからも登録不要で試してみることが出来ます。 外字を扱う帳票の作成・出力が必要な際はぜひ試してみてください!

他にも様々な機能がありますので、ぜひアカウント無料登録してマニュアルを参照しお試しください。

*1:ただし、本当の意味の外字(任意のフォントをインストール)を扱うことは出来ません。よって「外字」という表記にしています。

*2:総務省の「市区町村が使用する外字の実態調査」報告書(平成24年3月)によると、IPAmjで、全国市区町村が使用する外字の95.52%をカバーできるとのことです。