2013-11-16 2 views
0

Как изменить размер бумаги в диалоговом окне печати C#?Изменить размер бумаги

Я хочу изменить размер бумаги на определенный пользователем размер бумаги, например: 10x12 - это мой номер Paper Size.

Гораздо лучше, если вы поможете мне в том, как печатать в Crystal Report с размером бумаги 10x12.

Пожалуйста, помогите.

ответ

0

попробовать этот код:

CRAXDRT.Report report1 = new CRAXDRT.Report(); 
CRAXDRT.Application app1 = new CRAXDRT.Application(); 
report1 = app1.OpenReport(@"F:\YourReport.rpt", OpenReportMethod.OpenReportByDefault); 
report1.PaperSize = CRPaperSize.crPaper10x14; 
+0

я знаю, чтобы установить размер бумаги заранее определенных размеры бумаги Б.Т. я бледный установите его на определенный пользователем размер бумаги, помогите мне – Prashanth

1

Вот два способа изменения размера papaer. Имейте в виду, что принтер должен иметь возможность указывать указанный размер бумаги!

Мы можем установить параметры печати с помощью класса PrintOptions. Мы должны получить PrintOptions с отчетом, чтобы мы только установили свойства, которые мы меняем.

PrintOptions boPrintOptions = boReportClientDocument.PrintOutputController.GetPrintOptions(); 

     boPrintOptions.DissociatePageSizeAndPrinterPaperSize = false; 
     boPrintOptions.DriverName = "my printer driver name"; 
     boPrintOptions.PageContentHeight = 11; 
     boPrintOptions.PageContentWidth = 8; 

     PageMargins boPageMargins = new PageMargins(); 
     boPageMargins.Bottom = 1; 
     boPageMargins.Top = 1; 
     boPageMargins.Left = 1; 
     boPageMargins.Right = 1; 

     boPrintOptions.PageMargins = boPageMargins; 
     boPrintOptions.PaperOrientation = CrPaperOrientationEnum.crPaperOrientationDefault; 
     boPrintOptions.PaperSize = CrPaperSizeEnum.crPaperSizeDefault; 
     boPrintOptions.PaperSource = CrPaperSourceEnum.crPaperSourceAuto; 
     boPrintOptions.PortName = ""; 
     boPrintOptions.PrinterDuplex = CrPrinterDuplexEnum.crPrinterDuplexDefault; 
     boPrintOptions.PrinterName = @"\\van-s-prt01\VAN-P-OLYMPIA"; 

После того, как мы установили PrintOptions, мы хотим использовать метод изменения для применения этих параметров. Эти значения не проверяются, поэтому мы можем получить исключение, когда мы пытаемся распечатать.

boReportClientDocument.PrintOutputController.ModifyPrintOptions(boPrintOptions); 

Наша другая опция для изменения параметров печати заключается в использовании доступных методов модификации. Они удобнее использовать, поскольку нам не нужно получать предыдущие значения, устанавливать те, которые нам нужны, затем использовать предыдущий метод модификации, мы можем напрямую установить свойства, которые мы хотим изменить. Эти измерения находятся в двух направлениях. 1440 т/дюйм. При использовании методов Modify ниже значения проверяются и генерируют исключение, если это недопустимо, или новое имя принтера недоступно. Эта строка устанавливает PaperSize 11 дюймов высоты, 8 дюймов широкое:

 boReportClientDocument.PrintOutputController.ModifyUserPaperSize((11 * 1440), (8 * 1440)); 
     boReportClientDocument.PrintOutputController.ModifyPageMargins(1, 1, 1, 1); 
     boReportClientDocument.PrintOutputController.ModifyPaperOrientation(CrPaperOrientationEnum.crPaperOrientationLandscape); 
     boReportClientDocument.PrintOutputController.ModifyPrinterName(@"\\van-s-prt01\VAN-P-OLYMPIA"); 

     //Print the report. 
     boReportClientDocument.PrintOutputController.PrintReport(null); 
+0

Sry Its Not WOrking – Prashanth

+0

+1 Это работает со мной :) – LazyCatIT

Смежные вопросы