Module: HarfBuzz::Subset

Defined in:
lib/harfbuzz/subset.rb,
lib/harfbuzz/c/subset.rb

Overview

Font subsetting API (requires libharfbuzz-subset)

Defined Under Namespace

Modules: C Classes: Input, Plan

Class Method Summary collapse

Class Method Details

.available?Boolean

Returns true if libharfbuzz-subset is available.

Returns:

  • (Boolean)

    true if libharfbuzz-subset is available



7
8
9
# File 'lib/harfbuzz/subset.rb', line 7

def self.available?
  C.available?
end

.subset(face, input) ⇒ HarfBuzz::Face

Subsets a font face using the given input specification

Parameters:

Returns:

Raises:



17
18
19
20
21
22
23
24
# File 'lib/harfbuzz/subset.rb', line 17

def self.subset(face, input)
  raise UnavailableError, "libharfbuzz-subset is not available" unless available?

  ptr = C.hb_subset_or_fail(face.ptr, input.ptr)
  raise SubsetError, "Subsetting failed" if ptr.null?

  HarfBuzz::Face.wrap_owned(ptr)
end