Foros del Web » Programando para Internet » PHP »

Acentos y Simbolos en dompdf

Estas en el tema de Acentos y Simbolos en dompdf en el foro de PHP en Foros del Web. Hola, Tengo un problema a la hora de generar el pdf con dompdf Los string que contienen el simbolo de € o algún acento no ...
  #1 (permalink)  
Antiguo 17/05/2016, 10:19
 
Fecha de Ingreso: marzo-2009
Mensajes: 221
Antigüedad: 15 años, 1 mes
Puntos: 0
Acentos y Simbolos en dompdf

Hola,

Tengo un problema a la hora de generar el pdf con dompdf
Los string que contienen el simbolo de € o algún acento no me los pinta.
Tengo toda la codificación a utf8

También pusé en la conexión con la BD
Código:
 mysql_set_charset('utf8');
No se si con una versión más reciente de dompdf se soluciona el problema de los simbolos.

Si me pudieran echar un cable

Gracias
  #2 (permalink)  
Antiguo 17/05/2016, 13:57
Avatar de kip13  
Fecha de Ingreso: agosto-2011
Mensajes: 167
Antigüedad: 12 años, 8 meses
Puntos: 13
Respuesta: Acentos y Simbolos en dompdf

Hola, a ver si te guias con este codigo:

Código PHP:
Ver original
  1. $html = '<html>
  2. <head>
  3.    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  4. </head>
  5. <body>
  6.    <p style="font-family: verdana, sans-serif;">Glāžšķūnis</p>
  7. </body>
  8. </html>';
  9.  
  10. require_once 'vendor/dompdf/dompdf_config.inc.php';
  11. $dompdf = new DOMPDF();
  12. $dompdf->load_html($html, 'UTF-8');
  13. $dompdf->set_paper('A4');
  14. $dompdf->render();
  15. file_put_contents('test.pdf', $dompdf->output());

Pásate por aca:

A guide to enabling Unicode support in DOMPDF

Saludos
  #3 (permalink)  
Antiguo 18/05/2016, 04:44
 
Fecha de Ingreso: marzo-2009
Mensajes: 221
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Acentos y Simbolos en dompdf

Estoy siguiendo la guia que me has pasado

https://github.com/dompdf/dompdf/wik...ion-is-enabled

Pero a la hora de instalar la fuente DejavuSans no me deja y me muestra el siguiente mensaje

Unable to locate the ttf2afm / ttf2pt1 executable (checked /var/www/pdf/lib/ttf2ufm/ttf2ufm-src/ttf2pt1

Alguien sabes a que es debido

Gracias
  #4 (permalink)  
Antiguo 18/05/2016, 13:21
Avatar de kip13  
Fecha de Ingreso: agosto-2011
Mensajes: 167
Antigüedad: 12 años, 8 meses
Puntos: 13
Respuesta: Acentos y Simbolos en dompdf

Que tipo de simbolos deseas mostrar en el pdf?

He probado agregandolo tan solo esto en la estrucutra del html y me muestra acentos y simbolos.

Código HTML:
Ver original
  1. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

Ahora bien, tienes el cotejamiento adecuado en tu tabla ?

Como estas cargando la font DejaVuSans?

Aqui te adjunto unos tips que encontre a ver si te ayudan:

Convertir el html antes de llamarlo al doom:
Código PHP:
Ver original
  1. $html = mb_convert_encoding($html, 'HTML-ENTITIES', 'UTF-8');

Usar la font DejaVuSans en el CSS del html:
Código HTML:
Ver original
  1. *{ font-family: DejaVu Sans, font-size: 12px;}

Y asegurarte de colocar el meta tag;
Código HTML:
Ver original
  1. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Avisanos como vas.

Saludos
  #5 (permalink)  
Antiguo 19/05/2016, 04:11
 
Fecha de Ingreso: marzo-2009
Mensajes: 221
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Acentos y Simbolos en dompdf

Gracias por la información.

La fuente la cargo asi

php load_font.php DejavuSans ./lib/fonts/DejaVuSans.ttf

El problema es que tengo que usar la fuente sans serif y creo que esa fuente no acepta carácteres raros.
Los simbolos que no me muestran son acentos y el simbolo de €

La BBDD esta en formato correcto

He probado
el mb_convert_encoding y tampoco funciona.

Ahora para salir del paso lo he solucionado haciendo un replace de simbolo del € por €
Pero seguiré probando, si encuentro alguna manera que funcione

Gracias kip13

;
  #6 (permalink)  
Antiguo 19/05/2016, 10:27
Avatar de ginitofl  
Fecha de Ingreso: diciembre-2006
Ubicación: Lima Perú
Mensajes: 349
Antigüedad: 17 años, 4 meses
Puntos: 22
Respuesta: Acentos y Simbolos en dompdf

Prueba poniendo así:

Código PHP:
Ver original
  1. $dompdf->load_html(utf8_encode($salida_html));

Saludos.

Última edición por ginitofl; 19/05/2016 a las 10:27 Razón: edit
  #7 (permalink)  
Antiguo 24/05/2016, 05:06
 
Fecha de Ingreso: marzo-2009
Mensajes: 221
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Acentos y Simbolos en dompdf

Gracias

Se me ha solucionado el tema del símbolo del euro €

Ahora estoy mirando de resolver las palabras con acento que me llegan de la base de datos, si en el css le hago un uppercase al campo, me aparece la letra en minuscula

FERNáNDEZ

Etiquetas: acentos, dompdf, mysql, simbolos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:35.