PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → impression thermique : iImprime ou Etat ?
impression thermique : iImprime ou Etat ?
Débuté par Bruno Lallemand, 05 sep. 2004 13:32 - 5 réponses
Posté le 05 septembre 2004 - 13:32
Bonjour,

j'écris un programme qui sort des tickets de caisse sur epson thermique
et à ruban 2 couleurs.
La question est : est-il préférable d'imprimer en dirècte avec iImprime
ou peut-on passer par un état. Si on passe par un état, n'est-ce pas
plus lent à l'impression ? Est-il possible dans un état de faire couper
le papier automatiquement à la fin de l'impression ?

Merci pour vos conseils,

Bruno

--
Bruno Lallemand (Belgique)
Posté le 06 septembre 2004 - 11:17
Les impressions de l'éditeur d'états et les impressions avec iimprime passent
tous les deux pas le pilote d'imprimante : ce n'est donc pas la solution
la plus rapide.
Si tu veux une impression rapide tu dois court-circuiter le pilote windows
en envoyant tes données directement à l'imprimante. Pour cela c'est les fonctions
souvre puis secrit.
Dans une impression via le pilote, tu devras utiliser la fonction iescape
pour faire la coupe de ton papier. Dans les impressions envoyées directement
sur le port, c'est la commande caract() qui te permettra d'envoyer les caractères
de contrôle pour couper le papier.

A+
florian26@ifrance.com

Bruno Lallemand <bruno.lallemand@skynet.be> wrote:

Bonjour,

j'écris un programme qui sort des tickets de caisse sur epson thermique


et à ruban 2 couleurs.
La question est : est-il préférable d'imprimer en dirècte avec iImprime


ou peut-on passer par un état. Si on passe par un état, n'est-ce pas
plus lent à l'impression ? Est-il possible dans un état de faire couper


le papier automatiquement à la fin de l'impression ?

Merci pour vos conseils,

Bruno

--
Bruno Lallemand (Belgique)
Posté le 06 septembre 2004 - 14:19
Après mure réflexion, Florian B. a écrit :




Les impressions de l'éditeur d'états et les impressions avec iimprime passent
tous les deux pas le pilote d'imprimante : ce n'est donc pas la solution
la plus rapide.
Si tu veux une impression rapide tu dois court-circuiter le pilote windows
en envoyant tes données directement à l'imprimante. Pour cela c'est les
fonctions souvre puis secrit.
Dans une impression via le pilote, tu devras utiliser la fonction iescape
pour faire la coupe de ton papier. Dans les impressions envoyées directement
sur le port, c'est la commande caract() qui te permettra d'envoyer les
caractères de contrôle pour couper le papier.

A+
florian26@ifrance.com

Bruno Lallemand <bruno.lallemand@skynet.be> wrote:

Bonjour,

j'écris un programme qui sort des tickets de caisse sur epson thermique

et à ruban 2 couleurs.
La question est : est-il préférable d'imprimer en dirècte avec iImprime

ou peut-on passer par un état. Si on passe par un état, n'est-ce pas
plus lent à l'impression ? Est-il possible dans un état de faire couper

le papier automatiquement à la fin de l'impression ?

Merci pour vos conseils,

Bruno

--
Bruno Lallemand (Belgique)


Merci pour ces précisions. Si je comprends, utiliser iImprime ou
l'état ne change rien aux performances... De toute façon,
l'utilisateur peut attendre 1 seconde de plus pour que le ticket soit
imprimé...

Je vais donc garder l'option d'iImprime ou de l'état...

S'il y a d'autres infos à ce sujet, n'hésitez pas...

Bruno

--
Bruno Lallemand
Belgique
Posté le 06 septembre 2004 - 14:35
Bonjour Bruno,

Est-il possible dans un état de faire couper
le papier automatiquement à la fin de l'impression ?


Je présume que si tu écrit le code requis dans la section du Code:
Fermeture de Nom_De_l'état_ici ça devrait fonctionner.

Par exemple,

//Section Fermeture de Mon_Etat
//Coupe totale du papier de la TMT-85P Epson
iImprime(Caract(29)+Caract(86)+Caract(0)+Caract(48))

Il y aurait des tests à faire, je n'en ai pas eu l'occasion encore.
J'apprécierais si tu me disais si cela fonctionne.

Réal Philippon (Phil)
Posté le 07 septembre 2004 - 02:48
Attention, les Caract(x) vont sans doute faire des carrés à l'impression car
le pilote va les prendre comme des données à imprimer. Pour envoyer des caractères
de contrôle à l'imprimante, vous devez utiliser la fonction <iEscape>.

Respectueuses salutations.
Jean MOREL (jeanmorel@ifrance.com)

"Phil" <pasdespam_info@ultra.ca> wrote:
Bonjour Bruno,

Est-il possible dans un état de faire couper
le papier automatiquement à la fin de l'impression ?

Je présume que si tu écrit le code requis dans la section du Code:
Fermeture de Nom_De_l'état_ici ça devrait fonctionner.

Par exemple,

//Section Fermeture de Mon_Etat
//Coupe totale du papier de la TMT-85P Epson
iImprime(Caract(29)+Caract(86)+Caract(0)+Caract(48))

Il y aurait des tests à faire, je n'en ai pas eu l'occasion encore.
J'apprécierais si tu me disais si cela fonctionne.

Réal Philippon (Phil)

Posté le 07 septembre 2004 - 15:27
> Attention, les Caract(x) vont sans doute faire des carrés à l'impression
car
le pilote va les prendre comme des données à imprimer. Pour envoyer des

caractères
> de contrôle à l'imprimante, vous devez utiliser la fonction <iEscape>.

Ooouups.... en effet Jean, il faut utiliser iEscape() pour les commandes qui
ouvrent le tiroir-caisse, coupent le papier, etc...

Merci du rappel... ;-)

Réal Philippon (Phil)