I have applied first part of the patch in r40120.
I have few questions about other parts:
>external access about hinted option
Are there other descendants of TFreeTypeRenderableFont?
If so, they should be updated to be compilable after this change.
>line ending when splitting
I can not understand what this change is supposed to do.
Can you write a commit message for it?
Also, code of RemoveLineEnding function seems too complicated.
Is not it equivalent to the following?
Result := (index <= Length(s)) and (s[index] in [#13, #10]);
if Result then
if (index + 1 <= Length(s)) and ([s[index + 1], s[index]] = [#13, #10]) then
Delete(s, index, 2)
else
Delete(s, index, 1);