The PageLayout class provides the PageSettings property to define the page layout for all pages in a PrintDocument. You can also specify a standard paper size using the PaperKind property of C1PageSettings class.
The GIF image below depicts the use of page layout in document.
The code snippet below depicts the use of C1PageSettings class to define layout on the first page, even or odd pages in the PrintDocument.
C# |
コードのコピー
|
---|---|
// 最初のページのページレイアウトを定義します。 PageLayout pl = new PageLayout(); pl.PageSettings = new C1PageSettings(); pl.PageSettings.PaperKind = PaperKind.Legal; doc.PageLayouts.FirstPage = pl; // 偶数ページのページレイアウトを定義します。 pl = new PageLayout(); pl.PageSettings = new C1PageSettings(); pl.PageSettings.PaperKind = PaperKind.Letter; // ページヘッダを作成します。 RenderText ph = new RenderText(); ph.Text = "Even page. [PageNo] / [PageCount]"; ph.Style.Borders.All = LineDef.Default; ph.Style.BackColor = Color.Beige; pl.PageHeader = ph; // ページにもページフッターがありませんため、空のオブジェクトに設定します。 pl.PageFooter = new RenderEmpty(); doc.PageLayouts.EvenPages = pl; // 奇数ページのページレイアウトを定義します。 pl = new PageLayout(); // odd pages will have 2 columns pl.Columns.Add(); pl.Columns.Add(); pl.PageSettings = new C1PageSettings(); pl.PageSettings.PaperKind = PaperKind.Letter; pl.PageSettings.Landscape = true; // ページヘッダを作成します。 ph = new RenderText(); ph.Text = "Odd page. [PageNo] / [PageCount]"; ph.Style.Borders.All = LineDef.DefaultBold; ph.Style.BackColor = Color.LightSeaGreen; pl.PageHeader = ph; // ページフッタを作成します。 RenderText pf = new RenderText(); pf.Text = "Footer of odd page. [PageNo] / [PageCount]"; pf.Style.Borders.All = LineDef.DefaultBold; pf.Style.BackColor = Color.SlateGray; pl.PageFooter = pf; doc.PageLayouts.OddPages = pl; // ドキュメントのコンテンツを生成します。 RenderText ro = new RenderText("This is the first page of the document. It has no page header or footer, and has Legal size."); ro.BreakAfter = BreakEnum.Page; doc.Body.Children.Add(ro); |