図をpdfにて出力する際に生じる日本語の文字化けについて
조회 수: 14 (최근 30일)
이전 댓글 표시
ラベルに日本語を含む図を作成し、
「exportgraphics」を用いてpdf形式にて図を保存することを試みています。
しかし、出力されたpdfファイルを開くと
図のラベルの日本語が「#######」と表示され、正しく記載されません。
この問題を解決する方法はありますでしょうか。
なお、MATLABのバージョンはR2021aです。
ご教示いただけますと幸いです。
댓글 수: 2
Kojiro Saito
2022년 2월 7일
OSはWindowsでしょうか?それともMacやLinuxでしょうか?
また、MATLABで現在使用しているフォント名を教えて下さい。
s = settings;
s.matlab.fonts.codefont.Name
でリターンされる値のActiveValueが現在使用しているフォント名です。
채택된 답변
Kojiro Saito
2022년 2월 7일
Macの場合、exportgraphicsでPDFにするとフォントの種類によっては埋め込みがうまくいかないようです。R2021bでも同様の症状が発生しました。Windowsでは起こりませんでした。
2つワークアラウンドをご提示します。
(1) Figureを画像ファイルで保存してから再度読み込んでexportgraphicsをかける
exportgraphics(gcf,'out.png')
img = imread('out.png');
exportgraphics(gcf, 'out.pdf')
PNGにしてからimreadで読み込んでexportgraphicsでPDFにしています。日本語ラベルも表示されるようになります。
デメリットは、PDFのファイルサイズが約380KBほどに大きくなってしまうことと、日本語ラベルが画像として埋め込まれているので、PDFのキーワード検索でヒットしなくなるということです。
saveasやprintでもFigureをPDFファイルに保存することができます。
saveas(gcf, 'out.pdf')
% または
print(gcf,'out','-dpdf')
デメリットは、exportgraphicsのようにPDFの余白がタイトになっていないところで、必要に応じて調整する必要があります。
fig = gcf;
fig.PaperPositionMode = 'auto'
fig_pos = fig.PaperPosition;
fig.PaperSize = [fig_pos(3) fig_pos(4)];
print(gcf,'out','-dpdf')
댓글 수: 2
Kojiro Saito
2022년 2월 8일
解決して良かったです。exportgraphicsのPDFでの文字化けについて開発部門にも伝えておきます。
差し支えなければ回答の「採用」をお願いします。
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!