Использование шрифтов .otf в веб-браузерах

, с другой стороны, я могу себе представить, что внутренне СУБД будет вычислять хэш-ключи для уменьшения штрафа.

БД необходимо поддерживать B-Tree (или аналогичное структуры) с ключом, чтобы упорядочить их.

Если ключ хэширован и сохранен в B-Tree, это будет прекрасно проверять уникальность ключа - ключ все равно может быть эффективно просмотрен. Но вы не сможете эффективно искать диапазон данных (например, с помощью LIKE), поскольку B-Tree больше не упорядочивается в соответствии со значением String.

Итак, я думаю, что большинство БД действительно хранят String в B-Tree, которое может (1) занимать больше места, чем числовые значения, и (2) требовать перебалансировки B-Tree, если ключи вставлен в произвольном порядке (нет понятия увеличения значения, как с числовым pk).

Штраф на практике может варьироваться от незначительного до огромного. Все зависит от использования, количества строк, среднего размера строкового ключа, запросов, которые соединяют таблицу и т. Д.

372
задан Rod 21 March 2013 в 17:22
поделиться

2 ответа

Из Google Font Directory примеров:

@font-face {
  font-family: 'Tangerine';
  font-style: normal;
  font-weight: normal;
  src: local('Tangerine'), url('http://example.com/tangerine.ttf') format('truetype');
}
body {
  font-family: 'Tangerine', serif;
  font-size: 48px;
}

Это работает в кросс-браузерном режиме с .ttf, я думаю, что он может работать с .otf. ( Википедия говорит, что .otf в основном обратно совместим с .ttf) Если нет, вы можете конвертировать .otf в .ttf

. Вот несколько хороших сайтов:

41
ответ дан kzh 21 March 2013 в 17:22
поделиться

Вы можете реализовать свой OTF шрифт, используя @ font-face, например:

@font-face {
    font-family: GraublauWeb;
    src: url("path/GraublauWeb.otf") format("opentype");
}

@font-face {
    font-family: GraublauWeb;
    font-weight: bold;
    src: url("path/GraublauWebBold.otf") format("opentype");
}

Однако, если вы хотите поддерживать широкий спектр современных браузеров , я бы порекомендовал вам: переключитесь на WOFF и TTF типы шрифтов. Тип WOFF реализован каждым основным настольным браузером, а тип TTF является запасным вариантом для старых браузеров Safari, Android и iOS. Если ваш шрифт бесплатный, вы можете конвертировать его, например, с помощью onlinefontconverter .

@font-face {
    font-family: GraublauWeb;
    src: url("path/GraublauWebBold.woff") format("woff"), url("path/GraublauWebBold.ttf")  format("truetype");
}

Если вы хотите поддерживать почти все браузеры, которые все еще существуют (больше не нужно, IMHO), вы должны добавить еще несколько типов шрифтов, например:

@font-face {
    font-family: GraublauWeb;
    src: url("webfont.eot"); /* IE9 Compat Modes */
    src: url("webfont.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
         url("webfont.woff") format("woff"), /* Modern Browsers */
         url("webfont.ttf")  format("truetype"), /* Safari, Android, iOS */
         url("webfont.svg#svgFontName") format("svg"); /* Legacy iOS */
}

Вы можете узнать больше о том, почему все эти типы реализованы и их хаки здесь . Чтобы получить подробное представление о том, какие типы файлов поддерживаются какими браузерами, см .:

@ Поддержка браузера font-face

Поддержка браузера EOT

Поддержка браузера WOFF

Поддержка браузера TTF

Поддержка браузера SVG-шрифтов

надеюсь, это поможет

652
ответ дан choise 21 March 2013 в 17:22
поделиться