/usr/src/castle-game-engine-4.1.1/opengl/windows/castleglwindowsfonts_implement.inc is in castle-game-engine-src 4.1.1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | constructor TWindowsOutlineFont.Create(const AFaceName: string;
AHeight: Integer; AWeight: DWord; AItalic: boolean; ACharSet: DWord;
Depth: TGLfloat; OnlyLines: boolean; dc: HDc);
var WinFont: TWindowsFont;
WinFontHandle: HFont;
PreviousObject: HGdiObj;
begin
WinFont := TWindowsFont.Create(AHeight);
try
WinFont.OutputPrecision := OUT_TT_ONLY_PRECIS {only TrueType fonts};
WinFont.FaceName := AFaceName;
WinFont.Height := AHeight;
WinFont.Weight := AWeight;
WinFont.Italic := AItalic;
WinFont.CharSet := ACharSet;
WinFontHandle := WinFont.GetHandle;
try
PreviousObject := SelectObject(dc, WinFontHandle);
try
Font2OutlineFont(dc, CreatedOutline);
inherited Create(@CreatedOutline, Depth, OnlyLines);
finally SelectObject(dc, PreviousObject) end;
finally DeleteObject(WinFontHandle) end;
finally WinFont.Free end;
end;
destructor TWindowsOutlineFont.Destroy;
begin
inherited;
{ yes, FreeMem AFTER inherited because TGLOutlineFont
requires that CreatedOutline is valid for it's lifetime }
FreeMemNilingAllChars(CreatedOutline);
end;
|