Почему html2canvas захватывает меньший холст байтового массива для таблиц в MS Edge, чем Chrome - PullRequest
0 голосов
/ 31 октября 2018

Из любопытства, при захвате следующей таблицы с использованием html2canvas, почему MS Edge генерирует в ~ 2,5 раза меньшее изображение (с точки зрения длины байтового массива), чем Chrome?

Это связано с различными API, предоставляемыми браузерами, или с вариантами реализации на стороне библиотеки html2canvas.

Любая помощь или руководство будут оценены! Спасибо!

<table>
<tbody>
    <tr data-row="0">
        <td data-col="0" data-row="0" data-corner-header="true">
        </td>
        ...
        <td data-col="7" data-row="0" data-col-header="6">
            <div>G</div>
        </td>
    </tr>
    <tr data-row="1">
        <td data-col="0" data-row="1" data-row-header="0">
            <div>1</div>
        </td>
        <td tabindex="0" data-row="1" data-col="1">1.00</td>
        ...
        <td data-row="1" data-col="7" editable="true"></td>
    </tr>
    ...
    <tr data-row="10">
        <td data-col="0" data-row="10" data-row-header="9">
            <div>10</div>
        </td>
        <td data-row="10" data-col="1" editable="true"></td>
        ...
        <td tabindex="0" data-row="10" data-col="7" title="1.00">1.00</td>
    </tr>
</tbody>

Codepen

https://codepen.io/tianyuan-chu/full/ReeGpj/

Скриншот

enter image description here

1 Ответ

0 голосов
/ 31 октября 2018

Если мы видим документацию HTML2Canvas, то они упоминали, что

Скрипт позволяет делать «скриншоты» веб-страниц или частей это, прямо в браузере пользователей. Скриншот основан на DOM и как таковой может не быть на 100% точным к реальному представлению, так как не делает фактический скриншот, но создает скриншот на основе информация, доступная на странице. Это сильно зависит от браузера

Поскольку каждый браузер работает немного по-разному, байтовый массив может быть разным для каждого браузера.

Вы можете сделать тест и в других браузерах.

Я также пробую это в FireFox и IE.

В IE длина массива была 5118, а в FireFox длина массива - 4230.

Справка:

Html2canvas

html2canvas

...