42 votes

Affichage de PDF dans des formulaires Windows à l'aide de C#

Existe-t-il un moyen d'afficher les fichiers PDF dans un outil Winforms ? J'ai vu des solutions telles que la conversion du fichier pdf en images et leur affichage dans une zone d'image. Cependant, je demande si je peux voir le fichier au format PDF. Existe-t-il un outil d'Adobe ou de Microsoft qui prend en charge cela ?

31voto

Saif al Harthi Points 2173

Je pense que le moyen le plus simple est d'utiliser le composant COM du lecteur Adobe PDF

  1. faites un clic droit sur votre boîte à outils et sélectionnez "Choisir des éléments"
  2. Sélectionnez l'onglet "Composants COM"
  3. Sélectionnez "Adobe PDF Reader" puis cliquez sur ok
  4. Glissez-déposez le contrôle sur votre formulaire et modifiez la propriété "src" des fichiers PDF que vous souhaitez lire

J'espère que ça aide

31voto

Arce Brito Points 2130

vous pouvez utiliser System.Diagnostics.Process.Start ainsi que la fonction WIN32 ShellExecute au moyen d'interop, pour ouvrir des fichiers PDF à l'aide de la visionneuse par défaut :

 System.Diagnostics.Process.Start("SOMEAPP.EXE","Path/SomeFile.Ext");

[System.Runtime.InteropServices.DllImport("shell32. dll")]
private static extern long ShellExecute(Int32 hWnd, string lpOperation, 
                                    string lpFile, string lpParameters, 
                                        string lpDirectory, long nShowCmd);

Une autre approche consiste à placer un contrôle WebBrowser dans votre formulaire, puis à utiliser la méthode Navigate pour ouvrir le fichier PDF :

 ThewebBrowserControl.Navigate(@"c:\the_file.pdf");

4voto

madmik3 Points 4251

Le contrôle du navigateur Web peut fonctionner. http://ryanfarley.com/blog/archive/2004/12/23/1330.aspx

Aussi un tas de projets pdf open source c# ici http://csharp-source.net/open-source/pdf-libraries

1voto

http://www.youtube.com/watch?v=a59LvC6BOuk

Utilisez le lien ci-dessus

 private void btnopen_Click(object sender, EventArgs e){
    OpenFileDialog openFileDialog1 = new OpenFileDialog();
    if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK){
        axAcroPDF1.src = openFileDialog1.FileName;
    }
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X