Переглянути джерело

* fixed some compiler warnings and errors in Lazarus/FPC

master
Bergmann89 8 роки тому
джерело
коміт
be218c7cab
6 змінених файлів з 19 додано та 22 видалено
  1. +0
    -1
      utsFontCreatorFreeType.pas
  2. +8
    -8
      utsFontCreatorGDI.pas
  3. +2
    -2
      utsOpenGLUtils.pas
  4. +0
    -3
      utsPostProcess.pas
  5. +2
    -2
      utsTextSuite.pas
  6. +7
    -6
      utsTtfUtils.pas

+ 0
- 1
utsFontCreatorFreeType.pas Переглянути файл

@@ -180,7 +180,6 @@ end;
function TtsFontGeneratorFreeType.CreateFont(const aFace: FT_Face; const aRenderer: TtsRenderer; const aSize: Integer; function TtsFontGeneratorFreeType.CreateFont(const aFace: FT_Face; const aRenderer: TtsRenderer; const aSize: Integer;
const aStyle: TtsFontStyles; const aAntiAliasing: TtsAntiAliasing): TtsFont; const aStyle: TtsFontStyles; const aAntiAliasing: TtsAntiAliasing): TtsFont;
var var
face: FT_Face;
err: FT_Error; err: FT_Error;
prop: TtsFontProperties; prop: TtsFontProperties;
os2: PTT_OS2; os2: PTT_OS2;


+ 8
- 8
utsFontCreatorGDI.pas Переглянути файл

@@ -17,7 +17,7 @@ type
fHandle: THandle; fHandle: THandle;
fMat2: TMat2; fMat2: TMat2;
protected protected
constructor Create(const aRenderer: TtsRenderer; const aCreator: TtsFontGenerator; const aProperties: TtsFontProperties; const aHandle: THandle);
{%H-}constructor Create(const aRenderer: TtsRenderer; const aCreator: TtsFontGenerator; const aProperties: TtsFontProperties; const aHandle: THandle);
public public
destructor Destroy; override; destructor Destroy; override;
end; end;
@@ -225,7 +225,7 @@ begin
try try
SelectObject(DC, aFont.fHandle); SelectObject(DC, aFont.fHandle);
if Assigned(GetCharacterPlacementW) then begin if Assigned(GetCharacterPlacementW) then begin
FillChar(GCPRes, SizeOf(GCPRes), #0);
FillChar(GCPRes{%H-}, SizeOf(GCPRes), #0);
GetMem(GCPRes.lpGlyphs, SizeOf(Cardinal)); GetMem(GCPRes.lpGlyphs, SizeOf(Cardinal));
try try
GCPRes.lStructSize := SizeOf(GCPRes); GCPRes.lStructSize := SizeOf(GCPRes);
@@ -278,7 +278,7 @@ var
begin begin
if (aFont.fMat2.eM11.value <> 1) then if (aFont.fMat2.eM11.value <> 1) then
raise EtsException.Create('invalid value'); raise EtsException.Create('invalid value');
FillChar(Metric, SizeOf(Metric), #0);
FillChar(Metric{%H-}, SizeOf(Metric), #0);


GlyphIndex := GetGlyphIndex(aFont, aCharCode); GlyphIndex := GetGlyphIndex(aFont, aCharCode);
if (GlyphIndex < 0) then if (GlyphIndex < 0) then
@@ -339,7 +339,7 @@ var
end; end;


begin begin
FillChar(Metric, SizeOf(Metric), #0);
FillChar(Metric{%H-}, SizeOf(Metric), #0);


GlyphIndex := GetGlyphIndex(aFont, aCharCode); GlyphIndex := GetGlyphIndex(aFont, aCharCode);
if (GlyphIndex < 0) then if (GlyphIndex < 0) then
@@ -404,14 +404,14 @@ var
end; end;


begin begin
FillChar(aProperties, SizeOf(aProperties), #0);
FillChar(aProperties{%H-}, SizeOf(aProperties), #0);
aProperties.Size := aSize; aProperties.Size := aSize;
aProperties.Style := aStyle; aProperties.Style := aStyle;
aProperties.AntiAliasing := aAntiAliasing; aProperties.AntiAliasing := aAntiAliasing;
aProperties.Fontname := aFontname; aProperties.Fontname := aFontname;


// prepare font attribs // prepare font attribs
FillChar(LogFont, SizeOf(LogFont), #0);
FillChar(LogFont{%H-}, SizeOf(LogFont), #0);
tmpName := AnsiString(aFontname); tmpName := AnsiString(aFontname);
for i := 1 to min(Length(aFontname), Length(LogFont.lfFaceName)) do for i := 1 to min(Length(aFontname), Length(LogFont.lfFaceName)) do
LogFont.lfFaceName[i-1] := tmpName[i]; LogFont.lfFaceName[i-1] := tmpName[i];
@@ -445,14 +445,14 @@ begin
end; end;
end; end;


if GetTextMetricsW(DC, TextMetric) then begin
if GetTextMetricsW(DC, TextMetric{%H-}) then begin
aProperties.Ascent := TextMetric.tmAscent; aProperties.Ascent := TextMetric.tmAscent;
aProperties.Descent := TextMetric.tmDescent; aProperties.Descent := TextMetric.tmDescent;
aProperties.ExternalLeading := TextMetric.tmExternalLeading; aProperties.ExternalLeading := TextMetric.tmExternalLeading;
aProperties.DefaultChar := TextMetric.tmDefaultChar; aProperties.DefaultChar := TextMetric.tmDefaultChar;
end; end;


if (GetOutlineTextMetricsW(DC, SizeOf(OutlineMetric), OutlineMetric) > 0) then begin
if (GetOutlineTextMetricsW(DC, SizeOf(OutlineMetric), OutlineMetric{%H-}) > 0) then begin
aProperties.UnderlinePos := OutlineMetric.otmsUnderscorePosition; aProperties.UnderlinePos := OutlineMetric.otmsUnderscorePosition;
aProperties.UnderlineSize := Min(1, OutlineMetric.otmsUnderscoreSize); aProperties.UnderlineSize := Min(1, OutlineMetric.otmsUnderscoreSize);
aProperties.StrikeoutPos := OutlineMetric.otmsStrikeoutPosition; aProperties.StrikeoutPos := OutlineMetric.otmsStrikeoutPosition;


+ 2
- 2
utsOpenGLUtils.pas Переглянути файл

@@ -251,13 +251,13 @@ begin
// create new texture // create new texture
if not Assigned(result) then begin if not Assigned(result) then begin
if (aCharImage.Width > TextureSize) or (aCharImage.Height > TextureSize) then if (aCharImage.Width > TextureSize) or (aCharImage.Height > TextureSize) then
raise EtsRendererOpenGL.Create('char is to large to fit into a texture: ' + aChar.CharCode + ' (0x' + IntToHex(Ord(aChar.CharCode), 4) + ')');
raise EtsRendererOpenGL.Create('char is to large to fit into a texture: (0x' + IntToHex(Ord(aChar.CharCode), 4) + ')');
tex := CreateNewTexture; tex := CreateNewTexture;
result := AddToTexture(tex); result := AddToTexture(tex);
end; end;


if not Assigned(result) then if not Assigned(result) then
raise EtsRendererOpenGL.Create('unable to creat render reference for char: ' + aChar.CharCode + ' (0x' + IntToHex(Ord(aChar.CharCode), 4) + ')');
raise EtsRendererOpenGL.Create('unable to creat render reference for char: (0x' + IntToHex(Ord(aChar.CharCode), 4) + ')');
end; end;


//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


+ 0
- 3
utsPostProcess.pas Переглянути файл

@@ -68,9 +68,6 @@ type


implementation implementation


uses
Math;

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//TtsPostProcessFillColor/////////////////////////////////////////////////////////////////////////////////////////////// //TtsPostProcessFillColor///////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


+ 2
- 2
utsTextSuite.pas Переглянути файл

@@ -145,7 +145,7 @@ type
//function GetCharCreate(const aCharCode: WideChar): TtsChar; //function GetCharCreate(const aCharCode: WideChar): TtsChar;
procedure AddChar(const aCharCode: WideChar; const aChar: TtsChar); overload; procedure AddChar(const aCharCode: WideChar; const aChar: TtsChar); overload;
protected protected
constructor Create(const aRenderer: TtsRenderer; const aGenerator: TtsFontGenerator; const aProperties: TtsFontProperties);
{%H-}constructor Create(const aRenderer: TtsRenderer; const aGenerator: TtsFontGenerator; const aProperties: TtsFontProperties);
public public
property CreateChars: Boolean read fCreateChars write fCreateChars; property CreateChars: Boolean read fCreateChars write fCreateChars;
property Char[const aCharCode: WideChar]: TtsChar read GetChar; property Char[const aCharCode: WideChar]: TtsChar read GetChar;
@@ -337,7 +337,7 @@ type
protected protected
property Lines: PtsBlockLine read fFirstLine; property Lines: PtsBlockLine read fFirstLine;
procedure PushNewLine; procedure PushNewLine;
constructor Create(const aRenderer: TtsRenderer; const aTop, aLeft, aWidth, aHeight: Integer; const aFlags: TtsBlockFlags);
{%H-}constructor Create(const aRenderer: TtsRenderer; const aTop, aLeft, aWidth, aHeight: Integer; const aFlags: TtsBlockFlags);
public public
property Renderer: TtsRenderer read fRenderer; property Renderer: TtsRenderer read fRenderer;
property CurrentColor: TtsColor4f read fCurrentColor; property CurrentColor: TtsColor4f read fCurrentColor;


+ 7
- 6
utsTtfUtils.pas Переглянути файл

@@ -16,7 +16,7 @@ const
NAME_ID_FULL_NAME = 4; NAME_ID_FULL_NAME = 4;


function MakeTTTableName(const ch1, ch2, ch3, ch4: Char): Cardinal; function MakeTTTableName(const ch1, ch2, ch3, ch4: Char): Cardinal;
function GetTTString(pBuffer: Pointer; BufferSize: Integer; NameID, LanguageID: Cardinal; var Text: String): Boolean;
function GetTTString(pBuffer: Pointer; BufferSize: Integer; NameID, LanguageID: Cardinal; out Text: String): Boolean;


function GetTTFontFullNameFromStream(Stream: TStream; LanguageID: Cardinal): String; function GetTTFontFullNameFromStream(Stream: TStream; LanguageID: Cardinal): String;
function GetTTFontFullNameFromFile(const aFilename: String; const aLanguageID: Cardinal): String; function GetTTFontFullNameFromFile(const aFilename: String; const aLanguageID: Cardinal): String;
@@ -98,7 +98,7 @@ begin
Pos := Stream.Position; Pos := Stream.Position;


// Reading table header // Reading table header
Stream.Read(OffsetTable, sizeof(TT_OFFSET_TABLE));
Stream.Read(OffsetTable{%H-}, sizeof(TT_OFFSET_TABLE));
OffsetTable.uNumOfTables := SWAPWORD(OffsetTable.uNumOfTables); OffsetTable.uNumOfTables := SWAPWORD(OffsetTable.uNumOfTables);
OffsetTable.uMajorVersion := SWAPWORD(OffsetTable.uMajorVersion); OffsetTable.uMajorVersion := SWAPWORD(OffsetTable.uMajorVersion);
OffsetTable.uMinorVersion := SWAPWORD(OffsetTable.uMinorVersion); OffsetTable.uMinorVersion := SWAPWORD(OffsetTable.uMinorVersion);
@@ -109,7 +109,7 @@ begin


// seaching table with name // seaching table with name
for Idx := 0 to OffsetTable.uNumOfTables -1 do begin for Idx := 0 to OffsetTable.uNumOfTables -1 do begin
Stream.Read(TableDir, sizeof(TT_TABLE_DIRECTORY));
Stream.Read(TableDir{%H-}, sizeof(TT_TABLE_DIRECTORY));


if (TableName = TableDir.TableName) then begin if (TableName = TableDir.TableName) then begin
TableDir.uOffset := SWAPLONG(TableDir.uOffset); TableDir.uOffset := SWAPLONG(TableDir.uOffset);
@@ -120,7 +120,7 @@ begin
Stream.Seek(TableDir.uOffset, soBeginning); Stream.Seek(TableDir.uOffset, soBeginning);
Size := Stream.Read(pBuff^, TableDir.uLength); Size := Stream.Read(pBuff^, TableDir.uLength);


Result := Size = Integer(TableDir.uLength);
Result := (Size = Integer(TableDir.uLength));
end else end else


begin begin
@@ -141,7 +141,7 @@ begin
Result := ord(ch4) shl 24 or ord(ch3) shl 16 or ord(ch2) shl 8 or ord(ch1); Result := ord(ch4) shl 24 or ord(ch3) shl 16 or ord(ch2) shl 8 or ord(ch1);
end; end;


function GetTTString(pBuffer: Pointer; BufferSize: Integer; NameID, LanguageID: Cardinal; var Text: String): Boolean;
function GetTTString(pBuffer: Pointer; BufferSize: Integer; NameID, LanguageID: Cardinal; out Text: String): Boolean;
var var
pActBuffer: pByte; pActBuffer: pByte;
ttNTHeader: TT_NAME_TABLE_HEADER; ttNTHeader: TT_NAME_TABLE_HEADER;
@@ -203,7 +203,7 @@ begin


pActBuffer := pBuffer; pActBuffer := pBuffer;


Move(pActBuffer^, ttNTHeader, sizeof(TT_NAME_TABLE_HEADER));
Move(pActBuffer^, ttNTHeader{%H-}, sizeof(TT_NAME_TABLE_HEADER));
inc(pActBuffer, sizeof(TT_NAME_TABLE_HEADER)); inc(pActBuffer, sizeof(TT_NAME_TABLE_HEADER));


ttNTHeader.uNRCount := SWAPWORD(ttNTHeader.uNRCount); ttNTHeader.uNRCount := SWAPWORD(ttNTHeader.uNRCount);
@@ -295,6 +295,7 @@ var
begin begin
TableName := MakeTTTableName('n', 'a', 'm', 'e'); TableName := MakeTTTableName('n', 'a', 'm', 'e');


BufferSize := 0;
if GetTTTableData(Stream, TableName, nil, BufferSize) then begin if GetTTTableData(Stream, TableName, nil, BufferSize) then begin
GetMem(Buffer, BufferSize); GetMem(Buffer, BufferSize);
try try


Завантаження…
Відмінити
Зберегти