Comment imprimer un fichier PDF avec C#

Ive essayer de résoudre ce problème depuis 2 jours. Il y a beaucoup de plus ou moins bonne des solutions sur le net, mais pas un seul correspond à ma tâche à la perfection.

Tâche:

  • Imprimer un fichier PDF par programme
  • Le faire avec une imprimante
  • Ne pas permettre à l'utilisateur de faire plus d'un Button_Click
  • Faire le silence - le plus, le mieux
  • Le faire côté client

Premières Solutions:

Le faire avec un Formes.WebBrowser

Si nous avons Adobe Reader est installé, il y a un plugin pour afficher les fichiers Pdf dans le navigateur. Avec cette solution, nous avons un bel aperçu et avec webbrowserControlName.Print (), nous pouvons déclencher le contrôle d'imprimer son contenu.

Problème - nous avons encore un PrintDialog.


Démarrer l'AcroRd32.exe avec le départ des arguments

La suite de commande CMD laissez-nous utiliser Adobe Reader pour imprimer des PDF.

InsertPathTo..\AcroRd32.exe /t "C:\sample.pdf" "\printerNetwork\printerName"

Problèmes - nous avons besoin de le chemin absolu AcroRd32.exe | il y a un Adobe Reader ouverture de la Fenêtre et il doit être ouvert jusqu'à ce que la tâche d'impression est prêt.


Utiliser windows presets

Process process = new Process();

process.StartInfo.FileName = pathToPdf; 
process.StartInfo.Verb = "printto";
process.StartInfo.Arguments = "\"" + printerName + "\""; 
process.Start();

process.WaitForInputIdle();
process.Kill();

Problème - il y a encore une fenêtre d'Adobe Reader popping up, mais après l'impression, il se ferme de lui-même.

Solution - convaincre le client d'utiliser Foxit Reader (à ne pas utiliser ces deux dernières lignes de code).


Convertir des pages PDF à Dessin.Image

Ive aucune idée de comment le faire avec le code, mais quand je reçois cela fonctionne, le reste est juste un morceau de gâteau. De l'impression.PrintDocument peut répondre à toutes les demandes.


Quelqu'un une idée pour obtenir un peu de Dessin.Les Images de ces fichiers Pdf ou d'une autre approche, comment le faire?

Meilleures Salutations,
Max

  • essayez de Imprimer en PDF (ou autres fichiers) en C#.
  • Pour obtenir le Dessin.Image, vous pouvez prendre un coup d'oeil à cet exemple: ghostscriptnet.codeplex.com/SourceControl/...
  • C'est un couple d'années plus tard... avez-vous été en mesure de comprendre la Drawing.Image route?
  • Malheureusement ce n'est pas - mais peut-il y est une meilleure façon aujourd'hui
  • J'ai été en regardant autour de plusieurs mois et je n'ai pas encore trouver une solution qui n'implique pas d'installer quelque chose sur la machine du client... ce qui n'est pas une option dans mon cas.
  • Est-il une solution à cela. Je suis exactement le même problème. Serions reconnaissants si il n'y a aucune recommandation
  • Toujours rien qui correspond à ce besoin spécifique. Je suis allé avec l'ajout d'un service supplémentaire qui permettrait de gérer l'Impression. Voici un grand nombre de bonnes réponses qui pourraient vous aider.
  • alright. Merci

InformationsquelleAutor Mx. | 2012-07-20