2010-10-06 11 views
2

notre application est une application Web Java qui est utilisée par un certain nombre d'organisations différentes et que nous hébergeons nous-mêmes.Comment créer un PDF qui, une fois imprimé, aura chaque page envoyée à un autre plateau/imprimante?

Je suis actuellement aux prises avec le problème décrit. Dans notre application, nous avons une fonctionnalité d'impression de masse qui crache les fichiers PDF, générés par Apache FOP, que l'utilisateur peut ensuite imprimer. Le problème est que parfois certaines de ces pages doivent être imprimées dans une imprimante (ou un bac d'une imprimante), la deuxième à un autre endroit et la troisième page dans la même imprimante/bac que la première.

Mon intention initiale était d'utiliser Adobe Javascript car il semble que cela permet une sélection d'imprimante par page (malheureusement, aucune sélection de bacs n'est actuellement prise en charge). Je pourrais alors résoudre la sélection de bac en sélectionnant différentes imprimantes qui ont chacune un bac par défaut différent. La dernière partie est le problème:

Donc, ma question est, est-ce que quelqu'un sait comment, ou si c'est possible, de créer des imprimantes réseau avec des plateaux par défaut? Cela signifie également qu'une imprimante réseau doit pouvoir avoir plusieurs adresses IP, chacune avec un paramètre différent. PS: En écrivant ceci, j'ai réalisé qu'il pourrait s'agir plutôt d'un type de question de type sysadmin. Cependant, compte tenu de ce problème de programmation, je pense que c'est la propriété ici.

Répondre

0

Les imprimantes réseau n'ont pas besoin d'avoir des adresses IP différentes; Windows imprimante peut pointer sur la même adresse IP et utiliser le même pilote, ce que vous essayez d'atteindre est possible (alors chaque imprimante peut avoir différents paramètres par défaut - plateaux, etc ...)

Alternativement, vous pouvez vérifier les bibliothèques Java cela vous permet d'imprimer des PDF, par exemple post en parle un (peut ne pas être aussi stable ou complet que vous le souhaitez)

+0

à droite, mais nous ne parlons pas de Windows ici, notre application sur notre serveur doit reconnaître ces imprimantes afin que nous puissions l'intégrer dans nos PDF. De cette façon, nous pouvons avoir chaque page à imprimer automatiquement. – rbottel

+0

@rbottel, ah oui je pensais que la portabilité pourrait aller à l'égout. Eh bien, je dois admettre que je ne sais pas comment vous parlez réellement à l'imprimante de Java (je pensais que votre Java obtenait des profils d'imprimantes Windows). Maintenant, s'il suffit d'avoir une adresse IP différente pour la même imprimante, vérifiez votre imprimante, elle pourrait prendre en charge plusieurs adresses IP ou vous pourriez utiliser DNAT sur votre routeur. Les deux approches * sont * hackish (il me semble qu'il doit y avoir un moyen plus approprié). – Unreason

+0

Oui, comme je l'ai dit dans ma question, nous hébergeons notre application, mais plusieurs organisations de soins de santé de grande taille utilisent cette fonctionnalité. Il doit donc être configurable du point de vue de l'administrateur système. Cependant, obtenir des profils Windows n'est peut-être pas une mauvaise idée, de cette façon, les administrateurs système pourraient s'assurer que les imprimantes nécessaires sont disponibles et nous pourrions les interroger par leur nom ou quelque chose. – rbottel

0

En créant plusieurs fichiers PDF et en les imprimant directement à partir de Java, vous pouvez définir toutes les options souhaitées pour acheminer vos impressions vers le bon bac. Le paramètre "media" vous permet de choisir le magasin.

+0

Merci pour votre réponse, mais nous avons eu de sérieux problèmes avec l'utilisation de Java Applets, donc je ne pense pas que nous pouvons utiliser Java pour imprimer directement. :) – rbottel

+0

Votre commentaire sur l'autre réponse indique que votre application sur le serveur doit détecter les imprimantes pour les intégrer. Cela me fait penser que votre serveur peut communiquer avec les imprimantes. Vous pouvez imprimer directement à partir du serveur dans ce cas? – Guillaume

+0

Ou si les applets sont un problème (je peux le comprendre), pourriez-vous écrire une petite aide à l'impression Java Webstart? Si votre environnement de déploiement est suffisamment contrôlé, il est assez facile à mettre en place. – Guillaume