cancel
Showing results for 
Search instead for 
Did you mean: 

VS??????????CrystalReport???????PDF??????

Former Member
0 Kudos

お世話になります。

VS2005バンドル版のCrystalReportで、

外字を含むPDF出力を行う方法について、

ご教授ください。

もし、VS2005バンドル版でできないのであれば、

製品版のCrystalReportでは、可能でしょうか?

Accepted Solutions (1)

Accepted Solutions (1)

former_member583013
Active Contributor
0 Kudos

Sayawaki Takeshi 様、

外字は公式には対応していません。あくまでも現状の動作としてですが(予告無く変わる可能性があります)、外字を定義した TrueType フォント(.ttf)を作成し、それを指定してください。Ver 9 からは、この方法で動作しています。

勘違いされる方が多いのですが、Windows の外字エディターで作成したものは TrueType ではありません。

TrueType の作成方法に関しては Google で検索を行えば、多数の情報が見つかります。

SCN フォーラムモデレーター

Former Member
0 Kudos

早速のご回答有難うございます。

>外字は公式には対応していません。

>あくまでも現状の動作としてですが(予告無く変わる可能性があります)、

>外字を定義した TrueType フォント(.ttf)を作成し、それを指定してください。

>Ver 9 からは、この方法で動作しています。

>勘違いされる方が多いのですが、Windows の外字エディターで作成したものは TrueType ではありません。

上記について、下記の手順で確認しました。

1.外字を定義したEudc.tteをEudc.ttfにリネームしFontsフォルダに追加します。

2.外字を含んだ文字を出力したいフィールドのフォントをEudc.ttfに変更します。

3.PDF出力した結果を確認します。

u21D2結果、登録した外字は、出力されましたが、逆に既存の文字が文字化けしました。

既存フォントに対して、外字フォントを追加(可能?)しなければいけない状況が判明しました。

他社の製品では、外字埋込を対応しているのにかかわらず、何故マイクロソフト製品に

バンドルされているCrystalReportもしくは製品版で対応できていないのかについて

明確な理由を教えてください。

また、今後、サポート予定があるのであればサポート時期などお知らせください。

既存システムで複数の帳票をCrystalReportで作成しております。

外字の正式対応が出来ないのであれば、全て他社製品に変更せざるおえません。

former_member583013
Active Contributor
0 Kudos

>u21D2結果、登録した外字は、出力されましたが、逆に既存の文字が文字化けしました。

>既存フォントに対して、外字フォントを追加(可能?)しなければいけない状況が判明しました。

EUDC には、どの字体が含まれているか理解されていますか。一般的な文字は一切含まれていません。たとえ、MS P ゴシックにリンクをしたとしても Windows がユーザーに意識させないで代替処理を行っているだけで、EUDC に JIS93/2000 で定義されている字体が含まれているわけではありません。

Crystal Reports が対応するのは TrueType フォントです。Unicode の規格で定義されているわけではありませんが、日本の外字は Unicode 上では PUA にマップされます。Crystal Reports から見た場合は、単に PUA のコードに見えるだけで、それを指定されている TrueType フォントで表示しようとするだけです。繰り返しますが、PUA == 外字ではありません。自由に使えるエリアなので外字を割り当てているだけです。

中国では Unicode より広範囲の文字を利用する GB-18030 があります。中国で販売するソフトウェアは全てこのコードに対応する必要があり、Visual Studio も Crystal Reports も対応済みです。つまり、通常では見られない文字も正しく扱えるということです。

日本独自(Windows 独自と言った方が正しいかもしれません)の外字エディターで作成したフォントに対しては公式に対応はしていませんが、TrueType フォントであれば利用可能です。

Crystal Reports から見た場合、Windows 標準以外のフォント(たとえばモリサワやリコーなどのフォント)と、いわゆる外字を "含んだ" フォントを「差別」することは出来ません。言い換えれば、コードとフォントとスクリプトのマップをするだけで、それが PUA エリアなのかどうかは関知しません。

日本の誰もがご存知のあるお客様では、BusinessObjects Enterprise を大規模に利用していますが、人名の為に外字を "含んだ" TrueType フォントを作成し、Crystal Reports で活用されています。

フォントの作成については分からない場合は Google で TTedit を検索する事をお勧めします。

なお、過去から利用されている、いわゆるシフトJIS の空き領域は、JIS2004 ではコードが割り当てられ利用可能領域が少なくなっていますし、基本的には非推奨となっています。詳細は JIS2000 と 2004 の仕様書をご覧ください。

SCN フォーラムモデレーター

Edited by: Naoto Miyahara on Oct 30, 2008 10:37 PM

Former Member
0 Kudos

回答有難うございました。

記述どおりTTEditを利用することで可能なことは判りました。

u2026当面は、本手法にて対応していきます。

今後、外字(EUDC)対応が、正式になったらご教授いただけますと

幸いです。

Answers (1)

Answers (1)

former_member583013
Active Contributor
0 Kudos

Answered のステータスに変更させていただきます。

SCN フォーラムモデレーター