Hi everyone, After implementing the HarfBuzz math constants and checking the OpenTypeMath table in two functions. This week, I used my previous implementation (in LogicalFontInstance and PhysicalFontFace) via the output device (outdev/font.cxx) to enable its use.
The *OutputDevice* class acts as a high-level layer. Instead of directly processing font capabilities, it enforces the* delegation pattern*. SupportsOpenTypeMath() and GetOpenTypeMathConstant() functions are routed through *LogicalFontInstance* down to the *PhysicalFontFace* layer. This design ensures that OutputDevice remains completely decoupled from low-level font parsing logic. I have successfully implemented: 1. "SupportsOpenTypeMath" function in *outdev/font.cxx *( https://gerrit.libreoffice.org/c/core/+/207987). 2. "GetOpenTypeMathConstant" function in *outdev/font.cxx* ( https://gerrit.libreoffice.org/c/core/+/208005). *Currently*, I'm working on adding the unit tests for these 2 patches. *My Tasks for Week 8:* *Task 1*: Re-implement some functions in the starmath module that only need MathConstants. Best Regards, Aya Jamal
