2011-02-13 8 views
21

Я после библиотеки, которая может принять уже созданный файл PDF и отправить его непосредственно на принтер. Я не хочу, чтобы пользователю нужен Adobe Reader или что-то еще, приложение создаст PDF-файл, и я хочу его распечатать.Библиотека .NET для печати PDF-файлов

+1

Рубена, а не дубликат. Я не хочу создавать PDF-документ, я хочу распечатать его на принтере. – Craig

+0

Извините, лучше альтернатива VTC: http://stackoverflow.com/questions/273675/print-existing-pdf-or-other-files-in-c @OP Я предлагаю пожертвовать на этот счет –

+0

Его справедливая коп, но это дубликат второго вопроса, который я написал! –

ответ

5

К сожалению, мой первый ответ (так как удален - FGITW ответ говоря просто использовать iTextSharp) предположил, что это был PDF FAQ # 1, когда на самом деле это был PDF FAQ # ~ 5, моя вина ...

Там нет с помощью встроенной обработки PDF-файлов, поэтому вне использования приложения, такого как FoxIt или Acrobat, который вы не должны слишком быстро скинуть, люди, которые используют PDF, будут иметь один или другой вариант и будут выбирать, какой из них они предпочитают, re не все равны, esp, если вы переходите на более продвинутые функции и связанные с ними схемы лицензирования и монетизации.

Не знаю каких-либо конкретных библиотек, которые отвечают этому требованию, хотя другой вопрос, который я связал с выше, должен иметь хороший ответ. ... исследования; время проходит ... An answer на other question говорит, что PDFSharp должен соответствовать, the sample выглядит просто.

О отражении, основанном на взгляде на FAQ Wiki Pdfsharp, iTextSharp имеет аналогичный stuff for generating TIFFs/images как PDFSharp.

Альтернативой, которая может быть или не быть в сфере видимости, является создание и/или преобразование, например, в файл XPS, который имеет встроенную поддержку печати (довольно уверен .NET 3.5 и, возможно, раньше он был стандартным компонент в профиле клиента).

Один пункт, который не должен быть пропущен в этом все, заключается в том, что Lowagie book (iText In Action) является отличным, и если вы собираетесь делать что-либо в чтении, письме или предоставлении PDF-форм, вы должны иметь его на своей полке. Аналогично, если вы идете по пути библиотеки FLOSS, iText следует серьезно рассмотреть.

+3

На самом деле, вы поднимаете хороший момент, конвертируя в другой формат, даже png, может быть проще печатать. – Craig

4

Мне не известны никакие бесплатные библиотеки с открытым исходным кодом, доступные для этого, но после оценки нескольких я пошел с cete DynamicPDF Print Manager.NET. Это было, безусловно, наиболее эффективным с точки зрения системных ресурсов, а именно ОЗУ. Другие продукты, которые я пробовал, были от Tall Components, Gnostice и BCL EasyPDF SDK. Все они использовали большие объемы ОЗУ по сравнению с продуктом цете. У Print Manger есть хорошая документация, которая проста в использовании.

Вы также можете позвонить в gsprint из .NET, часть gsview, которая представляет собой графический интерфейс FOSS для GhostScript. Я не пошел по этому маршруту, но также заметил, что он использует больше системных ресурсов, чем Dynamic PDF. Если вы, вероятно, можете упаковать его с вашим программным обеспечением, чтобы пользователь стал более прозрачным. Я знаю, что это не соответствует вашим критериям, но это, по-видимому, единственное возможное бесплатное решение.

Если вы столкнулись с PDFSharp, обратите внимание, что для печати используется Adobe Reader.

Apache's PDFBox имеет служебную программу PrintPDF командной строки, которую вы также можете вызвать из .NET. Я столкнулся с этим после того, как приобрел диспетчер печати, поэтому я еще не пробовал.

Обновление: Вы можете использовать Sumatra PDF для бесшумной печати с command line. Я подозреваю, что он растрирует PDF перед отправкой на принтер, но для небольших файлов, которые должны работать.

+0

Спасибо, я посмотрю, хотя цена очень $$$ – Craig

+0

Правда, плохо, что нет ничего свободного. Я использую его в корпоративном мире, поэтому на самом деле он был намного дешевле, чем серверные продукты Adobe стоимостью 30 000 долларов. – jimueller

+1

@ jrm82: У вас есть exp продукта, но вы уверены, что он все еще использует AR для печати? [образец] (http://pdfsharp.net/wiki/DocumentViewer-sample.ashx?HL=printing#Print_a_Document_2) не обонет? Ах, вы правы - http://stackoverflow.com/questions/883456/printing-pdfs-with-pdfsharp –

0

Вы можете попробовать PDFView4NET. Он поддерживает печать PDF-файлов и преобразование страниц PDF в изображения.

Отказ от ответственности: Я работаю в компании, которая разрабатывает PDFView4NET.

0

Существует несколько коммерческих библиотек. Я, например, рекомендовал бы http://pdfprinting.net.

P.S. Я работаю в компании, предлагающей это решение.

1

Я надеюсь, что это поможет кому-то. После поиска в Интернете я нашел эту отличную библиотеку с открытым исходным кодом (C#), и она отлично подходит для меня.

https://github.com/tonyedgecombe/RawPrint

using RawPrint; 

    Printer.PrintFile("Printer Name", @"C:\Path\To\Print\File.prn"); 

удачи,

0

Free PDFiumViewer приходит через NuGet и имеет возможности печати, см пример кода здесь.

Реальный простой в использовании - мне потребовалось много времени, чтобы найти хотя - так я его для людей, которые ищут в «неправильном» вопрос:

https://stackoverflow.com/a/41751184/586754

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