2010-09-01 7 views
0

Je suis nouveau dans le développement Web, alors, pourriez-vous m'aider à comprendre si je travaille dans la bonne direction?Envoyer des données au port COM à partir d'une page Web

Il y aura une page Web destinée à nos clients (pas intranet) d'où ils peuvent imprimer des étiquettes. Certains des plus grands clients auront des imprimantes d'étiquettes spéciales où la configuration et l'impression en utilisant le port COM est la seule option acceptable. Fondamentalement, nous avons des connaissances et un contrôle très limités sur leur environnement.

La page Web elle-même sera une page html assez simple ou AJAX plus complexe. Une fois que le client a saisi toutes les données et qu'il a choisi ce type d'impression, nous avons les tâches suivantes: 1) obtenir des données sur les imprimantes installées sur le système du client et, si possible, obtenir les paramètres de l'imprimante et orientation). Idéalement, aimerait être en mesure d'ajuster les paramètres, mais si c'est une douleur peut simplement mettre en exigences que votre imprimante doit être installé sur COM1 et configuré correctement. 2) envoyer des commandes et lire les réponses et envoyer le code PCL au port COM sélectionné

Si je comprends bien, je dois installer quelque chose sur la machine du client pour pouvoir communiquer avec le port de communication et obtenir les paramètres. Juste HTML + Javascript ne sont pas capables de le faire. Droite?

J'ai trouvé la bibliothèque RXTX qui semble communiquer au port de communication sur la plupart des plates-formes. Peut-il être appelé à partir de JavaScript ou je dois encore faire un plugin Java? Existe-t-il des technologies autres que Java plugin qui pourraient résoudre la tâche?

La page Web sera utilisée dans différentes plates-formes d'environnement et navigateurs Web. Nous aimerions minimiser le nombre de solutions personnalisées. Est-ce que Java nous permettra de faire le même plugin pour tous les environnements avec une personnalisation minimale?

Si nous demandons à l'utilisateur d'installer un plugin, l'utilisateur sera-t-il invité avec nos informations d'identification pour confirmer l'installation? Notre site Web nécessitera-t-il des paramètres de confiance plus élevés?

Merci pour votre aide!

Répondre

1

Eh bien, j'ai dû le faire dans le passé. Voici ce que j'ai fait et les circonstances

1) Je savais que nos clients étaient dans un environnement Windows alors j'ai écrit le logiciel win32 pour gérer l'impression. 2) J'ai créé un format de fichier à lire par le logiciel win32 qui m'a permis de spécifier les paramètres d'impression et les données d'étiquette. XML fonctionne bien pour des choses comme ça.

3) Mon application Web a créé un fichier au format utilisé par le logiciel win32 et l'a renvoyé à l'utilisateur lorsqu'il a cliqué sur le bouton «Imprimer les étiquettes». L'extension du fichier retourné a été enregistrée par le programme d'installation du logiciel win32. Cela signifie que lorsque leur navigateur a recherché un gestionnaire d'application par défaut pour ce fichier, il a trouvé mon logiciel win32.

La ligne inférieure est que le navigateur transmet les communications de l'imprimante à une application native au lieu de parler directement à l'imprimante.

De toute évidence, vous devez être en mesure de dicter à votre utilisateur final l'utilisation d'une machine Windows (ou mac ou tout ce que vous pouvez écrire du code natif). Associer une extension de fichier avec mon programme et renvoyer ce fichier à l'utilisateur était la clé pour que le processus fonctionne pour moi.Si votre code natif envoie pcl directement à l'imprimante ou se traduit par une API d'impression (comme l'API win32 comme le mien) est une autre considération.

Une autre approche que vous pourriez envisager est d'envoyer un code PDF au lieu d'envoyer des codes PCL. Formatez le document selon la taille et l'orientation de l'imprimante d'étiquettes. L'utilisateur devra encore appuyer sur le bouton d'impression, mais cela pourrait fonctionner. Je l'ai fait pour imprimer sur des imprimantes de codes à barres et cela fonctionne très bien. Parfois, obtenir une marge et une orientation correctes est un peu difficile, mais cela peut être compris.

+0

Merci, Don! Ouais, la création de PDF était mon premier choix car c'est si facile! Cependant, pour ces imprimantes, l'impression à partir du PDF est 3 à 4 fois plus lente que celle du PCL et il est possible que les codes à barres imprimés à partir d'une image (comme en PDF) ne puissent pas numériser (PCL demandera à l'imprimante de créer le code à barres au lieu de transmettre l'image). L'une des deux raisons fait que PDF est une option inacceptable pour nous. Avez-vous utilisé des applets ou une approche similaire pour des raisons particulières? – Yana

+0

@Yana: PDF n'est pas seulement des images, c'est des instructions de formatage réelles (comme PostScript) sur le périphérique de rendu (affichage, imprimante, etc.). Je serais surpris s'il y avait des problèmes de lecture de codes à barres imprimés au format PDF. (Mais le problème de vitesse que vous avez trouvé pourrait encore être un problème pour vous.) –

+0

@yana Je n'ai trouvé aucun problème avec les pdf et les codes à barres. mais, je fais des codes à barres assez simples (pas 2d ou 3d). c'est juste des lignes et des espaces. Je n'ai pas fait d'applets parce que je ne les ai jamais fait et que je n'ai pas d'expérience avec eux. la solution que j'ai trouvée a fonctionné très bien. –

Questions connexes