Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using Seagull.BarTender.Print;
- using System;
- using System.Threading.Tasks;
- namespace ssapj.Sample
- {
- public static class PrintPreviewSample
- {
- public static async Task ShowPrintPreviewAsync(string btwFilePath)
- {
- using (var bartenderEngine = new Engine(true))
- {
- //ダイアログの表示を有効にしないとプレビュー表示できない
- bartenderEngine.Window.VisibleWindows = VisibleWindows.InteractiveDialogs;
- var bartenderDocument = bartenderEngine.Documents.Open(btwFilePath);
- bartenderDocument.PrintSetup.IdenticalCopiesOfLabel = 100;
- var printPreviewSettings = bartenderDocument.PrintPreview;
- //ツールバーを出すか出さないか
- //falseだと出さない
- printPreviewSettings.ToolbarVisible = true;
- //ツールバー上のアイコンサイズ
- printPreviewSettings.ToolbarIconSize = BtToolbarIconSize.Small;
- //ツールバーの上下位置
- printPreviewSettings.ToolbarPosition = BtToolbarPosition.Bottom;
- //ツールバーの左寄せ右寄せセンタリング
- printPreviewSettings.ToolbarHorizontalAlignment = BtHorizontalAlignment.Right;
- //ラベル表示の縮尺
- printPreviewSettings.ZoomPercent = 50;
- //プレビュー上で印刷ボタンを押したときに印刷ダイアログを出すか(falseはダイアログを飛ばしてすぐ印刷)
- printPreviewSettings.ShowPrintDialogOnPrint = false;
- //ステータスバーを表示するかどうか
- printPreviewSettings.StatusBarVisible = false;
- //画面内に表示するページ数をコントロール
- //横並び
- printPreviewSettings.PageLayoutColumns = 2;
- //縦並び
- printPreviewSettings.PageLayoutRows = 3;
- //2*3で1画面に6ページ
- //Showメソッドの場合は非同期
- printPreviewSettings.Show();
- //なのでこのループはプレビューを出したままでも走る
- for (var i = 0; i < 10; i++)
- {
- Console.WriteLine(i);
- await Task.Delay(100);
- }
- await Task.Delay(10000);
- //一時的に消したり
- printPreviewSettings.Visible = false;
- await Task.Delay(10000);
- //選択ページを最後にして
- printPreviewSettings.LastPage();
- //表示を戻したり
- printPreviewSettings.Visible = true;
- await Task.Delay(15000);
- //Closeはプレビューを完全に閉じる
- printPreviewSettings.Close();
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement