private void OnPrintA4()
        {
            if (this.nineSpread2_Sheet1.RowCount > 0)
            {
                FarPoint.Win.Spread.PrintInfo pi = new FarPoint.Win.Spread.PrintInfo();

                //pi.Header = "/r /fz\"12\" 第 /p 页 共 /pc 页";// "/l第/p页共/pc页";
                pi.ShowBorder = false;

                float len = 0f;
                for (int cidx = 0; cidx < this.nineSpread2_Sheet1.Columns.Count; cidx++)
                {
                    len += this.nineSpread2_Sheet1.Columns[cidx].Width;
                }


                //pi.Orientation = FarPoint.Win.Spread.PrintOrientation.Landscape;
                pi.Centering = FarPoint.Win.Spread.Centering.Horizontal;

                pi.UseMax = false;
                this.nineSpread2_Sheet1.PrintInfo = pi;
                this.nineSpread2_Sheet1.PrintInfo.ShowPrintDialog = true;
                this.nineSpread2.PrintSheet(this.nineSpread2.ActiveSheetIndex);
            }
            else
            {
                MessageBox.Show("没有要打印的数据");
            }
        }
예제 #2
0
        public frmPrintOpts(FarPoint.Win.Spread.FpSpread _fp)
        {
            //
            // Required for Windows Form Designer support
            //
            InitializeComponent();

            fp = _fp;
            pi = fp.ActiveSheet.PrintInfo;
            //
            // TODO: Add any constructor code after InitializeComponent call
            //
        }
예제 #3
0
        /// <summary>
        /// 导出
        /// </summary>
        /// <param name="fpread">farpoint</param>
        /// <param name="hideFirstColumn">是否隐藏第一列</param>
        /// <returns>是否导出成功</returns>
        public static bool fileExport(FarPoint.Win.Spread.FpSpread fpread, bool hideFirstColumn)
        {
            bool           bResult = false;
            SaveFileDialog sfd     = new SaveFileDialog();

            sfd.Filter = FILTER;
            if (sfd.ShowDialog() == DialogResult.OK)
            {
                string fileName = sfd.FileName;
                if (fileName != "")
                {
                    //removeColumn();
                    if (hideFirstColumn)
                    {
                        fpread.Sheets[0].Columns[0].Visible = false;
                    }
                    fpread.ActiveSheet.Protect = false;
                    if (fileName.Substring(fileName.IndexOf('.') + 1) == "xlsx")
                    {
                        bResult = fpread.SaveExcel(fileName, FarPoint.Excel.ExcelSaveFlags.UseOOXMLFormat);
                    }
                    if (fileName.Substring(fileName.IndexOf('.') + 1) == "xls")
                    {
                        bResult = fpread.SaveExcel(fileName);
                    }
                    if (fileName.Substring(fileName.IndexOf('.') + 1) == "pdf")
                    {
                        FarPoint.Win.Spread.PrintInfo printset = new FarPoint.Win.Spread.PrintInfo();
                        printset.PrintToPdf        = true;
                        printset.UseSmartPrint     = true;
                        printset.PdfFileName       = fileName;
                        fpread.Sheets[0].PrintInfo = printset;
                        fpread.PrintSheet(0);

                        bResult = printset.PrintToPdf;
                    }
                    if (fileName.Substring(fileName.IndexOf('.') + 1) == "txt")
                    {
                        bResult = fpread.ActiveSheet.SaveTextFile(fileName, FarPoint.Win.Spread.TextFileFlags.None);
                    }
                    fpread.ActiveSheet.Protect = true;
                    if (hideFirstColumn)
                    {
                        fpread.Sheets[0].Columns[0].Visible = true;
                    }
                    //addColumn();
                }
            }
            return(bResult);
        }
예제 #4
0
        /// <summary>
        /// 打印
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="neuObject"></param>
        /// <returns></returns>
        protected override int OnPrint(object sender, object neuObject)
        {
            if (this.nineSpread1_Sheet1.RowCount > 0)
            {
                FarPoint.Win.Spread.PrintInfo pi = new FarPoint.Win.Spread.PrintInfo();

                pi.Header     = "/r /fz\"12\" 第 /p 页 共 /pc 页";
                pi.ShowBorder = false;

                float len = 0f;
                for (int cidx = 0; cidx < this.nineSpread1_Sheet1.Columns.Count; cidx++)
                {
                    len += this.nineSpread1_Sheet1.Columns[cidx].Width;
                }

                System.Drawing.Printing.PaperSize ps = new System.Drawing.Printing.PaperSize();
                ps.Width     = 1575;                                                     //px
                ps.Height    = NineVigor.FrameWork.Function.NConvert.ToInt32(945) + 134; //px
                ps.PaperName = "sss";

                pi.PaperSize = ps;


                pi.Margin.Bottom = 64;
                pi.Margin.Left   = 60;
                pi.Margin.Top    = 0;
                pi.Margin.Right  = 0;

                pi.UseMax = false;
                this.nineSpread1_Sheet1.PrintInfo = pi;

                this.nineSpread1.PrintSheet(this.nineSpread1.ActiveSheetIndex);

                return(1);
            }
            else
            {
                MessageBox.Show("没有要打印的数据");
                return(-1);
            }
        }
예제 #5
0
        /// <summary>
        /// farpoint打印
        /// </summary>
        /// <param name="fp"></param>
        /// <param name="index"></param>
        public static void CommonPrint(FarPoint.Win.Spread.FpSpread fp, int index)
        {
            try
            {
                FarPoint.Win.Spread.PrintInfo   pi = new FarPoint.Win.Spread.PrintInfo();
                FarPoint.Win.Spread.PrintMargin pm = new FarPoint.Win.Spread.PrintMargin();

                pd = printerSet(fp);

                if (DialogResult.OK == pd.ShowDialog())
                {
                    pi.Preview         = true;
                    pi.FirstPageNumber = 0;
                    pm.Top             = pd.PrinterSettings.DefaultPageSettings.Margins.Top;
                    pm.Bottom          = pd.PrinterSettings.DefaultPageSettings.Margins.Bottom;
                    pm.Left            = pd.PrinterSettings.DefaultPageSettings.Margins.Left;
                    pm.Right           = pd.PrinterSettings.DefaultPageSettings.Margins.Right;
                    pi.Margin          = pm;
                    pi.PageStart       = pd.PrinterSettings.FromPage;
                    pi.PageEnd         = pd.PrinterSettings.ToPage;
                    pi.PaperSize       = pd.PrinterSettings.DefaultPageSettings.PaperSize;
                    if (pd.PrinterSettings.DefaultPageSettings.Landscape)
                    {
                        pi.Orientation = FarPoint.Win.Spread.PrintOrientation.Landscape;
                    }
                    else
                    {
                        pi.Orientation = FarPoint.Win.Spread.PrintOrientation.Portrait;
                    }
                    fp.Sheets[0].PrintInfo = pi;
                    fp.PrintSheet(index);
                }
            }
            catch
            {
                MessageBox.Show("打印发生错误,请确认是否有连接好打印机");
            }
        }
예제 #6
0
        public bool Printer(FarPoint.Win.Spread.FpSpread fpSpread, string paperType, int rowCount, string paperName, string check부분인쇄)
        {
            try
            {
                FarPoint.Win.Spread.PrintInfo pi = new FarPoint.Win.Spread.PrintInfo();

                pi.Margin.Header = 10;//머리말 여백
                pi.Margin.Bottom = 10;
                pi.Margin.Top    = 10;
                pi.Margin.Left   = 0;
                pi.Margin.Right  = 0;
                pi.Margin.Footer = 10;//꼬리말 여백


                pi.ColStart = fpSpread.ActiveSheet.Models.Selection.AnchorColumn;
                pi.ColEnd   = fpSpread.ActiveSheet.Models.Selection.LeadColumn;

                pi.RowStart = fpSpread.ActiveSheet.Models.Selection.AnchorRow;
                pi.RowEnd   = fpSpread.ActiveSheet.Models.Selection.LeadRow;
                if (paperType == "가로")
                {
                    pi.Orientation = FarPoint.Win.Spread.PrintOrientation.Landscape;
                }
                if (paperType == "세로")
                {
                    pi.Orientation = FarPoint.Win.Spread.PrintOrientation.Portrait;
                }
                pi.ShowRowHeader    = FarPoint.Win.Spread.PrintHeader.Hide;
                pi.ShowColumnHeader = FarPoint.Win.Spread.PrintHeader.Hide;
                pi.ShowBorder       = false;
                pi.ShowGrid         = false;

                //인쇄 페이지 마다 헤더가 출력되게 반복되는 헤더의 범위를 설정한다.
                pi.RepeatColEnd   = fpSpread.ActiveSheet.ColumnCount;
                pi.RepeatColStart = 0;
                pi.RepeatRowStart = 0;
                pi.RepeatRowEnd   = 4;

                if (check부분인쇄 == "부분")
                {
                    pi.ZoomFactor = 0.7f;
                }
                if (check부분인쇄 == null)
                {
                    pi.ZoomFactor = 0.35f;
                    //가운데 정렬
                }
                pi.Centering = FarPoint.Win.Spread.Centering.Horizontal;

                //PageNo 출력
                pi.Footer    = "/c- /p///pc -";
                pi.PrintType = FarPoint.Win.Spread.PrintType.All;

                if (paperName == "A3")
                {
                    pi.PaperSize  = new System.Drawing.Printing.PaperSize("A3", 1169, 1653);
                    pi.ZoomFactor = 0.45f;
                }

                //한 페이지에 출력이 가능하도록 맞춘다. 축소옵션
                //인쇄옵션 보기
                pi.ShowPrintDialog = true;
                pi.Preview         = true;

                if (check부분인쇄 == "부분")
                {
                    fpSpread1.ActiveSheet.PrintInfo = pi;
                    fpSpread1.PrintSheet(fpSpread1_Sheet1);
                }
                else
                {
                    fpSpread1.ActiveSheet.PrintInfo = pi;
                    fpSpread1.PrintSheet(-1);
                }


                return(true);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
                return(false);
            }
        }