Beispiel #1
0
        /// <summary>
        /// Reset copy command parameter to default value.
        /// </summary>
        public void ResetToDefaultValue()
        {
            bool bIsMetrice = dll.IsMetricCountry();

            m_scaling   = 100;
            m_scanMode  = EnumCopyScanMode.Photo;
            m_nin1      = EnumNin1._1up;
            m_dpi       = EnumCopyResln._300x300;
            m_mediaType = EnumMediaType.Plain;

            m_density = 2;
            chkBtnIDCardCopy.IsChecked = false;
            spinCtlCopies.Value        = 1;

            if (bIsMetrice)
            {
                m_docSize    = EnumPaperSizeInput._A4;
                m_outputSize = EnumPaperSizeOutput._A4;
            }
            else
            {
                m_docSize    = EnumPaperSizeInput._Letter;
                m_outputSize = EnumPaperSizeOutput._Letter;
            }
        }
Beispiel #2
0
        private void cboDocSize_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            ComboBoxItem selItem = cboDocSize.SelectedItem as ComboBoxItem;

            if (null != selItem && null != selItem.DataContext)
            {
                m_docSize = (EnumPaperSizeInput)selItem.DataContext;
                CalculateScaling();
            }
        }
Beispiel #3
0
        private void btnDefault_Click(object sender, RoutedEventArgs e)
        {
            cboDocSize.Items.Clear();
            cboResolution.Items.Clear();
            cboOutputSize.Items.Clear();
            cboMediaType.Items.Clear();

            bool bIsMetrice = dll.IsMetricCountry();

            spinnerScaling.Value = 100;
            m_scanMode           = EnumCopyScanMode.Photo;

            if (bIsMetrice)
            {
                m_docSize    = EnumPaperSizeInput._A4;
                m_outputSize = EnumPaperSizeOutput._A4;
            }
            else
            {
                m_docSize    = EnumPaperSizeInput._Letter;
                m_outputSize = EnumPaperSizeOutput._Letter;
            }

            //if ( true == m_isIDCardCopy )
            //    m_outputSize = EnumPaperSizeOutput._A4;

            m_nin1      = EnumNin1._1up;
            m_dpi       = m_isIDCardCopy ? EnumCopyResln._600x600 : EnumCopyResln._300x300;
            m_mediaType = EnumMediaType.Plain;
            m_preNin1   = EnumNin1._2up;

            InitCboDocSize();
            InitCboResolution();
            InitCboOutputSize();
            InitCboMediaType();
            InitNin1();

            if (EnumCopyScanMode.Text == m_scanMode)
            {
                rdBtnScanModeTxt.IsChecked   = true;
                rdBtnScanModePhoto.IsChecked = false;
            }
            else if (EnumCopyScanMode.Photo == m_scanMode)
            {
                rdBtnScanModeTxt.IsChecked   = false;
                rdBtnScanModePhoto.IsChecked = true;
            }

            chkpopupIDCard.IsChecked = true;
            chkpopupNIn1.IsChecked   = true;
        }
Beispiel #4
0
        private void SettingBtnClick(object sender, RoutedEventArgs e)
        {
            CopySetting win = new CopySetting();

            if (true == chkBtnIDCardCopy.IsChecked)
            {
                win.m_isIDCardCopy = true;
                ResetValueForIDCardCopy();
            }

            win.Owner = m_MainWin;

            win.spinnerScaling.Value = m_scaling;
            win.m_scanMode           = m_scanMode;
            win.m_docSize            = m_docSize;
            win.m_outputSize         = m_outputSize;
            win.m_nin1      = m_nin1;
            win.m_dpi       = m_dpi;
            win.m_mediaType = m_mediaType;

            win.m_popupDlgIDCardCopy = m_MainWin.m_popupIDCard;
            win.m_popupDlgNIn1Copy   = m_MainWin.m_popupNIn1;

            if (true == win.ShowDialog())
            {
                m_scaling    = (ushort)win.spinnerScaling.Value;
                m_scanMode   = win.m_scanMode;
                m_docSize    = win.m_docSize;
                m_outputSize = win.m_outputSize;
                m_nin1       = win.m_nin1;
                m_dpi        = win.m_dpi;
                m_mediaType  = win.m_mediaType;

                m_MainWin.m_popupIDCard = win.m_popupDlgIDCardCopy;
                m_MainWin.m_popupNIn1   = win.m_popupDlgNIn1Copy;
            }
        }
Beispiel #5
0
        /// <summary>
        /// Calculate and assign the scaling value to spinner control.
        /// </summary>
        private void CalculateScaling()
        {
            if (null != cboDocSize &&
                null != cboOutputSize &&
                true != m_isIDCardCopy)
            {
                PaperSizeInputST[] input_papersize_infos =
                {
                    new PaperSizeInputST(EnumPaperSizeInput._A4,        210, 297),
                    new PaperSizeInputST(EnumPaperSizeInput._A5,        148, 210),
                    new PaperSizeInputST(EnumPaperSizeInput._B5,        182, 257),
                    new PaperSizeInputST(EnumPaperSizeInput._Letter,    216, 279),
                    new PaperSizeInputST(EnumPaperSizeInput._Executive, 184, 267),
                };

                PaperSizeOutputST[] output_papersize_infos =
                {
                    new PaperSizeOutputST(EnumPaperSizeOutput._A4,        210, 297),
                    new PaperSizeOutputST(EnumPaperSizeOutput._A5,        148, 210),
                    new PaperSizeOutputST(EnumPaperSizeOutput._B5,        182, 257),
                    new PaperSizeOutputST(EnumPaperSizeOutput._A6,        105, 148),
                    new PaperSizeOutputST(EnumPaperSizeOutput._B6,        128, 182),
                    new PaperSizeOutputST(EnumPaperSizeOutput._Letter,    216, 279),
                    new PaperSizeOutputST(EnumPaperSizeOutput._Executive, 184, 267),
                    new PaperSizeOutputST(EnumPaperSizeOutput._16K,       185, 260),
                };

                int idxInput  = 0;
                int idxOutput = 0;

                // get selected item of input paper size
                EnumPaperSizeInput valInput          = EnumPaperSizeInput._A4;
                ComboBoxItem       selectedItemInput = (ComboBoxItem)cboDocSize.SelectedItem;
                if (null != selectedItemInput && null != selectedItemInput.DataContext)
                {
                    valInput = (EnumPaperSizeInput)selectedItemInput.DataContext;
                }

                // get selected item of output paper size
                EnumPaperSizeOutput valOutput          = EnumPaperSizeOutput._A4;
                ComboBoxItem        selectedItemOutput = (ComboBoxItem)cboOutputSize.SelectedItem;
                if (null != selectedItemOutput && null != selectedItemOutput.DataContext)
                {
                    valOutput = (EnumPaperSizeOutput)selectedItemOutput.DataContext;
                }

                // get the index of input paper size
                for (int i = 0; i < input_papersize_infos.Length; i++)
                {
                    if (valInput == input_papersize_infos[i].m_papersize_id)
                    {
                        idxInput = i;
                        break;
                    }
                }

                // get the index of output paper size
                for (int i = 0; i < output_papersize_infos.Length; i++)
                {
                    if (valOutput == output_papersize_infos[i].m_papersize_id)
                    {
                        idxOutput = i;
                        break;
                    }
                }

                // according the phone call from Beijing, the margin is 4.2 mm
                double scaling1 = (output_papersize_infos[idxOutput].m_width - 4.2 * 2) / (input_papersize_infos[idxInput].m_width - 4.2 * 2);
                double scaling2 = (output_papersize_infos[idxOutput].m_height - 4.2 * 2) / (input_papersize_infos[idxInput].m_height - 4.2 * 2);
                double scaling  = scaling1 < scaling2 ? scaling1 : scaling2;

                spinnerScaling.Value = (decimal)(scaling * 100);
            }
        }
Beispiel #6
0
 public PaperSizeInputST(EnumPaperSizeInput papersize_id, double width, double height)
 {
     m_papersize_id = papersize_id;
     m_width        = width;
     m_height       = height;
 }