CubePdf.Converter.ConfigureCommonImage C# (CSharp) Method

ConfigureCommonImage() private method

画像に関わるオプションを設定します。
全てのファイルタイプ共通の設定です。
private ConfigureCommonImage ( UserSetting setting, Ghostscript gs ) : void
setting UserSetting
gs Ghostscript
return void
        private void ConfigureCommonImage(UserSetting setting, Ghostscript.Converter gs)
        {
            gs.AddOption("ColorConversionStrategy", setting.Grayscale ? "/Gray" : "/RGB");
            gs.AddOption("DownsampleColorImages", true);
            gs.AddOption("DownsampleGrayImages",  true);
            gs.AddOption("DownsampleMonoImages",  true);

            // 解像度
            var resolution = Parameter.ToValue(setting.Resolution);
            var mono = resolution < 300 ? 300 : 1200;
            gs.AddOption("ColorImageResolution", resolution);
            gs.AddOption("GrayImageResolution",  resolution);
            gs.AddOption("MonoImageResolution",  mono);

            // 画像圧縮
            gs.AddOption("AutoFilterColorImages", false);
            gs.AddOption("AutoFilterGrayImages",  false);
            gs.AddOption("AutoFilterMonoImages",  false);
            gs.AddOption("ColorImageFilter", "/" + setting.ImageFilter.ToString());
            gs.AddOption("GrayImageFilter",  "/" + setting.ImageFilter.ToString());
            gs.AddOption("MonoImageFilter",  "/" + setting.ImageFilter.ToString());

            // ダウンサンプリング
            if (setting.DownSampling != Parameter.DownSamplings.None)
            {
                gs.AddOption("ColorImageDownsampleType", "/" + setting.DownSampling.ToString());
                gs.AddOption("GrayImageDownsampleType",  "/" + setting.DownSampling.ToString());
                gs.AddOption("MonoImageDownsampleType",  "/" + setting.DownSampling.ToString());
            }
        }