Al fin después de mucho batallar ya dimos con la respuesta de este conflicto que agunos lectores de nuestro sitio han tenido. Si tienes algún detalle que compartir puedes compartir tu información.
Solución:
En la respuesta aceptada, el enlace está roto y contenía una versión anterior de DOMPDF.
Para trabajar con símbolos Unicode en DOMPDF 0.6 tienes dos alternativas: usar fuentes existentes o crear tu propia fuente.
-
Usar fuente existente (aplicada para DOMPDF 0.6):
- Descargar archivo y extraer.
- Copie los archivos extraídos en su carpeta de fuentes dompdf
/dompdf/lib/fonts/
. - Editar
dompdf_font_family_cache.dist.php
con fragmento 1. - En uso de CSS
font-family: times;
.
Fragmento 1:
/* ... */
'times' => array (
'normal' => DOMPDF_FONT_DIR . 'times',
'bold' => DOMPDF_FONT_DIR . 'timesbd',
'italic' => DOMPDF_FONT_DIR . 'timesi',
'bold_italic' => DOMPDF_FONT_DIR . 'timesbi'
),
'times-roman' => array (
'normal' => DOMPDF_FONT_DIR . 'times',
'bold' => DOMPDF_FONT_DIR . 'timesbd',
'italic' => DOMPDF_FONT_DIR . 'timesi',
'bold_italic' => DOMPDF_FONT_DIR . 'timesbi'
),
/* ... */
-
Si desea utilizar su propia fuente TTF (por ejemplo,
Arial.ttf
):- Correr:
ttf2afm -o Arial.afm Arial.ttf
. (Lo hice en Ubuntu). - Correr:
ttf2ufm -a -F Arial.ttf
. (Lo hice en Windows usando exe de UFPDF, pero supongo que puedes usar/dompdf/lib/ttf2ufm/bin/ttf2ufm.exe
.) - Dupdo
Arial.*
archivos en/dompdf/lib/fonts/
. - añadir
dompdf_font_family_cache.dist.php
fragmento 2. - En uso de CSS
font-family: arial;
.
- Correr:
Fragmento 2:
/* ... */
'arial' => array (
'normal' => DOMPDF_FONT_DIR . 'Arial',
'bold' => DOMPDF_FONT_DIR . 'Arial',
'italic' => DOMPDF_FONT_DIR . 'Arial',
'bold_italic' => DOMPDF_FONT_DIR . 'Arial'
)
/* ... */
si usa la fuente DejaVu, puede ver caracteres cirílicos
Las fuentes DejaVu TrueType se han preinstalado para dar a dompdf una cobertura decente de caracteres Unicode de forma predeterminada. Para usar las fuentes DejaVu, haga referencia a la fuente en su hoja de estilo, por ejemplo, body font-family: DejaVu Sans; (para Deja Vu Sans).
DOMPDF incluye la fuente DejaVu por defecto
$html = "".
"А вот и кириллица".
"";
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
echo file_put_contents('cyrillic.pdf', $dompdf->output());
También puede configurar el cambio definitivamente para fuente por defecto en dompdf_config.inc.php
def("DOMPDF_DEFAULT_FONT", "DejaVu Sans");
El problema es con las fuentes que usa dompdf por defecto (es decir, no tiene todos los caracteres Unicode, que ahora tienen más de 5000). Por lo general, arialuni.ttf es lo que necesita. Puede descargar la versión rusa localizada en http://chernev.ru/dompdf.rar enlace roto
Enlace actualizado: https://code.google.com/p/ipwn/downloads/detail?name=arialuni.ttf
Puntuaciones y comentarios
Si posees alguna cuestión y disposición de limar nuestro artículo puedes ejecutar una referencia y con placer lo observaremos.