Blame view

public/vendor/phenx/php-font-lib/README.md 1.55 KB
86143e36f   Андрей Ларионов   Коммит вторник
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
  [![PHPUnit tests](https://github.com/dompdf/php-font-lib/actions/workflows/phpunit.yml/badge.svg)](https://github.com/dompdf/php-font-lib/actions/workflows/phpunit.yml)
  
  # PHP Font Lib
  
  This library can be used to:
   * Read TrueType, OpenType (with TrueType glyphs), WOFF font files
   * Extract basic info (name, style, etc)
   * Extract advanced info (horizontal metrics, glyph names, glyph shapes, etc)
   * Make an Adobe Font Metrics (AFM) file from a font
  
  This project was initiated by the need to read font files in the [DOMPDF project](https://github.com/dompdf/dompdf).
  
  Usage Example
  -------------
  
  ### Base font information
  
  ```php
  $font = \FontLib\Font::load('fontfile.ttf');
  $font->parse();  // for getFontWeight() to work this call must be done first!
  echo $font->getFontName() .'<br>';
  echo $font->getFontSubfamily() .'<br>';
  echo $font->getFontSubfamilyID() .'<br>';
  echo $font->getFontFullName() .'<br>';
  echo $font->getFontVersion() .'<br>';
  echo $font->getFontWeight() .'<br>';
  echo $font->getFontPostscriptName() .'<br>';
  $font->close();
  ```
  
  ### Font Metrics Generation
  
  ```php
  $font = FontLib\Font::load('fontfile.ttf');
  $font->parse();
  $font->saveAdobeFontMetrics('fontfile.ufm');
  ```
  
  ### Create a font subset
  
  ```php
  $font = FontLib\Font::load('fontfile.ttf');
  $font->parse();
  $font->setSubset("abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ.:,;' (!?)+-*/== 1234567890"); // characters to include
  $font->reduce();
  touch('fontfile.subset.ttf');
  $font->open('fontfile.subset.ttf', FontLib\BinaryStream::modeReadWrite);
  $font->encode(array("OS/2"));
  $font->close();
  ```