@@ -309,17 +309,29 @@ void RangeAsync(uv_work_t* req) {
309309 if (ft_face->family_name ) {
310310 llmr::glyphs::fontstack* mutable_fontstack = glyphs.add_stacks ();
311311 if (ft_face->style_name ) {
312- mutable_fontstack->set_name (std::string (ft_face->family_name ) + " " + std::string (ft_face->style_name ));
312+ mutable_fontstack->set_family_name (std::string (ft_face->family_name ) + " " + std::string (ft_face->style_name ));
313313 } else {
314- mutable_fontstack->set_name (std::string (ft_face->family_name ));
314+ mutable_fontstack->set_family_name (std::string (ft_face->family_name ));
315315 }
316316
317- mutable_fontstack->set_range (std::to_string (baton->start ) + " -" + std::to_string (baton->end ));
317+ // TODO mutable_fontstack->set_range(std::to_string(baton->start) + "-" + std::to_string(baton->end));
318+ mutable_fontstack->set_family_name (ft_face->family_name );
319+ mutable_fontstack->set_style_name (ft_face->style_name );
320+ mutable_fontstack->set_ascender (ft_face->ascender );
321+ mutable_fontstack->set_descender (ft_face->descender );
322+ mutable_fontstack->set_line_height (ft_face->height );
323+
324+ // Add metadata to face.
325+ mbgl::glyphs::Face::Metadata mutable_metadata = mutable_face->metadata ();
326+ mutable_metadata.set_size (char_size);
327+ mutable_metadata.set_buffer (buffer_size);
328+ mutable_metadata.set_cutoff (cutoff_size);
329+ mutable_metadata.set_scale (scale_factor);
318330
319331 const double scale_factor = 1.0 ;
320332
321333 // Set character sizes.
322- double size = 24 * scale_factor;
334+ double size = char_size * scale_factor;
323335 FT_Set_Char_Size (ft_face, 0 , static_cast <FT_F26Dot6>(size * (1 << 6 )), 0 , 0 );
324336
325337 for (std::vector<uint32_t >::size_type x = 0 ; x != baton->chars .size (); x++) {
@@ -332,7 +344,7 @@ void RangeAsync(uv_work_t* req) {
332344 if (!char_index) continue ;
333345
334346 glyph.glyph_index = char_index;
335- sdf_glyph_foundry::RenderSDF (glyph, 24 , 3 , 0.25 , ft_face);
347+ sdf_glyph_foundry::RenderSDF (glyph, char_size, buffer_size, cutoff_size , ft_face);
336348
337349 // Add glyph to fontstack.
338350 llmr::glyphs::glyph* mutable_glyph = mutable_fontstack->add_glyphs ();
0 commit comments