public ExtendedPrintController(PrintController controller):base()
		{
			if (controller == null) {
				throw new ArgumentNullException("controller");
			}
			this.controller = controller;
		}
	// Constructor.
	public PrintDocument()
			{
				this.documentName = "document";
				this.originAtMargins = false;
				this.printController = null;
				this.printerSettings = new PrinterSettings();
				this.defaultPageSettings = new PageSettings(printerSettings);
			}
Esempio n. 3
0
        /// <summary>
        /// 计算预览页
        /// </summary>
        private void ComputePreview()
        {
            if (document == null)
            {
                ppiPreviewPageArr = new PreviewPageInfo[0];
            }
            else
            {
                System.Drawing.Printing.PrintController printControl = document.PrintController;
                PreviewPrintController previewControl = new PreviewPrintController();
                previewControl.UseAntiAlias = UseAntiAlias;

                document.PrintController = previewControl;

                SetPageSize();
                document.Print();
                ppiPreviewPageArr        = previewControl.GetPreviewPageInfo();
                document.PrintController = printControl;
            }
        }
Esempio n. 4
0
 public NewPrintController(PrintController origin_controller)
 {
     this.OriginController = origin_controller;
 }
 /// <include file='doc\PrintControllerWithStatusDialog.uex' path='docs/doc[@for="PrintControllerWithStatusDialog.PrintControllerWithStatusDialog1"]/*' />
 /// <devdoc>
 ///    <para>[To be supplied.]</para>
 /// </devdoc>
 public PrintControllerWithStatusDialog(PrintController underlyingController, string dialogTitle) {
     this.underlyingController = underlyingController;
     this.dialogTitle = dialogTitle;
 }
 /// <include file='doc\PrintControllerWithStatusDialog.uex' path='docs/doc[@for="PrintControllerWithStatusDialog.PrintControllerWithStatusDialog"]/*' />
 /// <devdoc>
 ///    <para>[To be supplied.]</para>
 /// </devdoc>
 public PrintControllerWithStatusDialog(PrintController underlyingController) 
 : this(underlyingController, SR.GetString(SR.PrintControllerWithStatusDialog_DialogTitlePrint)) {
 }
Esempio n. 7
0
 public PrintPreviewUIPrintController(PrintController underlyingController, PrintPreviewDialog owner)
 {
     this._underlyingController = underlyingController;
     this._owner = owner;
 }
		public PrintControllerWithStatusDialog(PrintController underlyingController, string dialogTitle) : this(underlyingController) {
			dialog.Text = dialogTitle;
		}
		public PrintControllerWithStatusDialog(PrintController underlyingController) {
			this.underlyingController = underlyingController;
			dialog = new PrintingDialog();
			dialog.Text = "Printing";
		}
Esempio n. 10
0
		private bool originAtMargins = false; // .NET V1.1 Beta

		public PrintDocument() {
			documentname = "document"; //offical default.
			printersettings = new PrinterSettings(); // use default values
			defaultpagesettings = (PageSettings) printersettings.DefaultPageSettings.Clone ();
			printcontroller = new StandardPrintController();
		}
 public PrintControllerWithStatusDialog(PrintController underlyingController) : this(underlyingController, System.Windows.Forms.SR.GetString("PrintControllerWithStatusDialog_DialogTitlePrint"))
 {
 }
Esempio n. 12
0
        /// <summary>
        /// Prints the document.
        /// </summary>
        public void Print()
        {
            PrintController controller = PrintController;

            controller.Print(this);
        }
Esempio n. 13
0
        //steven's change
		///<summary>Only called from external forms without ever loading this form.  Prints without showing any print preview.  Returns true if printed successfully.  Make sure to call PrinterL.SetPrinter() before calling this method so that a printer name is set for when printing batch claims.</summary>
		public bool PrintImmediate(PrinterSettings ps, PrintController pc = null) {
			if(PrintBlank) {
				//Get the default claim form for the practice.
				ClaimFormCur=ClaimForms.GetClaimForm(PrefC.GetLong(PrefName.DefaultClaimForm));
				if(ClaimFormCur==null) {//Could happen if printing a blank form and no default claim form is set.
					MsgBox.Show(this,"No default claim form set.  Set a default in Setup | Family / Insurance | Claim Forms.");
					return false;
				}
			}
			pd2=new PrintDocument();
			pd2.PrinterSettings=ps;
            if (pc != null)
                pd2.PrintController = pc;
            //Test use
            //pd2.PrintController = new System.Windows.Forms.PrintControllerWithStatusDialog(new XPSPrinterController(PrintSituation.Claim, this.PatNumCur));
            //
			pagesPrinted=0;
			pd2.OriginAtMargins=true;
			pd2.DefaultPageSettings.Margins=new Margins(0,0,0,0);
			if(pd2.DefaultPageSettings.PrintableArea.Width==0 || pd2.DefaultPageSettings.PrintableArea.Height<400) {//some printers report page size of 0.
				//prevents bug in some printers that do not specify paper size
				pd2.DefaultPageSettings.PaperSize=new PaperSize("default",850,1100);
			}
			pd2.PrintPage+=new PrintPageEventHandler(this.pd2_PrintPage);
			try{
				pd2.Print();
			}
			catch(Exception ex){
				MessageBox.Show(ex.Message);//Lan.g("Printer","Printer not available"));
				return false;
			}
			return true;
		}
Esempio n. 14
0
        // methods
        public void Print()
        {
            PrintEventArgs printArgs = new PrintEventArgs();

            this.OnBeginPrint(printArgs);
            if (printArgs.Cancel)
            {
                return;
            }
            PrintController.OnStartPrint(this, printArgs);
            if (printArgs.Cancel)
            {
                return;
            }

            Graphics?g = null;

            if (printArgs.GraphicsContext != null)
            {
                g = Graphics.FromHdc(printArgs.GraphicsContext.Hdc);
                printArgs.GraphicsContext.Graphics = g;
            }

            // while there are more pages
            PrintPageEventArgs printPageArgs;

            do
            {
                QueryPageSettingsEventArgs queryPageSettingsArgs = new QueryPageSettingsEventArgs(
                    (DefaultPageSettings.Clone() as PageSettings) !);
                OnQueryPageSettings(queryPageSettingsArgs);

                PageSettings pageSettings = queryPageSettingsArgs.PageSettings;
                printPageArgs = new PrintPageEventArgs(
                    g,
                    pageSettings.Bounds,
                    new Rectangle(0, 0, pageSettings.PaperSize.Width, pageSettings.PaperSize.Height),
                    pageSettings);

                // TODO: We should create a graphics context for each page since they can have diferent paper
                // size, orientation, etc. We use a single graphic for now to keep Cairo using a single PDF file.

                printPageArgs.GraphicsContext = printArgs.GraphicsContext;
                Graphics?pg = PrintController.OnStartPage(this, printPageArgs);

                // assign Graphics in printPageArgs
                printPageArgs.SetGraphics(pg);

                if (!printPageArgs.Cancel)
                {
                    this.OnPrintPage(printPageArgs);
                }

                PrintController.OnEndPage(this, printPageArgs);
                if (printPageArgs.Cancel)
                {
                    break;
                }
            } while (printPageArgs.HasMorePages);

            this.OnEndPrint(printArgs);
            PrintController.OnEndPrint(this, printArgs);
        }