MESCIUS SPREAD for Windows Forms 17.0J > 開発者ガイド > 印刷 > 印刷属性のカスタマイズ > 印刷ジョブ設定 |
指定がない場合、シートの印刷にはWindowsで設定された既定のプリンタが使用されます。
印刷ジョブに関する設定では、プリンタ、給紙方法、およびページサイズをカスタマイズできます。PrintInfoオブジェクトのPrinter、PaperSource、およびPaperSizeプロパティを使用して設定します。
シートの印刷には、Windowsに対応した任意のプリンタを使用できます。 |
次のサンプルコードは、コンボボックスで選択された給紙方法、および用紙サイズを設定して、すべてのシートを印刷します。
C# |
コードのコピー
|
---|---|
private void Form1_Load(object sender, System.EventArgs e) { int i; System.Drawing.Printing.PrinterSettings ps = new System.Drawing.Printing.PrinterSettings(); for (i = 0; i <= ps.PaperSources.Count - 1; i++) { comboBox1.Items.Add(ps.PaperSources[i].SourceName); } comboBox1.Text = ps.PaperSources[0].SourceName; } private void button1_Click(object sender, System.EventArgs e { FarPoint.Win.Spread.PrintInfo pi = new FarPoint.Win.Spread.PrintInfo(); System.Drawing.Printing.PrinterSettings ps = new System.Drawing.Printing.PrinterSettings(); pi.PaperSize = new System.Drawing.Printing.PaperSize("Letter", 600, 300); pi.PaperSource = ps.PaperSources[comboBox1.SelectedIndex]; fpSpread1.Sheets[0].PrintInfo = pi; fpSpread1.PrintSheet(-1); } |
Visual Basic |
コードのコピー
|
---|---|
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim ps As New System.Drawing.Printing.PrinterSettings() Dim i As Integer For i = 0 To ps.PaperSources.Count - 1 ComboBox1.Items.Add(ps.PaperSources.Item(i).SourceName) Next ComboBox1.Text = ps.PaperSources.Item(0).SourceName End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim pi As New FarPoint.Win.Spread.PrintInfo() Dim ps As New System.Drawing.Printing.PrinterSettings() pi.PaperSize = New System.Drawing.Printing.PaperSize("Letter", 600, 300) pi.PaperSource = ps.PaperSources(ComboBox1.SelectedIndex) FpSpread1.Sheets(0).PrintInfo = pi FpSpread1.PrintSheet(-1) End Sub |
印刷において「部単位で印刷」とは、最初から最後まで同じ順序で最初の部数を印刷し、同じ順序で次の部数を印刷することを指します。しかし、「ページ単位で印刷」とは、ドキュメントの最初のページの複数部を印刷し、2 ページ目の複数部を印刷することを指します。
SPREAD for Windows Form では、Collated プロパティを true に設定すると、IPageSetup オブジェクトを使用してスプレッドシートを部単位で印刷します。
次の図は、印刷設定の[部単位で印刷]オプションを示します。
部単位で印刷は従業員の研修資料を作成するのに役立ちますが、ページ単位で印刷はドキュメントから各ページの個別パイルを作成するのに役立ちます。
次のサンプルコードは、スプレッドシートのページ単位で印刷する方法を示します。
C# |
コードのコピー
|
---|---|
private void SurroundingSub() { IWorksheet TestActiveSheet = fpSpread1.AsWorkbook().ActiveSheet; for (var i = 1; i <= 49; i++) { for (var j = 3; j <= 9; j++) TestActiveSheet.Cells(i, j).Value = i + j; } GrapeCity.Spreadsheet.Printing.IPageSetup pageSetup = fpSpread1.AsWorkbook().ActiveSheet.PageSetup; pageSetup.Collated = false; pageSetup.NumberOfCopies = 3; fpSpread1.Sheets(0).PrintInfo.Preview = true; fpSpread1.Sheets(0).PrintInfo.EnhancePreview = true; fpSpread1.PrintSheet(0); } |
VB |
コードのコピー
|
---|---|
Private Sub SurroundingSub() Dim TestActiveSheet As IWorksheet = fpSpread1.AsWorkbook().ActiveSheet For i = 1 To 49 For j = 3 To 9 TestActiveSheet.Cells(i, j).Value = i + j Next Next Dim pageSetup As GrapeCity.Spreadsheet.Printing.IPageSetup = fpSpread1.AsWorkbook().ActiveSheet.PageSetup pageSetup.Collated = False pageSetup.NumberOfCopies = 3 fpSpread1.Sheets(0).PrintInfo.Preview = True fpSpread1.Sheets(0).PrintInfo.EnhancePreview = True fpSpread1.PrintSheet(0) End Sub |
NumberOfCopies プロパティは PDF には適用されないため、部単位で印刷・ページ単位で印刷オプションは PDF の印刷には使用できません。 |