PDFファイルを拡大/縮小表示した場合画質が低下します。Adobe ReaderやAcrobatと同じ品質で表示できますか?
対象製品
LEADTOOLS 17.5J Plug-In
詳細
LEADTOOLSでは、PDFファイルを読み込む場合、ラスタ画像(ビットマップ画像)に変換して画像データを保持します。
通常ベクタ形式であるPDFファイルをラスタ形式として読み込むため、PDFファイルと比べて若干画質が低下します。
Adobe ReaderやAcrobat等と全く同じ品質で表示することはできません。これはLEADTOOLSの仕様となります。
■画質の低下を抑える方法
PDFファイルを読み込む際に、CodecsPdfLoadOptionsクラスのGraphicsAlphaプロパティ、TextAlphaプロパティで画像やテキストにアンチエイリアスを設定することと、CodecsRasterizeDocumentLoadOptionsクラスのXResolution、YResolutionプロパティで解像度を設定することで画質の低下を抑えることが可能です。
サンプルコード(VB.NET)
サンプルコード(C#)
また、ビューワ(RasterImageViewerなど)を使用時に、拡大/縮小して表示する際には、RasterPaintProperties.PaintDisplayModeプロパティに「RasterPaintDisplayModeFlags.Resample」または「RasterPaintDisplayModeFlags.Bicubic」を設定することで画質の低下を抑えることができます。
サンプルコード(VB.NET)
サンプルコード(C#)
通常ベクタ形式であるPDFファイルをラスタ形式として読み込むため、PDFファイルと比べて若干画質が低下します。
Adobe ReaderやAcrobat等と全く同じ品質で表示することはできません。これはLEADTOOLSの仕様となります。
■画質の低下を抑える方法
PDFファイルを読み込む際に、CodecsPdfLoadOptionsクラスのGraphicsAlphaプロパティ、TextAlphaプロパティで画像やテキストにアンチエイリアスを設定することと、CodecsRasterizeDocumentLoadOptionsクラスのXResolution、YResolutionプロパティで解像度を設定することで画質の低下を抑えることが可能です。
サンプルコード(VB.NET)
Dim codecs As New RasterCodecs ' グラフィックアンチエイリアスを設定します。 codecs.Options.Pdf.Load.GraphicsAlpha = 2 ' フォントアンチエイリアスを設定します。 codecs.Options.Pdf.Load.TextAlpha = 4 ' 画像のビット数を設定します。 codecs.Options.Pdf.Load.DisplayDepth = 24 ' 水平および垂直方向の表示解像度(DPI)を設定します。 codecs.Options.RasterizeDocument.Load.XResolution = 300 codecs.Options.RasterizeDocument.Load.YResolution = 300
サンプルコード(C#)
RasterCodecs codecs = new RasterCodecs(); // グラフィックアンチエイリアスを設定します。 codecs.Options.Pdf.Load.GraphicsAlpha = 2; // フォントアンチエイリアスを設定します。 codecs.Options.Pdf.Load.TextAlpha = 4; // 画像のビット数を設定します。 codecs.Options.Pdf.Load.DisplayDepth = 24; // 水平および垂直方向の表示解像度(DPI)を設定します。 codecs.Options.RasterizeDocument.Load.XResolution = 300; codecs.Options.RasterizeDocument.Load.YResolution = 300;
また、ビューワ(RasterImageViewerなど)を使用時に、拡大/縮小して表示する際には、RasterPaintProperties.PaintDisplayModeプロパティに「RasterPaintDisplayModeFlags.Resample」または「RasterPaintDisplayModeFlags.Bicubic」を設定することで画質の低下を抑えることができます。
サンプルコード(VB.NET)
' RasterImageオブジェクトの描画品質を制御します。 Dim properties As New RasterPaintProperties() properties = RasterPaintProperties.Default properties.PaintDisplayMode = RasterPaintDisplayModeFlags.Bicubic RasterImageViewer1.PaintProperties = properties
サンプルコード(C#)
// RasterImageオブジェクトの描画品質を制御します。 RasterPaintProperties properties = new RasterPaintProperties(); properties = RasterPaintProperties.Default; properties.PaintDisplayMode = RasterPaintDisplayModeFlags.Bicubic; rasterImageViewer1.PaintProperties = properties;
キーワード
PDF 画像の表示