Şriftlərin Parsinqi və Yazılması üçün Pulsuz JavaScript Kitabxanası
TrueType və ya OpenType şriftlərini pars etmək, oxumaq və yazmaq imkanı verən Açıq Mənbəli JavaScript Kitabxanası. O, şrift idarəçiliyi, qlyf metrikləri və JS tətbiqlərində mətn düzülüşünü dəstəkləyir.
Proqram təminatı veb inkişafı və rəqəmsal tipografiya sahəsində şrift faylları ilə işləmək və problemsiz mətn renderləmə təcrübələri yaratmaq çətin bir iş ola bilər. Bununla belə, OpenType şriftləri ilə işləmək də çətin ola bilər, xüsusilə onların inkişaf etmiş tipografik xüsusiyyətlərinə çatmaq məsələsində. Burada OpenType.js ortaya çıxır – brauzerdə OpenType şriftləri ilə işləməyi asanlaşdıran inqilabi açıq mənbə kitabxanası. OpenType.js‑in əsas üstünlüklərindən biri, OpenType şriftləri ilə işləmə prosesini sadələşdirmə qabiliyyətidir. Digər kitabxanaların şrift texnologiyası haqqında geniş bilik tələb etməsindən fərqli olaraq, OpenType.js sadə bir API təqdim edir ki, bu da başlamağı asanlaşdırır.
OpenType.js, OpenType şriftlərinin inkişaf etmiş tipografik xüsusiyyətlərinə çıxışı təmin edən sadə və intuitiv API təqdim edən JavaScript kitabxanasıdır. OpenType.js ilə proqram inkişaf etdiriciləri ligaturalar, alternativ qlyfler, dəyişkən şriftlər və s. kimi xüsusiyyətlərə asanlıqla çata bilər, bu da onlara mürəkkəb və incə tipografiya dizaynları yaratmağa imkan verir. Mövcud şriftlərin təhlili və manipulyasiyasına əlavə olaraq, opentype.js sıfırdan yeni şrift faylları yaratmağı da dəstəkləyir. Bu xüsusiyyət proqram vasitəsilə xüsusi şriftlər yaratmaq istəyən inkişaf etdiricilər üçün dəyərlidir. JavaScript kitabxanası olduğu üçün, opentype.js həm müştəri tərəfdə, həm də server tərəfdə istifadə oluna bilər, bu da müxtəlif layihələr üçün elastik seçim edir. Ümumilikdə, bu, brauzerdə OpenType şriftləri ilə işləmək üçün sadə və intuitiv yol təqdim edən güclü və çox yönlü bir kitabxanadır.
Opentype.js ilə Başlanğıc
OpenType.js-i quraşdırmağın tövsiyə olunan yolu NPM istifadə etməkdir. Zəhmət olmasa, problemsiz quraşdırma üçün aşağıdakı əmri istifadə edin.
npm ilə Opentype.js quraşdırın
npm install opentype.jsSiz həmçinin Opentype.js-in son buraxılış fayllarını birbaşa GitHub deposundan yükləyə bilərsiniz.
Node.js Tətbiqlərində Şriftin Parsinqi
OpenType.js-in əsas xüsusiyyətlərindən biri, yalnız bir neçə JavaScript sətiri ilə OpenType və TrueType şrift fayllarını təhlil edə bilməsidir. Bu, proqram təminatı inkişaf etdiricilərinə şriftin strukturu, o cümlədən onun qlyfları, kerning məlumatları və digər vacib məlumatları oxumağa və başa düşməyə imkan verir. Aşağıdakı nümunədə, Roboto Regular şrifti TTF fayldan yüklənir. Kitabxana şrifti təhlil edir və onun məlumatlarını daha sonra manipulyasiya üçün əlçatan edir.
Node.js daxilində TTF fayldan Şrift necə yüklənir və pars edilir??
const opentype = require('opentype.js');
// Load a font from a file
opentype.load('fonts/Roboto-Regular.ttf', function(err, font) {
if (err) {
console.error('Font could not be loaded:', err);
} else {
console.log('Font loaded successfully:', font);
console.log('Number of glyphs:', font.numGlyphs);
}
});
Node.js daxilində Şriftin Qlyfına Giriş və Manipulyasiya
Open source Node.js kitabxanası OpenType.js proqram təminatı inkişaf etdiricilərinə Node.js tətbiqlərində şrift daxilində fərdi qlyflərə daxil olmaq və onları manipulyasiya etmək imkanı verir. Qlyflər şriftin simvollarının vizual təmsilçiliyidir. Bu xüsusiyyət sayəsində qlyf yollarını çıxara, onları dəyişdirə və ya yeni qlyflər yarada bilərsiniz. Burada bir kod parçacığı şrifti yükləyir, "A" simvolu üçün qlyfi əldə edir və sonra qlyfi orijinal ölçüsünün 1,5 qatına qədər ölçüləndirir. toPathData() metodu qlyfin yolunu SVG yol məlumatına çevirir, bu da renderləmək və ya daha da manipulyasiya üçün istifadə oluna bilər.
Node.js Tətbiqlərində Şrift necə yüklənir və Qlyf dəyişdirilir?
const opentype = require('opentype.js');
// Load a font and modify a glyph
opentype.load('fonts/Roboto-Regular.ttf', function(err, font) {
if (err) {
console.error('Font could not be loaded:', err);
} else {
const glyph = font.charToGlyph('A');
console.log('Original Glyph Path:', glyph.path.toPathData());
// Modify the glyph path (e.g., scale it)
glyph.path.scale(1.5);
console.log('Scaled Glyph Path:', glyph.path.toPathData());
}
});
Node.js Kitabxanası vasitəsilə Şrift Cədvəlləri ilə İşləmək
OpenType.js, inkişaf etdiricilərə şriftin əsas cədvəllərinə çıxış imkanı verir, bu cədvəllər şriftin dizaynı və ölçüləri haqqında ətraflı məlumat saxlayır. Bu, xüsusilə inkişaf etmiş şrift manipulyasiyaları və ya təhlilləri üçün faydalı ola bilər. Aşağıdakı nümunədəki kod parçacığı, head cədvəli (şrift başlığı məlumatlarını ehtiva edir) və hhea cədvəli (üfüqi başlıq ölçülərini saxlayır) kimi müəyyən şrift cədvəllərinə necə çıxış ediləcəyini göstərir. Bu cədvəllər, şriftin renderlənməsi və yerləşdirilməsi üzərində dəqiq nəzarət üçün istifadə edilə bilən vacib təfərrüatları təmin edir.
Node.js Kitabxanası istifadə edərək Xüsusi Şrift Cədvəllərinə və Onun İçindəki Şrifta Necə Çatmaq Olar?
const opentype = require('opentype.js');
opentype.load('path/to/font.ttf', function(err, font) {
if (err) {
console.error('Font could not be loaded: ' + err);
} else {
// Access the 'head' table (font header)
const headTable = font.tables.head;
console.log('Units per Em: ' + headTable.unitsPerEm);
// Access the 'hhea' table (horizontal header)
const hheaTable = font.tables.hhea;
console.log('Ascender: ' + hheaTable.ascender);
console.log('Descender: ' + hheaTable.descender);
}
});