PhantomJS на CentOS 7 рендерит символы вместо букв - PullRequest
0 голосов
/ 28 сентября 2018

Я тестирую функцию, которую я разработал с PhantomJS для генерации изображения из строки html и в macOS High Sierra, сгенерированное изображение выглядит так:

#

enter image description here

#

Но на моем производственном сервере с CentOS 7 сгенерированное изображение выглядит так:

#

enter image description here

#

Я использую ту же версию PhantomJS 2.1.1,

Этот код я использую:

    var system = require('system');
    var page = require('webpage').create();

    var documentTop = '<html lang="es"><meta charset="UTF-8">';
    var style = '<style>table{width:100%;}</style></head><body>';
    var documentBottom = '</body></html>';

    var c = documentTop + style + system.args[1] + documentBottom;

    // system.args[1] is the html that is being passed as argument

    page.viewportSize = { width: 500, height: 100 };
    page.content = c;

    page.evaluate(function () {
    document.body.bgColor = 'white';
    });

    page.render('demo.jpg');

    phantom.exit();

Я тестировал с или без meta charset, но пока не повезло.

Редактировать

Это пример строки HTML, котораяотправляется фантому

<div id="order-details"><h2>Orden de compra</h2><span id="client-name">Nombre del cliente: <strong>Demo 8</strong></span><div id="summary"><p>Resumen</p><div id="summary-cols"> <div class="summary-col"><span class="summary-text">Cantidad</span><span class="summary-value">3</span></div><div class="summary-col"><span class="summary-text">P.V.</span><span class="summary-value">48.55</span></div><div class="summary-col"><span class="summary-text">Total</span><span class="summary-value">$ 1022.00</span></div></div></div><table><thead><th>Cant.</th><th>Descripción</th><th>Importe</th></thead><tbody><tr class="odd"><td>1</td><td>Concentrado de Hierbas Limón 50 g</td><td>317.00</td></tr><tr class=""><td>1</td><td>Polvo para Preparar Bebidas Sabor Ponche de Frutas (bote)</td><td>438.00</td></tr><tr class="odd"><td>1</td><td>Polvo para Preparar Bebidas Sabor Ponche de Frutas (sobres)</td><td>267.00</td></tr></tbody></table></div>

То же самое, но в формате

<div id="order-details">
<h2>Orden de compra</h2><span id="client-name">Nombre del cliente: <strong>Demo 8</strong></span>
<div id="summary">
    <p>Resumen</p>
    <div id="summary-cols">
        <div class="summary-col"><span class="summary-text">Cantidad</span><span class="summary-value">3</span></div>
        <div class="summary-col"><span class="summary-text">P.V.</span><span class="summary-value">48.55</span></div>
        <div class="summary-col"><span class="summary-text">Total</span><span class="summary-value">$ 1022.00</span></div>
    </div>
</div>
<table>
    <thead>
        <th>Cant.</th>
        <th>Descripción</th>
        <th>Importe</th>
    </thead>
    <tbody>
        <tr class="odd">
            <td>1</td>
            <td>Concentrado de Hierbas Limón 50 g</td>
            <td>317.00</td>
        </tr>
        <tr class="">
            <td>1</td>
            <td>Polvo para Preparar Bebidas Sabor Ponche de Frutas (bote)</td>
            <td>438.00</td>
        </tr>
        <tr class="odd">
            <td>1</td>
            <td>Polvo para Preparar Bebidas Sabor Ponche de Frutas (sobres)</td>
            <td>267.00</td>
        </tr>
    </tbody>
</table>

1 Ответ

0 голосов
/ 28 сентября 2018

Мне удалось решить проблему, и это было связано со шрифтами, установленными на сервере, потому что в моем CentOS 7 было только несколько шрифтов, но не обычные шрифты или шрифты от Microsoft, поэтому я использовал эту ссылку

https://unix.stackexchange.com/a/327138/73078

Теперь у меня проблема только с акцентами, но, по крайней мере, основная проблема ушла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...