EspressChartで画像に出力する際、画像形式がJPEGやPNGの場合には圧縮率を設定することが可能です。ファイルサイズを小さくすることを優先するか、画質の良さを優先するか、ユーザ様の要件に合わせて調整することができます。PNGの場合はデフォルト・最大圧縮・圧縮なしの3パターンから選択可能、JPEGの場合は圧縮率を0~100%で指定可能です。
■チャートデザイナでJPEG出力時に表示される圧縮率設定画面
// APIでは以下のように記述することで対応可能です。最後の引数が画質の度合いで、100が最高画質、0が最低画質です。
QbChart#export(QbChart.JPEG, “[出力先]”, 0, 0, 0);
QbChart#export(QbChart.JPEG, “[出力先]”, 0, 0, 50);
QbChart#export(QbChart.JPEG, “[出力先]”, 0, 0, 100);
■チャートデザイナでPNG出力時に表示される圧縮設定画面
// APIでは以下のように記述することで対応可能です。
chart.export(QbChart.PNG, “[出力先]”, 0, 0, QbChart.PNG_COMPRESSION_DEFAULT);
chart.export(QbChart.PNG, “[出力先]”, 0, 0, QbChart.PNG_COMPRESSION_MAX);
chart.export(QbChart.PNG, “[出力先]”, 0, 0, QbChart.PNG_COMPRESSION_NONE);
では実際に圧縮率を変えた時にどの程度表示に違いが出るのか、複数ケースで検証してみました。
●PNG(デフォルトの場合)
サイズは25KBでした。
●PNG(最大圧縮の場合)
サイズは24KBでした。デフォルトとの違いが分かりません。
●PNG(圧縮なしの場合)
サイズは385KBでした。ただこれもデフォルトと違うが分かりません。可逆圧縮形式というのに関係しているのでしょうか。
●JPEG(圧縮率0%の場合)
サイズは33KBでした。
●JPEG(圧縮率10%の場合)
サイズは17KBでした。圧縮率0%と比較すると約半分のサイズになっています。画質もよくよく見れば確かにちょっと劣化していますが、気になるほどではありません。
●JPEG(圧縮率20%の場合)
サイズは14KBでした。見る人によってはそろそろ気になってくる画質でしょうか。
●JPEG(圧縮率30%の場合)
サイズは12KBでした。粗さが目立つようになってきました。
●JPEG(圧縮率50%の場合)
サイズは10KBでした。ここまで来てしまうと実用的ではないかもしれません。
●JPEG(圧縮率100%の場合)
サイズは4KBでした。これを使用するのは現実的ではありません。
関連するトピックス:
- 異なるフラットフォームでチャートサイズを正確にコントロールする方【Javaグラフ作成ツールEspressChart】
- EspressReportライブ・デモ【Java対応レポート・帳票ツールEspressReport】
- 画像(キャンバス)サイズを変えずにグラフのみサイズを変える方法[EspressChart]
- グラフや凡例のシンボル(マーカー)の種類とサイズ指定【Javaチャート・グラフ作成ツールEspressChart】
- 凡例のカスタマイズについて【Javaチャート・グラフ作成ツールEspressChart】
- ダッシュボードからグラフ、表をPDFやエクセルでダウンロード
- APIにおける使用するフォントの指定方法
- Ver5からのフォントサイズ【Javaチャート・グラフ作成ツールEspressChart】
- Exportメソッドの同期化【Javaチャート・グラフ作成ツールEspressChart】
- EspressChartの自動調整機能により決定した値を利用するには