2017-02-04 3 views
0

Je souhaite utiliser les informations sur les produits d'impression sur l'imprimante d'étiquettes. J'ai Zebra TLP 2844 Cette imprimante prend en charge le langage de programmation EPL2. Lorsque je veux imprimer une imprimante de caractères non-ASCII, il suffit d'imprimer "?" au lieu du caractère correct. Ce que j'ai fait? D'abord, je créé un simple fichier texte avec le contenu ci-dessousProblèmes de caractères Imprimante thermique à étiquettes Zebra

əğüçşıö

et appuyez sur CTRL + P à imprimer. La sortie est ok L'imprimante imprime tous les caractères normalement.

Mais quand j'utilise EPL2 commandes comme ci-dessous

N 
A220,120,0,4,1,1,N,"əğçşıüö" 
P1 

Mon imprimante donne la sortie ci-dessous

?? C ?? uo

Comment puis-je résoudre ce problème? J'utilise java print api pour envoyer la commande à mon imprimante. Et ce mon code

PrinterJob pj = PrinterJob.createPrinterJob(); 
Doc doc = new SimpleDoc(sb.toString().getBytes(), DocFlavor.BYTE_ARRAY.AUTOSENSE, null); 

boolean result = false; 
javax.print.PrintService printService = PrintServiceLookup.lookupPrintServices(null, null)[0]; 
try { 
    printService.createPrintJob().print(doc, null); 
} catch (PrintException e) { 
    e.printStackTrace(); 
} 
PrinterJob pj = PrinterJob.createPrinterJob(); 
Doc doc = new SimpleDoc(sb.toString().getBytes(), DocFlavor.BYTE_ARRAY.AUTOSENSE, null); 

boolean result = false; 
javax.print.PrintService printService = PrintServiceLookup.lookupPrintServices(null, null)[0]; 
try { 
    printService.createPrintJob().print(doc, null); 
} catch (PrintException e) { 
    e.printStackTrace(); 
} 

Répondre

0

Son pas un problème avec le code, il est un problème avec l'imprimante. La plupart des imprimantes n'incluent pas ces caractères dans leur jeu de polices standard. Vous devez soit utiliser l'hexagone du personnage pour les appeler ou, s'ils ne sont pas inclus dans la police définie sur l'imprimante, télécharger une police différente.