6 votes

Impression sur une imprimante client à partir d'une application Web

Si j'ai une imprimante reliée directement à un ordinateur (un kiosque avec une imprimante), comment puis-je créer la possibilité pour une page web (application web .net) d'imprimer un fichier jpg sur l'imprimante du kiosque sans autre intervention de l'utilisateur que de cliquer sur un bouton de la page ?

7voto

Joel Coehoorn Points 190579

Cette question a déjà été posée plusieurs fois, et le résultat est toujours que vous ne peut pas le faire via les technologies web normales (HTML + Javascript). Le mieux que vous puissiez faire est d'ouvrir la boîte de dialogue d'impression, et c'est par le design . Comme vous contrôlez les kiosques, vous pouvez créer une sorte d'extension de navigateur (objet Flash, contrôle hébergé par .Net, applet Java, etc.) et la mettre à la disposition de votre page, afin qu'elle gère l'impression pour vous.

3voto

Zote Points 3385

Je résous ce problème de deux manières différentes :

  1. Utilisation d'ActiveX
  2. Création d'un protocole comme myprint://PRINT_DATA

2voto

quick_dry Points 573

Si vous créiez une application qui héberge le contrôle du navigateur Web (plutôt que d'utiliser directement un navigateur Web), vous pourriez contrôler le processus d'impression de manière beaucoup plus directe.

(en supposant que l'utilisation de Windows + IE est possible)

Voici quelques exemples d'articles qui pourraient vous aider :

Configurer un contrôle WebBrowser

Utilisation du contrôle du navigateur Web dans vos applications C#

et les documents MSDN en constante évolution pour la classe WebBrowser, qui possède la méthode Print.

Extrait des remarques sur la méthode d'impression : "Vous pouvez utiliser cette méthode pour mettre en œuvre un bouton d'impression similaire à celui d'Internet Explorer. Cette méthode imprime le document en cours sans nécessiter de saisie supplémentaire de la part de l'utilisateur."

2voto

Jason Kealey Points 3860

Les autres commentaires couvrent un scénario dans lequel vous voulez imprimer sur l'ordinateur du navigateur web.

Toutefois, si vous souhaitez imprimer sur une imprimante connectée au serveur web (c'est-à-dire la machine qui exécute l'application web), vous pouvez utiliser l'impression C# normale avec la torsion suivante : http://support.microsoft.com/kb/184291/

Dans mon contexte, mon kiosque exécute à la fois le serveur web et le navigateur web, ce qui a résolu mon problème.

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