Печать PDF в C # - PullRequest
       23

Печать PDF в C #

29 голосов
/ 06 апреля 2011

Я новичок в c #. Я искал во всей сети учебники о том, как печатать PDF, но не смог найти.

Тогда я подумал, возможно ли прочитать его, используя itextpdf, как упомянуто здесь

Чтение содержимого PDF с помощью itextsharp dll в VB.NET или C #

затем распечатайте его. Если да, то как?

Ответы [ 15 ]

0 голосов
/ 06 ноября 2018

Если у вас установлен Adobe Reader, вы можете просто установить его в качестве принтера по умолчанию.И ВОЙЛА!Вы можете распечатать в PDF!

printDocument1.PrinterSettings.PrinterName = "Adobe PDF";
printDocument1.Print();

Так же просто, как это!

0 голосов
/ 23 июня 2018

Открывайте, импортируйте, редактируйте, объединяйте, конвертируйте документы Acrobat PDF с помощью нескольких строк кода, используя интуитивно понятный API Ultimate PDF.Используя на 100% управляемый код, написанный на C #, компонент использует многочисленные встроенные функции .NET Framework для повышения производительности.Более того, библиотека совместима с CLS и не использует небезопасных блоков для минимальных требований к разрешениям.Занятия полностью документированы с подробным примером кода, который помогает сократить вашу кривую обучения.Если ваша среда разработки Visual Studio, наслаждайтесь полной интеграцией онлайн-документации.Просто пометьте или выберите ключевое слово и нажмите клавишу F1 в вашей IDE Visual Studio, и онлайн-документация будет отображена мгновенно.Высокопроизводительная и надежная библиотека PDF, которая позволяет легко добавить функциональность PDF в ваши приложения .NET с помощью нескольких строк кода.

PDF Компонент для NET

0 голосов
/ 05 августа 2017

Похоже, что обычные подозреваемые, такие как pdfsharp и migradoc, не могут этого сделать (pdfsharp, только если у вас установлен Acrobat (Reader)).

Я нашел здесь

https://vishalsbsinha.wordpress.com/2014/05/06/how-to-programmatically-c-net-print-a-pdf-file-directly-to-the-printer/

код готов к копированию / вставке. Он использует принтер по умолчанию и, насколько я вижу, он даже не использует никаких библиотек, напрямую отправляя PDF-байты на принтер. Поэтому я предполагаю, что принтер также должен поддерживать его, на одном 10-летнем принтере, который я тестировал, он работал безупречно.

Большинство других подходов - без коммерческих библиотек или приложений - требуют, чтобы вы рисовали себя в контексте устройства печати. Выполнимо, но потребуется время, чтобы разобраться и заставить его работать на всех принтерах.

0 голосов
/ 16 января 2014

Также возможно сделать это с помощью встроенного веб-браузера, однако учтите, что, поскольку это может быть локальный файл, а также потому, что он не является браузером напрямую и DOM отсутствует, значит, состояние готовности отсутствует.

Вот код для подхода, который я разработал для элемента управления веб-браузера win form:

    private void button1_Click(object sender, EventArgs e)
    {
        webBrowser1.Navigate(@"path\to\file");
    }  

    private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)
    {   
        //Progress Changed fires multiple times, however after the Navigated event it is fired only once,
        //and at this point it is ready to print
        webBrowser1.ProgressChanged += (o, args) => 
        {
            webBrowser1.Print();//Note this does not print only brings up the print preview dialog
            //Should be on a separate task to ensure the main thread 
            //can fully initialize the print dialog 
            Task.Factory.StartNew(() => 
            {
                Thread.Sleep(1000);//We need to wait before we can send enter
                //This assumes that the print preview is still in focus
                Action g = () =>
                {
                    SendKeys.SendWait("{ENTER}");
                };
                this.Invoke(g);
            });
        };
    }
0 голосов
/ 06 апреля 2011

Это зависит от того, что вы пытаетесь напечатать.Вам нужно стороннее приложение для принтера pdf или, если вы печатаете свои собственные данные, вы можете использовать средство просмотра отчетов в Visual Studio.Он может выводить отчеты в Excel и PDF-файлы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...