2016-12-30 2 views
0

コアプロットは非常に強力です。私はそれを使ってecgグラフを作成します。 pdfファイルを作成すると、いくつか問題が発生します。Core-Plotで作成したPDFファイルについて

各小さなグリッドは私のアプリケーション上で正方形です。 しかし、-dataForPDFRepresentationOfLayer()を使用してPDFファイルに書き込むと、小さなグリッドは正方形ではありません。 pdfファイルの "minorGridLine"が間違った位置にあります。

プロット領域のピクセルサイズとグリッド線の数を設定しました。 各小さなグリッドは私のアプリでは正方形ですが、小さなグリッドはPDFファイルでは正方形ではありません。 この問題を解決するには?

おかげで、 ミダス

App Screenshot

pdf Screenshot

答えて

1

あなたはライン上の鮮明なエッジを得るために、ピクセル境界にグリッド線を整列させる効果を見ています。上部の画像(スクリーンショット)は、1倍のレンダリングのように見え、グリッド線がぼやけていて、データ線にアンチエイリアスがあります。下の画像(PDF)は、高解像度(2xまたは3x)の描画キャンバスを意味する鮮明な線のエッジを持っています。解像度が線幅を整数ピクセル数でレンダリングするのに十分高い場合、コアプロットはラインを最も近いピクセル境界に落として、アンチエイリアシングによって引き起こされるファジーエッジを除去します。

可能な解決策は、プロット領域のピクセルサイズがマイナーティック位置の数の偶数倍(グラフのcontentsScaleを考慮)であること、またはマイナーグリッド線の線幅を調整することですそれらを整数のピクセル数でレンダリングすることが可能です。たとえば、0.5の代わりに0.4の線幅を使用します。

+0

ありがとう、エリック。私は各メジャーグリッドのピクセルの大きさをマイナーティックの位置の倍数で設定し、正しいpdfファイルを取得します。 –

関連する問題