private void btnProperties_Click(object sender, EventArgs e) { string buttonPressed = (sender as Button).Name; string buttonIndex = buttonPressed[buttonPressed.Length - 1].ToString(); int pdfDocumentIndex = -1; if (int.TryParse(buttonIndex, out pdfDocumentIndex)) { pdfDocumentIndex--; if (pdfDocumentIndex > -1 && pdfDocumentIndex < 5) { if (pdfPrintPropertiesForms[pdfDocumentIndex] == null) { pdfPrintPropertiesForms[pdfDocumentIndex] = new PDFPrintPropertiesForm(cmbxPrinterNames.SelectedItem.ToString(), pdfDocumentIndex); if (_printerInfo == null) { _printerInfo = PdfPrintTest.GetPrinterInfo(cmbxPrinterNames.SelectedItem.ToString()); } pdfPrintPropertiesForms[pdfDocumentIndex].ApplyPrinterInfo(_printerInfo); pdfPrintPropertiesForms[pdfDocumentIndex].ShowDialog(); } else { pdfPrintPropertiesForms[pdfDocumentIndex].ShowDialog(); } } } }
private void btnPrint_Click(object sender, EventArgs e) { List <SinglePdfDocumentPrintSettings> documents = new List <SinglePdfDocumentPrintSettings>(); AddPdfDocumentIfNeeded(tbPdf1, 0, documents); AddPdfDocumentIfNeeded(tbPdf2, 1, documents); AddPdfDocumentIfNeeded(tbPdf3, 2, documents); AddPdfDocumentIfNeeded(tbPdf4, 3, documents); AddPdfDocumentIfNeeded(tbPdf5, 4, documents); if (documents.Count > 0) { Cursor = Cursors.WaitCursor; var pdfPrint = PdfPrintTest.GetPdfPrint(_configFile); MultiPdfDocumentPrintSettings multiDocuments = new MultiPdfDocumentPrintSettings(tbJobName.Text); multiDocuments.DocumentList = documents; var status = pdfPrint.Print(multiDocuments); Cursor = Cursors.Arrow; MessageBox.Show("Status = " + status.ToString()); multiDocuments.Dispose(); } else { MessageBox.Show("None of the document selected for print."); } }
private void FillPrinters() { var installedPrinters = PrinterSettings.InstalledPrinters; var printerSettings = new PrinterSettings(); string defaultPrinter = printerSettings.PrinterName; cmbxPrinterNames.SelectedIndexChanged -= cmbxPrinterNames_SelectedIndexChanged; PdfPrintTest.FillComboBox(cmbxPrinterNames, installedPrinters, defaultPrinter); cmbxPrinterNames.SelectedIndexChanged += cmbxPrinterNames_SelectedIndexChanged; }
private void cmbxPrinterNames_SelectedIndexChanged(object sender, EventArgs e) { _printerInfo = PdfPrintTest.GetPrinterInfo(cmbxPrinterNames.SelectedItem.ToString()); foreach (PDFPrintPropertiesForm form in pdfPrintPropertiesForms) { if (form != null) { form.ApplyPrinterInfo(_printerInfo); } } }
private void PDFPrintProperties_Load(object sender, EventArgs e) { PdfPrintTest.SetConfigFromIni(_configFile); _previewPaperHeight = _configFile.PreviewPageHeight; _previewPaperWidth = _configFile.PreviewPageWidth; _watermarkForm = new WatermarkForm(_watermark, _previewPaperWidth, _previewPaperHeight, _previewImagePath); if (PdfPrintTest.Is64) { // on 64 bit PrinterSettingsDialog isn't available so we hide it... btnSetPrinterSettings.Visible = false; cbUsePrinterSettings.Visible = false; } }
public void ApplyPrinterInfo(PrinterInfo printerInfo) { cbDefaultPaperSize.Checked = true; cbDefaultPaperSource.Checked = true; cbDefaultPrinterResolution.Checked = true; cbDefaultPrintInColor.Checked = true; cbDefaultPrintOrientation.Checked = true; cbPrintInColor.Checked = printerInfo.Color; rbLandscape.Checked = printerInfo.Landscape; rbPortrait.Checked = !printerInfo.Landscape; _printerSettings = null; rbLandscape.Checked = printerInfo.Landscape; rbPortrait.Checked = !printerInfo.Landscape; PdfPrintTest.FillComboBox(cmbxPrinterResolutions, printerInfo.PrinterResolutions, printerInfo.PrinterResolution); PdfPrintTest.FillComboBox(cmbxPaperSize, printerInfo.PaperSizes, printerInfo.PaperSize); PdfPrintTest.FillComboBox(cmbxPaperSource, printerInfo.PaperSources, printerInfo.PaperSource); PrinterName = printerInfo.PrinterName; cbUsePrinterSettings.Checked = false; EnableOrDisableFieldsBasedOnDefaultCheck(); }
private void Form1_Load(object sender, EventArgs e) { Text += (PdfPrintTest.Is64 ? " 64 bit" : " 32 bit") + " ver. " + Application.ProductVersion; PdfPrintTest.SetConfigFromIni(_configFile); FillPrinters(); }
public SinglePdfDocumentPrintSettings GetSinglePdfDocumentPrintSettings(string fileName) { SinglePdfDocumentPrintSettings pdfDocumentPrintSettings = null; if (cbIsStream.Checked) { pdfDocumentPrintSettings = new SinglePdfDocumentPrintSettings(File.ReadAllBytes(fileName), tbPassword.Text); } else { pdfDocumentPrintSettings = new SinglePdfDocumentPrintSettings(fileName, tbPassword.Text); } var printerSettings = new PrinterSettings(); var defaultPrinter = printerSettings.PrinterName; PdfPrintTest.SetDefaultPrinter(PrinterName); var newPrinterSettings = new PrinterSettings(); if (cbUsePrinterSettings.Checked) { pdfDocumentPrintSettings.PrinterSettings = _printerSettings; } else { if (!cbDefaultPrintOrientation.Checked) { if (rbLandscape.Checked) { pdfDocumentPrintSettings.IsLandscape = true; newPrinterSettings.DefaultPageSettings.Landscape = true; } if (rbPortrait.Checked) { pdfDocumentPrintSettings.IsLandscape = false; newPrinterSettings.DefaultPageSettings.Landscape = false; } } if (!cbDefaultPaperSize.Checked) { if (cmbxPaperSize.SelectedItem == null) { MessageBox.Show(string.Format("Paper size for PDF Document {0} not set.", _pdfDocumentIndex)); PdfPrintTest.SetDefaultPrinter(defaultPrinter); return(null); } foreach (PaperSize size in newPrinterSettings.PaperSizes) { if (size.ToString().Equals(cmbxPaperSize.SelectedItem.ToString())) { pdfDocumentPrintSettings.PaperSize = size; newPrinterSettings.DefaultPageSettings.PaperSize = size; break; } } } if (!cbDefaultPaperSource.Checked) { if (cmbxPaperSource.SelectedItem == null) { MessageBox.Show(string.Format("Paper source for PDF Document {0} not set.", _pdfDocumentIndex)); PdfPrintTest.SetDefaultPrinter(PrinterName); return(null); } foreach (PaperSource paperSource in newPrinterSettings.PaperSources) { if (paperSource.ToString().Equals(cmbxPaperSource.SelectedItem.ToString())) { pdfDocumentPrintSettings.PaperSource = paperSource; newPrinterSettings.DefaultPageSettings.PaperSource = paperSource; break; } } } if (!cbDefaultPrintInColor.Checked) { pdfDocumentPrintSettings.PrintInColor = cbPrintInColor.Checked; newPrinterSettings.DefaultPageSettings.Color = cbPrintInColor.Checked; } if (!cbDefaultPrinterResolution.Checked) { if (cmbxPrinterResolutions.SelectedItem == null) { MessageBox.Show(string.Format("Printer resolution for PDF Document {0} not set.", _pdfDocumentIndex)); PdfPrintTest.SetDefaultPrinter(defaultPrinter); return(null); } foreach (PrinterResolution printerResolution in newPrinterSettings.PrinterResolutions) { if (printerResolution.ToString().Equals(cmbxPrinterResolutions.SelectedItem.ToString())) { pdfDocumentPrintSettings.PrinterResolution = printerResolution; newPrinterSettings.DefaultPageSettings.PrinterResolution = printerResolution; break; } } } PdfPrintTest.SetDefaultPrinter(defaultPrinter); newPrinterSettings.PrinterName = PrinterName; pdfDocumentPrintSettings.PrinterSettings = newPrinterSettings; } if (cbUseWatermark.Checked) { pdfDocumentPrintSettings.Watermark = _watermark; } pdfDocumentPrintSettings.IsContentCentered = cbCentered.Checked; pdfDocumentPrintSettings.IsAutoRotate = cbAutoRotate.Checked; if (rbScaleActualSize.Checked) { pdfDocumentPrintSettings.Scale = PdfPrint.ScaleTypes.None; } if (rbScaleFit.Checked) { pdfDocumentPrintSettings.Scale = PdfPrint.ScaleTypes.FitToMargins; } if (rbScaleShrink.Checked) { pdfDocumentPrintSettings.Scale = PdfPrint.ScaleTypes.Shrink; } pdfDocumentPrintSettings.Pages = tbPrintPages.Text; if (rbPrintEvenOdd.Checked) { pdfDocumentPrintSettings.RangeType = PdfPrint.RangeTypes.EvenAndOdd; } if (rbPrintEven.Checked) { pdfDocumentPrintSettings.RangeType = PdfPrint.RangeTypes.JustEven; } if (rbPrintOdd.Checked) { pdfDocumentPrintSettings.RangeType = PdfPrint.RangeTypes.JustOdd; } return(pdfDocumentPrintSettings); }