/// <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; } }
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(); } }
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; }
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; } }
/// <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); } }
public PaperSizeInputST(EnumPaperSizeInput papersize_id, double width, double height) { m_papersize_id = papersize_id; m_width = width; m_height = height; }