473,403 Members | 2,293 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,403 software developers and data experts.

PDF printing in C# ?


Hello,

Is there a way to easily print a .pdf file to the printer ?
(without an external component)
Thanks.
Nov 16 '05 #1
11 38629
On Wed, 16 Jun 2004 08:39:33 +0200, cybertof wrote:

Hello,

Is there a way to easily print a .pdf file to the printer ?
(without an external component)

I would say No!

The only way I have made it print is using Acrobat Reader or Ghostscript
gsprint and then starting it via System.Diagnostics.Process

If your application is commercial then Acrobat Reader is your only choice,
unless you sell a million copies of it...

The really hard way would of cause be to create a .NET component that
prints PDF... If you do, PLEASE let me know!!!

// Anders
Nov 16 '05 #2
In article <1t****************@morateknikutveckling.se>,
an*************@morateknikutveckling.se says...
The only way I have made it print is using Acrobat Reader or Ghostscript
gsprint and then starting it via System.Diagnostics.Process


Hi !

Yes but I don't think Acrobat Reader exposes a robust COM interface to
do it.

It is possible to do it through a shell call like :

acrord32.exe /h /p d:\test.pdf

But :
- it makes acrobat reader appear
- it does not close at the end
Any idea to do it properly (not appear and closing at the end) ?
Regards,
Cybertof.
Nov 16 '05 #3
"Anders Eriksson" <an*************@morateknikutveckling.se> wrote in message
news:1t****************@morateknikutveckling.se...
The really hard way would of cause be to create a .NET component that
prints PDF... If you do, PLEASE let me know!!!


And me!
Nov 16 '05 #4
Hello

What about

http://itextsharp.sourceforge.net/tutorial/index.html
Olivier

"cybertof" <cy****************@gmx.net> a écrit dans le message de
news:MP************************@msnews.microsoft.c om...

Hello,

Is there a way to easily print a .pdf file to the printer ?
(without an external component)
Thanks.

Nov 16 '05 #5
On Wed, 16 Jun 2004 11:46:17 +0200, Olivier wrote:
http://itextsharp.sourceforge.net/tutorial/index.html

The iTextSharp is a very nice Library, but I haven't seen anyone using it
for printing.

If you know how to do it then _PLEASE_ let us know!!

// Anders
--
I'm using iTextSharp for merging several PDF files into one so that I can
print out many PDF files in a specific order...
Nov 16 '05 #6
You can close acrobot after printing by using System.Windows.Forms.SendKeys
class. You have to send ALT+F4 to close the app.

However, you have to check the printer queue first to ensure that printing
is completed before closing it..

Shak.

"cybertof" <cy****************@gmx.net> wrote in message
news:MP************************@msnews.microsoft.c om...
In article <1t****************@morateknikutveckling.se>,
an*************@morateknikutveckling.se says...
The only way I have made it print is using Acrobat Reader or Ghostscript
gsprint and then starting it via System.Diagnostics.Process


Hi !

Yes but I don't think Acrobat Reader exposes a robust COM interface to
do it.

It is possible to do it through a shell call like :

acrord32.exe /h /p d:\test.pdf

But :
- it makes acrobat reader appear
- it does not close at the end
Any idea to do it properly (not appear and closing at the end) ?
Regards,
Cybertof.

Nov 16 '05 #7
"Anders Eriksson" <an*************@morateknikutveckling.se> wrote in message
news:g7***************@morateknikutveckling.se...
The iTextSharp is a very nice Library, but I haven't seen anyone using it
for printing.
That's because it doesn't work...
If you know how to do it then _PLEASE_ let us know!!


Yep, I'll eat my hat, as we say here in Blighty... :-)
Nov 16 '05 #8
hi,

I´m using this for print the .pdf files:

acrord32.exe /h /p d:\mypdf.pdf

but I´m getting some errors.

In my case, I´m printing several files, 100, 150, 200, ...
I have a list of pdf files, and for each pdf I execute the command:

acrord32.exe /h /p d:\mypdfX.pdf

The error is the following: acrobat print the documents in other order
than I have executed, and don´t print some documents ...

Any ideas?

PD: sorry, my inglish is very poor.

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Nov 16 '05 #9
Hello Javier,

On Tue, 13 Jul 2004 14:32:31 -0700, Javier Ros Moreno wrote:
In my case, I´m printing several files, 100, 150, 200, ...
I have a list of pdf files, and for each pdf I execute the command:

acrord32.exe /h /p d:\mypdfX.pdf

The error is the following: acrobat print the documents in other order
than I have executed, and don´t print some documents ...

Any ideas?
The problem is that Adobe has change the behavior of Acrobat Reader! If you
are using a version later than 4.0 then the /p flag is not performed.

Acrobat will 'never' exit and is reused for the next document you print.
Only one document can be printed at a time. This explains the error that
some documents are not printed. Your command to print is executed when
Acrobat is busy printing and your command is ignored!

The reason for that the documents are printed in a different order on the
printer than you have executed the commands is that you are using a print
queue (which is the normal way of printing in Windows). You are not
printing directly to the printer just to the print queue and then the print
queue will send the documents to the printer, in the order that the print
queue thinks is appropriate.

The only way I have gotten this to work is to use iTextSharp to merge all
the documents into one big document that has all pages in the correct order
and then print this AllInOne document.

I have created a .net Assembly that I can include in any .net project, but
since I did this for the company I work for I need to check with the bosses
if I can share it.

It's really simple to create it yourself. Just go to iTextSharps site and
download the library and the source. then check the sample on merging
pdf-documents...
http://itextsharp.sourceforge.net/

PD: sorry, my inglish is very poor.

su inglés es mucho mejor que mi español ;-)
// Anders
Nov 16 '05 #10

Anders, I had tryed to merge these document into one big document but
iTextSharp don´t support encrypted documents, my pdf documents are
encryted.

Thanks.

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Nov 16 '05 #11
On Thu, 15 Jul 2004 00:43:05 -0700, Javier Ros Moreno wrote:
Anders, I had tryed to merge these document into one big document but
iTextSharp don´t support encrypted documents, my pdf documents are
encryted.

OK, then there are one thing that you might do. This depends on the license
of your application.

I'm sure you have heard of Ghostscript. Well there is a utility program
that comes with Ghostscript called gsprint. Using gsprint instead of
Acrobat Reader will do everything you want.

gsprint will end when the printing is done so you can use
System.Diagnostics.Process to start gsprint and then use
Process::WaitForExit(); to wait until the printing is done.

This way you will get all documents printed in order!

The only problem is that to be able to use gsprint/Ghostscript your
application has to be released under the GPL License or you need to buy a
license from Artifex Software, Inc. and the license cost from 20000$ and up

// Anders
Nov 16 '05 #12

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
by: Jody Gelowitz | last post by:
I am having a problem with printing selected pages. Actually, the problem isn't with printing selected pages as it is more to do with having blank pages print for those pages that have not been...
0
by: Programatix | last post by:
Hi, I am working on the PrintDocument, PrintDialog, PageSetupDialog and PrintPreviewControl components of Visual Studio .NET 2003. My developement machine is running Windows XP. There are...
9
by: Jody Gelowitz | last post by:
I am trying to find the definition of "Safe Printing" and cannot find out exactly what this entitles. The reason is that I am trying to print contents from a single textbox to no avail using the...
4
by: Suzanka | last post by:
Hello, I have an application written in C# on visual studio .NET. It is a web aplication. The application consists of many different forms, that users occassionaly want to print out for filing....
4
by: Arif | last post by:
I C# code prints very slow as compared to a third party barcode printing software. That software prints approximately 10 labels in 2 seconds while my C# code prints 10 labels in 5 to 6 seconds. And...
6
by: Siv | last post by:
Hi, I am getting into printing with VB.NET 2005 and want to implement the usual capability that a user can select a selection of pages. I have a report that is generated by my application that if...
8
by: Neo Geshel | last post by:
Greetings. BACKGROUND: My sites are pure XHTML 1.1 with CSS 2.1 for markup. My pages are delivered as application/xhtml+xml for all non-MS web clients, and as text/xml for all MS web...
0
by: nikhilgargi | last post by:
Requirement: I need to provide printing capability in a C# desktop application that I am developing The documents that need to be printed can be in Rich Text Format (RTF) or HTML. Custom...
18
by: Brett | last post by:
I have an ASP.NET page that displays work orders in a GridView. In that GridView is a checkbox column. When the user clicks a "Print" button, I create a report, using the .NET Framework printing...
0
it0ny
by: it0ny | last post by:
Hi guys, thanks I am fairly new to this forum so I hope I chose the right place to post this question. I try to make my program printout a deposit's report. I created a class to store the...
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.