[subset] Towards subsetting SingleSubstFormat1
Why does subset plan not have a hb_set_t of glyphs?
This commit is contained in:
parent
339d3603b9
commit
dc50493a8d
|
@ -33,6 +33,7 @@
|
|||
#include "hb-blob.hh"
|
||||
|
||||
#include "hb-iter.hh"
|
||||
#include "hb-vector.hh"
|
||||
|
||||
|
||||
/*
|
||||
|
@ -579,12 +580,19 @@ struct hb_serialize_context_t
|
|||
template <typename Type>
|
||||
struct Supplier
|
||||
{
|
||||
inline Supplier (const Type *array, unsigned int len_, unsigned int stride_=sizeof(Type))
|
||||
inline Supplier (const Type *array, unsigned int len_, unsigned int stride_=sizeof (Type))
|
||||
{
|
||||
head = array;
|
||||
len = len_;
|
||||
stride = stride_;
|
||||
}
|
||||
inline Supplier (const hb_vector_t<Type> *v)
|
||||
{
|
||||
head = v->arrayZ;
|
||||
len = v->len;
|
||||
stride = sizeof (Type);
|
||||
}
|
||||
|
||||
inline const Type operator [] (unsigned int i) const
|
||||
{
|
||||
if (unlikely (i >= len)) return Type ();
|
||||
|
|
|
@ -104,8 +104,18 @@ struct SingleSubstFormat1
|
|||
|
||||
inline bool subset (hb_subset_context_t *c) const
|
||||
{
|
||||
return false;
|
||||
TRACE_SUBSET (this);
|
||||
// TODO(subset)
|
||||
hb_auto_t<hb_vector_t<hb_codepoint_t>> from;
|
||||
hb_auto_t<hb_vector_t<hb_codepoint_t>> to;
|
||||
hb_codepoint_t delta = deltaGlyphID;
|
||||
for (hb_auto_t<Coverage::Iter> iter (this+coverage); iter.more (); iter.next ())
|
||||
{
|
||||
//if (!c->plan->glyphs->has (iter.get_glyph ()))
|
||||
// continue;
|
||||
from.push (iter.get_glyph ());
|
||||
to.push ((iter.get_glyph () + delta) & 0xFFFF);
|
||||
}
|
||||
return_trace (false);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue