Commit Graph

3 Commits

Author SHA1 Message Date
Anuj Verma 13180a3cd4 [sdf -> bsdf renderer] Hold a refrence to `FT_Memory'.
Due to the way the 8SED algorithm works we need to keep
a track of distances and nearest point of all the pixels/
grid points.

* src/sdf/ftbsdf.c (BSDF_TRaster): Added struct to
  hold the `FT_Memory' reference, to be used to allocate
  memory.

* src/sdf/ftbsdf.c (ED, BSDF_Worker): Added few more
  essential struct. `ED' contains infomation about the
  nearest point. `BSDF_Worker' is used to combine all
  the essentail parameters to functions.

* src/sdf/ftbsdf.c (bsdf_copy_source_to_target => 
  bsdf_init_distance_map): Renamed.

* src/sdf/ftbsdf.c (*): Various minor changes.

* src/sdf/sdf.c: Change the order of source include
  because `ftsdf.c' change some internal freetype
  defines which are required in `ftbsdf.c'.
2020-08-02 16:33:20 +05:30
Anuj Verma 1d51c5ef7b [sdf] Added interface functions for `bsdf' converter.
* src/base/ftobjs.c (FT_Render_Glyph_Internal): Remove
  the bitmap check which prevent calling renderers
  if the glyph is already a bitmap. The `bsdf' renderer
  requires a bitmap for conversion.

* src/base/ftobjs.c (ft_add_renderer): Remove the glyph
  format check which ensures that the glyph format for
  a renderer is `FT_GLYPH_FORMAT_OUTLINE', again the `bsdf'
  renderer has `FT_GLYPH_FORMAT_BITMAP' as a glyph format,
  so we need to remove the condition to initialize the
  renderer properly.

* src/sdf/ftbsdf.c (*): Added a rasterizer for the
  `bsdf' renderer and created necessary functions.

* src/sdf/ftbsdf.h: Add forward declaration of the
  rasterizer.

* src/sdf/ftsdfrend.c (ft_bitmap_sdf_renderer_class):
  Define the new `bsdf' rendere and add the
  `FT_Renderer_RenderFunc' function, the rest is
  same as the `sdf' renderer.

* src/sdf/ftsdfrend.h: Add forward declaration of the
  renderer.

* src/sdf/rules.mk (SDF_DRV_SRC): Add the new `ftbsdf.c'
  file to the compile list.

* src/sdf/sdf.c: Inclue the `ftbsdf.c' file if making
  single object.
2020-08-02 16:33:20 +05:30
preversewharf45 185d07b0cd added the structure of new `sdf' module 2020-08-02 16:33:16 +05:30