Implement font upscaling hack for similar looking web/PC font rendering.

pull/28/head
sigonasr2 1 year ago
parent f9b00a8931
commit 5331a3d443
  1. 2
      Crawler/Version.h
  2. 2
      Crawler/assets/config/configuration.txt
  3. 6
      Crawler/olcPGEX_TTF.h
  4. 6
      Crawler/olcPixelGameEngine.h
  5. BIN
      Crawler/pge.data
  6. 2
      Crawler/pge.js
  7. BIN
      Crawler/pge.wasm

@ -39,7 +39,7 @@ All rights reserved.
#define VERSION_MAJOR 0
#define VERSION_MINOR 2
#define VERSION_PATCH 1
#define VERSION_BUILD 3283
#define VERSION_BUILD 3285
#define stringify(a) stringify_(a)
#define stringify_(a) #a

@ -61,7 +61,7 @@ story_background_image_location = backgrounds/
story_player_name = You
# Dialog font and size.
dialog_font_size = LessRoundBox,24
dialog_font_size = LessRoundBox,12
# Whether or not to show individual data accesses from config data structure.
debug_access_options = 0

@ -73,7 +73,7 @@ namespace olc {
Font(std::string path, int fontSize) : fontSize(fontSize) {
FT_Error error = FT_New_Face(library, path.c_str(), 0, &fontFace);
error = FT_Set_Pixel_Sizes(fontFace, 0, fontSize);
error = FT_Set_Pixel_Sizes(fontFace, 0, fontSize*4);
}
Font(const Font &other) = delete;
@ -114,7 +114,7 @@ namespace olc {
for (size_t i = 0; i < string.size(); i++) {
char32_t chr = string[i];
if(chr=='\r')continue;
Font *toUse = this;
FT_UInt chrIndex = GetCharIndex(chr);
@ -261,7 +261,7 @@ namespace olc {
public:
FontRect GetStringBounds(std::u32string string, float angle = 0.0f) {
FontRect temp=_GetStringBounds(string,angle);
return {temp.offset/2,{temp.size/2}};
return {temp.offset/4,{temp.size/4}};
}
olc::Sprite *RenderStringToSprite(std::u32string string,

@ -3345,7 +3345,7 @@ namespace olc
delete temp;
}
temp=font.RenderStringToDecal(sText,col);
DrawDecal(pos,temp,scale/2,col);
DrawDecal(pos,temp,scale/4,col);
}
void PixelGameEngine::DrawShadowStringDecal(Font&font, const olc::vf2d& pos, const std::u32string& sText, const Pixel col, const Pixel shadowCol, const olc::vf2d& scale,const float shadowSizeFactor){
@ -3358,11 +3358,11 @@ namespace olc
for(float y=-shadowSizeFactor;y<=shadowSizeFactor+0.1;y+=shadowSizeFactor/2){
for(float x=-shadowSizeFactor;x<=shadowSizeFactor+0.1;x+=shadowSizeFactor/2){
if(x!=0||y!=0){
DrawDecal(pos+vf2d{x,y},temp,scale/2,shadowCol);
DrawDecal(pos+vf2d{x,y},temp,scale/4,shadowCol);
}
}
}
DrawDecal(pos,temp,scale/2,col);
DrawDecal(pos,temp,scale/4,col);
}
void PixelGameEngine::DrawShadowStringPropDecal(const olc::vf2d& pos, const std::string& sText, const Pixel col, const Pixel shadowCol, const olc::vf2d& scale,const float shadowSizeFactor){

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 MiB

After

Width:  |  Height:  |  Size: 9.3 MiB

File diff suppressed because one or more lines are too long

Binary file not shown.
Loading…
Cancel
Save