1. Produkter
  2.   Font
  3.   Node.js
  4.   OpenType.js
 
  

Gratis JavaScript-bibliotek til parsing og skrivning af skrifttyper

Open Source JavaScript-bibliotek, der tillader at parse, læse og skrive TrueType- eller OpenType-skrifttyper. Det understøtter skrifthåndtering, glyph-målinger og tekstlayout i JS‑apps.

Inden for softwarewebudvikling og digital typografi kan håndtering af skrifttypefiler og skabelse af problemfri tekstgengivelsesoplevelser være en udfordrende opgave. Arbejde med OpenType-skrifttyper kan dog også være en udfordring, især når det gælder adgang til deres avancerede typografiske funktioner. Det er her, OpenType.js kommer ind i billedet – et revolutionerende open‑source‑bibliotek, der gør det nemt at arbejde med OpenType-skrifttyper i browseren. En af de vigtigste fordele ved OpenType.js er dets evne til at forenkle processen med at arbejde med OpenType-skrifttyper. I modsætning til andre biblioteker, der kræver omfattende viden om skrifttype‑teknologi, tilbyder OpenType.js et ligetil API, som gør det nemt at komme i gang.

OpenType.js er et JavaScript-bibliotek, der giver en simpel og intuitiv API til at få adgang til de avancerede typografiske funktioner i OpenType-skrifttyper. Med OpenType.js kan softwareudviklere nemt få adgang til funktioner såsom ligaturer, alternative glyphs, variable skrifttyper osv., hvilket gør dem i stand til at skabe komplekse og sofistikerede typografidesign. Ud over at parse og manipulere eksisterende skrifttyper understøtter opentype.js også at oprette nye skrifttypefiler fra bunden. Denne funktion er værdifuld for udviklere, der ønsker at generere brugerdefinerede skrifttyper programmatisk. Da det er et JavaScript-bibliotek, kan opentype.js bruges både på klient- og serversiden, hvilket gør det til et fleksibelt valg for forskellige projekter. Samlet set er det et kraftfuldt og alsidigt bibliotek, der giver en simpel og intuitiv måde at arbejde med OpenType-skrifttyper i browseren.

Previous Next

Kom i gang med Opentype.js

Den anbefalede måde at installere OpenType.js på er ved at bruge NPM. Brug venligst følgende kommando for en problemfri installation.

Installer Opentype.js ved hjælp af npm

 npm install opentype.js

Du kan også installere det manuelt; download de seneste udgivelsesfiler direkte fra GitHub-repositoryet.

Fontanalyse i Node.js‑apps

En af de centrale funktioner i OpenType.js er dens evne til at parse OpenType- og TrueType-skrifttypefiler med blot et par linjer JavaScript-kode. Dette gør det muligt for softwareudviklere at læse og forstå strukturen af en skrifttype, inklusive dens glyphs, kerninginformation og andre væsentlige data. I det følgende eksempel indlæses Roboto Regular-skrifttypen fra en TTF-fil. Biblioteket parser skrifttypen og gør dens data tilgængelige for yderligere manipulation.

Hvordan indlæses og parses en font fra en TTF-fil i Node.js??

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);
    }
});

Få adgang til og manipulér fontens glyph i Node.js

Det open source Node.js-bibliotek OpenType.js giver softwareudviklere mulighed for at få adgang til og manipulere individuelle glyphs i en skrifttype inden for Node.js-applikationer. Glyphs er de visuelle repræsentationer af tegn i en skrifttype. Med denne funktion kan du udtrække glyph-stier, ændre dem eller endda oprette nye glyphs. Her er et kodeeksempel, der indlæser en skrifttype, henter glyphen for tegnet "A," og derefter skalerer glyphen med 1,5 gange sin oprindelige størrelse. Metoden toPathData() konverterer glyphens sti til SVG-sti-data, som kan bruges til rendering eller yderligere manipulation.

Hvordan indlæses en font og modificeres glyph i Node.js‑apps?

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());
    }
});

Arbejde med fonttabeller via Node.js-biblioteket

OpenType.js giver udviklere adgang til de underliggende skrifttabeler, som gemmer detaljeret information om skrifttypens design og målinger. Dette kan være særligt nyttigt til avancerede skrifttype-manipulationer eller analyser. Kodesnutten i det følgende eksempel demonstrerer, hvordan man får adgang til specifikke skrifttabeler, såsom head-tabellen (som indeholder skrifttypeheaderinformation) og hhea-tabellen (som indeholder horisontale header-målinger). Disse tabeller giver væsentlige detaljer, der kan bruges til præcis kontrol over skrifttype-rendering og layout.

Hvordan får du adgang til specifikke skrifttabeler og skrifttypen i dem ved brug af Node.js-biblioteket?

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);
  }
});
 Dansk