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("没有要打印的数据"); } }
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 // }
/// <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); }
/// <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); } }
/// <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("打印发生错误,请确认是否有连接好打印机"); } }
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); } }