コード例 #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="PageSetupForm"/> class.
        /// </summary>
        /// <param name="settings">PrinterSettings used for printing.</param>
        public PageSetupForm(PrinterSettings settings)
        {
            // This call is required by the Windows Form Designer.
            InitializeComponent();

            // Store the printer settings
            _printerSettings = settings;

            // Gets the list of available paper sizes
            comboPaperSizes.SuspendLayout();
            PrinterSettings.PaperSizeCollection paperSizes = settings.PaperSizes;
            foreach (PaperSize ps in paperSizes)
            {
                comboPaperSizes.Items.Add(ps.PaperName);
            }
            comboPaperSizes.SelectedItem = settings.DefaultPageSettings.PaperSize.PaperName;
            if (comboPaperSizes.SelectedIndex == -1)
            {
                comboPaperSizes.SelectedIndex = 1;
            }
            comboPaperSizes.ResumeLayout();

            // Gets the paper orientation
            if (settings.DefaultPageSettings.Landscape)
            {
                _rdbLandscape.Checked = true;
            }
            else
            {
                _rdbPortrait.Checked = true;
            }

            // Gets the margins
            _left             = settings.DefaultPageSettings.Margins.Left / 100.0;
            txtBoxLeft.Text   = $@"{_left:0.00}";
            _top              = settings.DefaultPageSettings.Margins.Top / 100.0;
            txtBoxTop.Text    = $@"{_top:0.00}";
            _bottom           = settings.DefaultPageSettings.Margins.Bottom / 100.0;
            txtBoxBottom.Text = $@"{_bottom:0.00}";
            _right            = settings.DefaultPageSettings.Margins.Right / 100.0;
            txtBoxRight.Text  = $@"{_right:0.00}";
        }
コード例 #2
0
        private PaperSize FindPaperSize(PrinterSettings.PaperSizeCollection paperSizes,
                                        float paperWidth, float paperHeight, int rawKind)
        {
            foreach (PaperSize ps in paperSizes)
            {
                // convert hundreds of inches to mm
                float psWidth  = ps.Width / 100f * 25.4f;
                float psHeight = ps.Height / 100f * 25.4f;
                // check if page has the same kind and size
                bool sizeEqual = Math.Abs(paperWidth - psWidth) < 5 && Math.Abs(paperHeight - psHeight) < 5;
                if (sizeEqual)
                {
                    if (rawKind == 0 || ps.RawKind == rawKind)
                    {
                        return(ps);
                    }
                }
            }

            return(null);
        }
コード例 #3
0
        System.Drawing.Printing.PaperSize findSuitablePaperSize(System.Drawing.Printing.PaperSize model,
                                                                PaperKind modelPaper,
                                                                PrinterSettings.PaperSizeCollection paperSizes)
        {
            if (paperSizes.Count == 1)
            {
                return(paperSizes[0]);
            }

            foreach (System.Drawing.Printing.PaperSize papSize in paperSizes)
            {
                if (papSize.Kind != modelPaper)
                {
                    continue;
                }
                //if (papSize.Width < model.Width) continue;
                //if (papSize.Height < model.Height) continue;
                return(papSize);
            }
            return(null);
        }
コード例 #4
0
ファイル: PrintSetUp.cs プロジェクト: SoL-Alucard-Git/HX-Base
        private void method_1()
        {
            string str3;

            if ((pageSetupDialog == null) || (this.comboBox_DefaultPrinter.SelectedItem == null))
            {
                this.loger.Error("SetCurPrinter函数:当前pageSetupDialog为空");
                return;
            }
            pageSetupDialog.Document.PrinterSettings             = new PrinterSettings();
            pageSetupDialog.Document.PrinterSettings.PrinterName = this.comboBox_DefaultPrinter.SelectedItem.ToString();
            PrinterSettings.PaperSizeCollection paperSizes = pageSetupDialog.Document.PrinterSettings.PaperSizes;
            this.CurrentPrinterName = pageSetupDialog.Document.PrinterSettings.PrinterName;
            if (((this.object_0 != null) && (this.object_0.Length > 0)) && ((str3 = this.object_0[0].ToString()) != null))
            {
                if ((str3 == "c") || (str3 == "s"))
                {
                    pageSetupDialog.Document.PrinterSettings.DefaultPageSettings.PaperSize = this.paperSize_0;
                }
                else if ((str3 == "j") || (str3 == "f"))
                {
                    pageSetupDialog.Document.PrinterSettings.DefaultPageSettings.PaperSize = this.paperSize_1;
                }
                else if ((str3 == "q") && (this.object_0.Length >= 5))
                {
                    int    num  = Common.ObjectToInt(this.object_0[4].ToString());
                    string str2 = "NEW76mmX177mm";
                    Dictionary <string, int> jsPrintTemplate = ToolUtil.GetJsPrintTemplate();
                    if (jsPrintTemplate.Count > 0)
                    {
                        foreach (string str in jsPrintTemplate.Keys)
                        {
                            if (jsPrintTemplate[str] == num)
                            {
                                str2 = str;
                            }
                        }
                        if (str2.IndexOf("76mmX177mm") != -1)
                        {
                            pageSetupDialog.Document.PrinterSettings.DefaultPageSettings.PaperSize = this.paperSize_2;
                        }
                        else if (str2.IndexOf("76mmX152mm") != -1)
                        {
                            pageSetupDialog.Document.PrinterSettings.DefaultPageSettings.PaperSize = this.paperSize_3;
                        }
                        else if (str2.IndexOf("76mmX127mm") != -1)
                        {
                            pageSetupDialog.Document.PrinterSettings.DefaultPageSettings.PaperSize = this.paperSize_4;
                        }
                        else if (str2.IndexOf("57mmX177mm") != -1)
                        {
                            pageSetupDialog.Document.PrinterSettings.DefaultPageSettings.PaperSize = this.paperSize_5;
                        }
                        else if (str2.IndexOf("57mmX152mm") != -1)
                        {
                            pageSetupDialog.Document.PrinterSettings.DefaultPageSettings.PaperSize = this.paperSize_6;
                        }
                        else if (str2.IndexOf("57mmX127mm") != -1)
                        {
                            pageSetupDialog.Document.PrinterSettings.DefaultPageSettings.PaperSize = this.paperSize_7;
                        }
                        else
                        {
                            pageSetupDialog.Document.PrinterSettings.DefaultPageSettings.PaperSize = this.paperSize_2;
                        }
                    }
                    else
                    {
                        pageSetupDialog.Document.PrinterSettings.DefaultPageSettings.PaperSize = this.paperSize_2;
                    }
                }
            }
            this.bool_0 = false;
            IEnumerator enumerator2 = pageSetupDialog.Document.PrinterSettings.PrinterResolutions.GetEnumerator();

            {
                PrinterResolution current;
                while (enumerator2.MoveNext())
                {
                    current = (PrinterResolution)enumerator2.Current;
                    if ((current.X == 180) && (current.Y == 180))
                    {
                        goto Label_038B;
                    }
                }
                goto Label_03BF;
Label_038B:
                pageSetupDialog.Document.DefaultPageSettings.PrinterResolution = current;
                this.bool_0 = true;
            }
Label_03BF:
            if ((this.printer_0 != null) && !IPrint.IsZjFlag)
            {
                PrinterEventArgs args = new PrinterEventArgs {
                    Name        = ((this.object_0 == null) || (this.object_0.Length <= 0)) ? "user" : this.object_0[0].ToString(),
                    Left        = Common.ObjectToFloat(this.txt_left.Text),
                    Top         = Common.ObjectToFloat(this.txt_top.Text),
                    System      = "1",
                    PageLenght  = 0,
                    PrinterName = this.comboBox_DefaultPrinter.SelectedItem.ToString(),
                    IsQuanDa    = this.r1.Checked
                };
                this.printer_0.SaveUserPrinterEdge(args);
            }
        }