private void btnPrintWithAdobe_Click(object sender, EventArgs e)
        {
            try
            {
                if (!PdfPrintTest.IsFileNameCorrect(tbFileName.Text))
                {
                    return;
                }
                var printLibrary = PdfPrintTest.GetPdfPrint(_configFile);
                if (!SetSettingsFromGUIAdobe(printLibrary))
                {
                    return;
                }

                var             resultMessage = "";
                PdfPrint.Status result        = PdfPrint.Status.OK;
                if (cbUsePrinterSettingsAdobe.Checked)
                {
                    if (_printerSettingsAdobe == null)
                    {
                        MessageBox.Show("PrinterSettings not set. Press Set Printer Settings button");
                        return;
                    }
                    result = printLibrary.PrintWithAdobe(tbFileName.Text, _printerSettingsAdobe, ref resultMessage);
                }
                else
                {
                    result = printLibrary.PrintWithAdobe(tbFileName.Text, ref resultMessage);
                }

                MessageBox.Show("Result message=" + resultMessage);
                if (result == PdfPrint.Status.OK)
                {
                    MessageBox.Show("Done successfully.");
                }
                else
                {
                    MessageBox.Show("Error. " + PdfPrintTest.DecodeStatusCode(result));
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Exception " + ex.Message);
            }
        }
        private void btnPrint_Click(object sender, EventArgs e)
        {
            if (!PdfPrintTest.IsFileNameCorrect(tbFileName.Text))
            {
                return;
            }

            var printLibrary = PdfPrintTest.GetPdfPrint(_configFile);

            if (!SetSettingsFromGUI(printLibrary))
            {
                return;
            }

            PdfPrint.Status result = PdfPrint.Status.OK;

            if (cbUsePrintDialog.Checked)
            {
                printLibrary.SettingDialog = true;
            }

            if (!cbIsStream.Checked)
            {
                string jobName = string.IsNullOrEmpty(tbDocumentName.Text.Trim()) ? tbFileName.Text : tbDocumentName.Text.Trim();
                if (cbUsePrinterSettings.Checked)
                {
                    if (cbUseWatermark.Checked)
                    {
                        result = printLibrary.Print(tbFileName.Text, _printerSettings, tbPassword.Text, _watermark, jobName);
                    }
                    else
                    {
                        result = printLibrary.Print(tbFileName.Text, _printerSettings, tbPassword.Text, jobName);
                    }
                }
                else
                {
                    if (cbUseWatermark.Checked)
                    {
                        result = printLibrary.Print(tbFileName.Text, tbPassword.Text, _watermark, jobName);
                    }
                    else
                    {
                        result = printLibrary.Print(tbFileName.Text, tbPassword.Text, jobName);
                    }
                }
            }
            else
            {
                if (cbUsePrinterSettings.Checked)
                {
                    if (cbUseWatermark.Checked)
                    {
                        result = printLibrary.Print(PdfPrintTest.GetStream(tbFileName.Text), _printerSettings, tbPassword.Text, tbDocumentName.Text, _watermark);
                    }
                    else
                    {
                        result = printLibrary.Print(PdfPrintTest.GetStream(tbFileName.Text), _printerSettings, tbPassword.Text, tbDocumentName.Text);
                    }
                }
                else
                {
                    if (cbUseWatermark.Checked)
                    {
                        result = printLibrary.Print(PdfPrintTest.GetStream(tbFileName.Text), tbPassword.Text, tbDocumentName.Text, _watermark);
                    }
                    else
                    {
                        result = printLibrary.Print(PdfPrintTest.GetStream(tbFileName.Text), tbPassword.Text, tbDocumentName.Text);
                    }
                }
            }

            if (result == PdfPrint.Status.OK)
            {
                MessageBox.Show("Done successfully.");
            }
            else
            {
                MessageBox.Show("Error. " + PdfPrintTest.DecodeStatusCode(result));
            }
        }