/// <summary>
        /// 保存ファイル形式を設定します。
        /// </summary>
        /// <param name="settings">プラグイン設定を表すImageSplitSettings。</param>
        private void setSavedFileType(ImageSplitSettings settings)
        {
            if (settings.SaveJpeg)
            {
                this.rdoJepg.Checked = true;
            }
            else
            {
                this.rdoBmp.Checked = true;
            }

            this.setRdoJepgChecked();
            this.trcJpegQuality.Value    = (int)settings.JpegSavedQuality;
            this.numQuality.Value        = settings.JpegSavedQuality;
            this.gbxSaveFileType.Enabled = this.Plugin.SelectedFilesFinisherEnabled;

            // 同名ファイルが存在した場合
            if (settings.IsSkipSameFileName)
            {
                this.rdoSkip.Checked = true;
            }
            else
            {
                this.rdoOverWrite.Checked = true;
            }
        }
        /// <summary>
        /// 画面の設定値を取得します。
        /// </summary>
        /// <returns>画面の設定値を表すImageSplitSettings。</returns>
        private ImageSplitSettings getSplitSettings()
        {
            var settings = new ImageSplitSettings
            {
                //保存先フォルダ
                SavedFolderPath = this.txtSaveTo.Text,
                // 選択した保存先フォルダを記憶する
                SavedSelectedFolderPath = this.chkDefaultSaveFolder.Checked,
                // 処理元フォルダ名
                SourceFolderName = this.Plugin.SourceFolderName,
                // 保存先に同名のフォルダを作る
                IsCreateFolderAtSameSourceFolder = this.chkCreateFolder.Checked,
                // 非選択ファイルも同時に処理する
                IsTargetForUnselectedFiles = this.chkUnselectFile.Checked,
                // Jpeg保存品質
                JpegSavedQuality = this.numQuality.Value,
                // 中心を除去する
                IsRemovedCenterLine = this.chkRemoveCenter.Checked,
                // 除去する中心線の幅
                RemovedCenterLineWidth = this.numRemovedCenterWidth.Value
            };

            // 非選択ファイルの処理
            var rdo = this.pnlUnselect.GetCheckedRadioButton();

            if (rdo != null)
            {
                settings.UnselectedFilesOperation = (UnselectedFilesOperation)rdo.Tag;
            }

            // 保存ファイル形式
            rdo = this.gbxSaveFileType.GetCheckedRadioButton();
            if (rdo != null)
            {
                settings.SaveJpeg = (bool)rdo.Tag;
            }
            // 同名ファイル存在時
            rdo = this.gbxExistsFile.GetCheckedRadioButton();
            if (rdo != null)
            {
                settings.IsSkipSameFileName = (bool)rdo.Tag;
            }

            // 分割方法(&P)
            rdo = this.gbxSplit.GetCheckedRadioButton();
            if (rdo != null)
            {
                settings.PageSplitType = (SplitType)rdo.Tag;
            }

            return(settings);
        }
        /// <summary>
        /// 保存先フォルダをセットします。
        /// </summary>
        /// <param name="settings">設定情報を表すImageSplitSettings。</param>
        private void setSavedPath(ImageSplitSettings settings)
        {
            if (settings.SavedSelectedFolderPath)
            {                   // 保存先フォルダを保存する場合のみ
                var folderPath = WinShellUtility.GetExistedFolderPath(settings.SavedFolderPath);
                if (string.IsNullOrEmpty(folderPath))
                {
                    // 存在しない場合はマイドキュメント
                    folderPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
                }

                this.txtSaveTo.Text = folderPath;
            }
        }
        /// <summary>
        /// 非選択ファイルの処理を設定します。
        /// </summary>
        /// <param name="settings">プラグイン設定を表すImageSplitSettings。</param>
        private void setUnselectedFilesOperation(ImageSplitSettings settings)
        {
            this.chkUnselectFile.Checked = settings.IsTargetForUnselectedFiles;
            this.setChkUnselectFileChecked();

            switch (settings.UnselectedFilesOperation)
            {
            case UnselectedFilesOperation.CopyFiles:
                this.rdoCopyUnselect.Checked = true;
                break;

            case UnselectedFilesOperation.CreatNewFiles:
                this.rdoSaveNew.Checked = true;
                break;

            default:
                break;
            }
        }
        /// <summary>
        /// ページの分割方法を設定します。
        /// </summary>
        /// <param name="settings"></param>
        private void setSplitType(ImageSplitSettings settings)
        {
            switch (settings.PageSplitType)
            {
            case SplitType.Vertical1_2:
                this.rdoVerti1_2.Checked = true;
                break;

            case SplitType.Vertical2_1:
                this.rdoVerti2_1.Checked = true;
                break;

            case SplitType.Horizontal1_2:
                this.rdoHori1_2.Checked = true;
                break;

            case SplitType.Horizontal2_1:
                this.rdoHori2_1.Checked = true;
                break;

            default:
                break;
            }
        }
 /// <summary>
 /// コンストラクタ。
 /// </summary>
 /// <param name="srcImage">処理対象の元BatchTargetImage。</param>
 /// <param name="settings">分割設定を表すImageSplitSettings。</param>
 public VerticalSplitter(BatchTargetImage srcImage, ImageSplitSettings settings) : base(srcImage, settings)
 {
 }
Exemple #7
0
 /// <summary>
 /// コンストラクタ。
 /// </summary>
 /// <param name="srcImage">処理対象の元BatchTargetImage。</param>
 /// <param name="settings">分割設定を表すImageSplitSettings。</param>
 public Splitter(BatchTargetImage srcImage, ImageSplitSettings settings) : base()
 {
     this.img      = srcImage.GetTargetImage();
     this.srcImage = srcImage;
     this.settings = settings;
 }
 /// <summary>
 /// コンストラクタ。
 /// </summary>
 /// <param name="srcImage">処理対象の元BatchTargetImage。</param>
 /// <param name="settings">分割設定を表すImageSplitSettings。</param>
 public HorizontalSplitter(BatchTargetImage srcImage, ImageSplitSettings settings) : base(srcImage, settings)
 {
 }