Безплатна библиотека на JavaScript за анализ и рендериране на шрифтове

Отворена библиотека на JavaScript за обработка на шрифтове, която поддържа анализ и рендериране на TrueType и OpenType шрифтове директно в браузъра.

В областта на уеб и софтуерната разработка типографията играе решаваща роля в оформянето на цялостното потребителско изживяване. За да манипулират и рендерират шрифтове ефективно, разработчиците разчитат на мощни библиотеки, които опростяват процеса. Една такава библиотека е Typr.js, мощна JavaScript библиотека, специално създадена за парсиране и рендериране на шрифтове. Тя е проектирана да бъде лека, позволявайки бърза интеграция в уеб проекти. Библиотеката поддържа всички основни уеб браузъри, включително Chrome, Firefox, Safari и Edge. Това осигурява последователно рендериране на шрифтове на различни платформи и устройства.

Typr.js е мощна отворена JavaScript библиотека, която предоставя на софтуерните разработчици леко и гъвкаво решение за работа с различни типове шрифтови файлове. Тя позволява парсиране и рендериране на TrueType и OpenType шрифтове директно в браузъра, премахвайки нуждата от сървърна обработка. Това прави Typr.js незаменим инструмент за уеб дизайнери и разработчици, които искат да оптимизират типографията на своите уебсайтове. Библиотеката напълно поддържа внедряването на функции за достъпност, като мащабиране на текста, корекции на разстоянието между буквите и зареждане на персонализирани шрифтове, като отговаря на потребители с различни нужди и много други.

Typr.js е много лесен за работа и може да се използва в разнообразни уеб приложения, вариращи от просто рендериране на текст до по-сложни проекти, свързани с типография. Той поддържа опростени функции като зареждане и управление на шрифтове на уеб страници, анализиране и извличане на различни метрики от шрифтовете, без усилие манипулиране и стилизиране на текст онлайн, поддръжка за интернационализация и локализация, разширена типография и много други. Неговият богат набор от функции, леката природа и съвместимост с различни браузъри го правят незаменим инструмент за подобряване на типографията в уеб.

Previous Next

Започване с Typr.js

Препоръчителният начин за инсталиране на Typr.js е чрез npm. Моля, използвайте следната команда, за да добавите Maven зависимостта във вашия проект.

Инсталиране на Typr.js чрез npm

 npm install @fredli74/typr --save-dev

Можете също да го инсталирате ръчно; изтеглете последните файлове от релиза директно от GitHub хранилището.

Зареждане и управление на шрифтове чрез JavaScript API

Отвореният код Typr.js предоставя пълна поддръжка за зареждане и управление на шрифтове в JavaScript приложения. Той опростява процеса на зареждане и управление на шрифтове на уеб страници. Поддържа различни формати на шрифтове, включително TrueType (TTF), OpenType (OTF) и Web Open Font Format (WOFF), позволявайки на разработчиците безпроблемно да интегрират персонализирани шрифтове в проектите си. Чрез предоставяне на удобен интерфейс за управление на шрифтове, Typr.js позволява на разработчиците ефективно да контролират зареждането на шрифтове и да приоритизират подмножества от шрифтове за оптимизиране на производителността.

Добавяне на SVG таблица парсер за парсиране на SVG цветни шрифтове

Typr.SVG = {};
Typr.SVG.parse = function(data, offset, length)
{
  var bin = Typr._bin;
  var obj = { entries: []};

  var offset0 = offset;

  var tableVersion = bin.readUshort(data, offset);  offset += 2;
  var svgDocIndexOffset = bin.readUint(data, offset);  offset += 4;
  var reserved = bin.readUint(data, offset); offset += 4;

  offset = svgDocIndexOffset + offset0;

  var numEntries = bin.readUshort(data, offset);  offset += 2;

  for(var i=0; i < numEntries ; i++)
  {
    var startGlyphID = bin.readUshort(data, offset);  offset += 2;
    var endGlyphID = bin.readUshort(data, offset);  offset += 2;
    var svgDocOffset = bin.readUint(data, offset);  offset += 4;
    var svgDocLength = bin.readUint(data, offset); offset += 4;

    var svg = bin.readASCII(data, offset0 + svgDocOffset + svgDocIndexOffset, svgDocLength);

    for(var f=startGlyphID; f<=endGlyphID; f++){
      obj.entries[f] = svg;
    }
  }

  return obj;

}

Прилагане на текстово форматиране & стилизиране чрез JavaScript API

Отвореният код библиотеката Typr.js улеснява софтуерните разработчици да прилагат различни видове текстово форматиране в JavaScript приложения. С Typr.js разработчиците могат без усилие да манипулират и стилизират текста на уеб страници. Той предоставя обширен набор от функции за оформление на текста, като разделяне на редове, подравняване на текста и хипенизация, позволявайки прецизен контрол върху начина, по който текстът се представя. Освен това библиотеката поддържа широк набор от опции за стилизиране на текста, включително разстояние между буквите, разстояние между думите и текстово декориране, позволявайки на разработчиците да създават визуално привлекателен и четим текст.

Прилагане на текстово форматиране и стилизиране в JavaScript приложения

// Assume that Typr.js library is already loaded

// Define the target element where the text will be formatted and styled
const targetElement = document.getElementById('myTextElement');

// Load and parse the font file using Typr.js
Typr.loadFont('path/to/font.ttf', (font) => {
  // Font loading is complete
  
  // Apply the loaded font to the target element
  targetElement.style.fontFamily = font.name.fontFamily;

  // Set text content for the target element
  targetElement.textContent = 'Hello, Typr.js!';

  // Apply text styling
  targetElement.style.fontSize = '24px';
  targetElement.style.letterSpacing = '2px';
  targetElement.style.wordSpacing = '4px';
  targetElement.style.textDecoration = 'underline';

  // Additional text layout adjustments
  targetElement.style.textAlign = 'center';
  targetElement.style.lineHeight = '1.5';
  targetElement.style.textJustify = 'inter-word';
});

Кернинг и лигатури чрез JavaScript API

Typr.js позволява на софтуерните разработчици да се възползват от разширени типографски функции, като кернинг и лигатури, за да подобрят визуалната привлекателност на текста. Кернингът регулира разстоянието между конкретни двойки знаци, за да подобри общата четимост, докато лигатурите заменят последователности от знаци с визуално приятни алтернативи. Чрез използването на тези функции разработчиците могат да постигнат по‑изтънчена и хармонична типография в уеб.

 Български