1 votes

Envoi de demande d'impression de l'intérieur d'une application iPhone

Y a-t-il un moyen d'envoyer une demande d'impression à une imprimante en utilisant le wifi ou d'autres moyens ?

Modifier : Il doit y en avoir, car il existe des applications qui vous permettent de le faire. Mais comment le font-elles ? Par exemple,

  • HP iPrint Photo
  • Air Photo
  • EuroSmartzPrint

et peut-être d'autres aussi.

5voto

Cory Kilger Points 9156

Il n'existe pas de moyen natif d'imprimer dans le SDK d'Apple. Air Photo imprime en utilisant une application auxiliaire installée sur un ordinateur, donc elle envoie la demande à l'application de bureau qui envoie effectivement la demande d'impression. L'application HP peut se connecter aux imprimantes HP qu'elle trouve sur le réseau, probablement en utilisant Bonjour. La difficulté avec l'impression directe est d'obtenir les bons pilotes, heureusement pour HP, ils fabriquent aussi les imprimantes. EuroSmartz je crois fait les deux méthodes précédentes, mais ils ne prétendent pas à quelle qualité sera réellement l'impression directe sur l'imprimante, probablement car ils ne peuvent pas inclure les pilotes fournis par le fabricant.

Donc, si vous voulez imprimer, vos options sont :

  1. Se connecter à l'imprimante via Bonjour et essayer d'imprimer sans les pilotes fournis par le fabricant (peut-être que vous pouvez trouver des open source).
  2. Écrire une application de bureau pour aider à l'impression. (Meilleure qualité, mais nécessite un intermédiaire.)

Mise à jour : Avec iOS 4.2, Apple inclut une nouvelle technologie appelée "AirPrint". Apple fait essentiellement à la fois le #1, en imprimant directement sur les imprimantes HP qui prennent en charge ePrint (de ce que je comprends, cela n'utilise pas les pilotes de la manière traditionnelle), et le #2 en imprimant via un Mac avec OS X 10.6.5.

2voto

typeoneerror Points 19087

Oui, vous pouvez certainement trouver des imprimantes à proximité en utilisant Bonjour et la classe NSNetServiceBrowser. Plus précisément, vous voudriez envoyer son message searchForServicesOfType:, avec un type de @"_ipp._tcp" (imprimantes à proximité). Consultez l'article Recherche de services dans la documentation du développeur. Comment fonctionne exactement l'envoi à l'impression dépasse mes compétences. Je suis en train d'apprendre GameKit/Bonjour en ce moment.

1voto

Adam Eberbach Points 9587

À ma connaissance, il est seulement possible si les appareils sont compatibles Bonjour dans le cadre du programme Made For iPod. Ensuite, vous pouvez utiliser EAAccessoryManager et les classes associées pour établir une connexion et envoyer des données à l'appareil. C'est l'une des choses les plus difficiles que vous puissiez tenter sur un iPhone...

Voici une autre question (peut-être) utile sur le sujet.

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