Spanish Como convertir strings desde HPUX a B4X

roerGarcia

Active Member
Licensed User
Longtime User
Buenos dias/tardes/noches segun corresponda su huso horario.

Tengo este escenario:
1. El usuario realiza un tramite - solicitud de compra - desde Windwos hacia un HPUX
2. Como Windows maneja acentos y eñes pues de repente suben al HPUX
3. El "vi" editor en el HPUX si los interpreta como ó ñ etc

207.02|Proceso de separación, conteo, distribución de
207.03|morralla y deposito de Bancos.


4. El prompt no, lo cual no seria problema si no tuviese que bajarlos a una aplicacion B4J

207.02|Proceso de separaciM-sn, conteo, distribuciM-sn de
207.03|morralla y deposito de Bancos.


5. En la aplicacion B4J genero pdfs con pdfBox
6. El problema es que COURIER o ARIAL no reconocen los acentos o eñes y al mandar el texto al PDF manda este error

main._setpdftext (java line: 981)

java.lang.IllegalArgumentException: U+FFFD ('.notdef') is not available in this font Courier encoding: WinAnsiEncoding
at org.apache.pdfbox.pdmodel.font.PDType1Font.encode(PDType1Font.java:426)
at org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:342)

7. Entonces, ando buscando un workaround alrededor de este escenario .... aunque me parece que tuve un "insight" al escribir esto, jajajajajaja, el efecto iluminador de platicar a otros tus problemas.
8.
Voy a probar cargar un font ttf al crear el PDF para ver si otro encode si maneja adecuadamente estos, aunque el usuario ya vio el resultado con COURIER y le gusto.

Entonces, la pregunta es, ¿Como puedo hacer para TRANSFORMAR ese texto original a uno visualizable en B4J en ese PDF mediante PDFBOX?

Por su atencion, gracias anticipadas.
Saludos
Roer

PD. Y si me sugieren un mejor titulo para el post, lo cambio. =)
 

edgar_ortiz

Active Member
Licensed User
Longtime User
El problema es que estás usando diferentes "character sets".


En lo personal convierto todo a UTF8

Saludos,

Edgar
 

roerGarcia

Active Member
Licensed User
Longtime User
Ayer estudie el tema de los encodes, mientras termino de documentarme lo resolví mediante examen riguroso de los caracteres enviados transformando los tres bytes del encodes en su carácter "normal" - esto, para mis efectos, resuelve el problema de momento.

Pero sigo en ello por curiosidad profesional.

Saludos
 
Top