устройство для чтения электронных книг не захватывает встроенный шрифт для файла epub - PullRequest
0 голосов
/ 21 мая 2018

Hy там,

У меня проблема с читателем epub, он правильно отображает все содержимое, но не захватывает встроенный шрифт в файле css.

, когда я запускаю тот же файл на других устройствах чтения, отображается встроенный шрифт, но когда я запускаю HTML-файл в одном из браузеров, например Firefox, он показывает тот же результат, что и мое приложение, и не отображает встроенныйшрифт.

Вот пример содержимого html:

<html  dir="rtl"   xml:lang="ar"   lang="ar"  xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops">
    <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=1332,height=794" />
        <title>the-title-3</title>
        <link href="css/idGeneratedStyles.css" rel="stylesheet" type="text/css" />
    </head>
    <body id="the-title-3" lang="en-GB" xml:lang="en-GB" style="width:1332px;height:794px">
        <div id="_idContainer003">
            <img class="_idGenObjectAttribute-1 _idGenObjectAttribute-2" src="image/inner_cover_and_credits_page.jpg" alt="" />
        </div>
        <div id="_idContainer004">
            <div style="width:11599.37px;height:2993.39px;position:absolute;top:0px;left:0px;-webkit-transform-origin: 0% 0%; -webkit-transform: translate(0px,3.93px) rotate(0deg) scale(0.05);transform-origin: 0% 0%; transform: translate(0px,3.93px) rotate(0deg) scale(0.05);">
                <p class="Basic-Paragraph ParaOverride-1"><span id="_idTextSpan000" class="CharOverride-1" style="position:absolute;top:13.65px;left:3168.24px;">الجملة الرئيسية في النص </span></p>
                <p class="Basic-Paragraph ParaOverride-1"><span id="_idTextSpan001" class="CharOverride-1" style="position:absolute;top:733.65px;left:831.71px;">&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;الكاتبة</span></p>
            </div>
        </div>
    </body>
</html>

И это соответствующий файл CSS:

@font-face {
    font-family:"Futura Lt BT";
    font-style:normal;
    font-weight:normal;
    src : url("../font/FuturaBT-Light.TTF") format('truetype');
}
@font-face {
    font-family:"GE SS Text Light";
    font-style:normal;
    font-weight:300;
    src : url("../font/GESSTextLight-Light.otf") format('opentype');
}
@font-face {
    font-family:"GE SS Text Medium";
    font-style:normal;
    font-weight:500;
    src : url("../font/GESSTextMedium-Medium.otf") format('opentype');
}
@font-face {
    font-family:"Simplified Arabic";
    font-style:normal;
    font-weight:bold;
    src : url("../font/SimplifiedArabic-Bold.ttf") format('truetype');
}

body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, p, pre, code, blockquote         {
    margin:0;
    padding:0;
    border-width:0;
    text-rendering:optimizeSpeed;
}
div.Basic-Text-Frame {
    border-style:solid;
}
p.ParaOverride-1 {
    line-height:1;
    white-space:nowrap;
}
span.CharOverride-1 {
    color:#000000;
    font-family:"GE SS Text Medium", sans-serif;
    font-size:420px;
    font-style:normal;
    font-weight:500;
}

пожалуйста, найдите ниже скриншот макета файла: enter image description here

Для загрузки содержимого html в UIWebView:

[readingWebView loadHTMLString:contents baseURL:baseURL];

Единственное различие, которое я могу найти между отправленным файлом на другом устройстве чтения иЯ использую в своем приложении файл формата .epub в другом приложении для чтения, например, в iBooks, в то время как я использую тот же файл с расширением .zip в своем приложении.Но я не уверен, связано ли это.Для отображения содержимого html-файлов в epub я использую UIWebView.

Любая подсказка или руководство приветствуются.

Ответы [ 2 ]

0 голосов
/ 17 ноября 2018

Не все шрифты подходят для веб-отображения.Вы можете проверить свой шрифт здесь.Обратите внимание, что некоторые шрифты имеют активные значки веб, экрана или мобильного, а некоторые нет.Используйте те шрифты, которые предназначены для Интернета и экрана одновременно.https://www.fontsquirrel.com/fonts/list/recent

0 голосов
/ 23 мая 2018

Я могу подтвердить проблему.Я попробовал ваш HTML и CSS (адаптировал его) с 2 различными арабскими шрифтами ( "Арабская магия" и "Mcs Book Title 3" ).Это шрифты TTF, но они тоже не работают.

При применении в консоли Web Inspector ошибок нет, шрифты загружаются хорошо.Также при применении я вижу, что шрифт по умолчанию немного меняется: он немного увеличивает расстояние между буквами, и все.Та же самая ситуация, когда я пытался использовать Firefox и Chrome в macOS.

Я предполагаю, что, скорее всего, те шрифты, которые мы пытаемся использовать, не содержат все глифы для отображения требуемых символов или что шрифт должен быть обработанкаким-то образом, прежде чем браузерные движки (включая UIWebView) смогут успешно обнаружить и отобразить их.

Я знаю, что это не окончательный ответ, но я просто делюсь своими исследованиями здесь.Надеюсь, что это поможет продолжить изучение проблемы.

Проблемы, связанные с данной:

Обновление : также пробовал арабскую кодировку windows-1256 (перекодированный HTML и примененную мета-кодировку), потому что я думал, что utf-8 может быть слишком сложным для этих шрифтов,но получил тот же результат: текст отображается шрифтом по умолчанию.

...