mirror of
https://github.com/libretro/scummvm.git
synced 2025-03-04 09:18:38 +00:00
GRAPHICS: remove char/line spacing handling from sjis code
(as discussed with LordHoto this should rather be handled in the engine)
This commit is contained in:
parent
f24bac2d0f
commit
c06c05a769
@ -68,10 +68,7 @@ void ScummEngine::loadCJKFont() {
|
||||
error("SCUMM::Font: Could not open file 'pce.cdbios'");
|
||||
|
||||
_cjkFont->setDrawingMode(Graphics::FontSJIS::kShadowMode);
|
||||
_cjkFont->setCharSpacing(-1);
|
||||
_cjkFont->setLineSpacing(-1);
|
||||
_2byteWidth = _cjkFont->getMaxFontWidth();
|
||||
_2byteHeight = _cjkFont->getFontHeight();
|
||||
_2byteWidth = _2byteHeight = 12;
|
||||
_useCJKMode = true;
|
||||
#endif
|
||||
} else if (_game.id == GID_MONKEY && _game.platform == Common::kPlatformSegaCD && _language == Common::JA_JPN) {
|
||||
@ -1127,18 +1124,14 @@ void CharsetRendererPCE::drawBits1(const Graphics::Surface &s, byte *dst, const
|
||||
}
|
||||
|
||||
int CharsetRendererPCE::getDrawWidthIntern(uint16 chr) {
|
||||
if (_vm->_useCJKMode && chr > 127) {
|
||||
assert(_vm->_cjkFont);
|
||||
return _vm->_cjkFont->getCharWidth(chr);
|
||||
}
|
||||
if (_vm->_useCJKMode && chr > 127)
|
||||
return _vm->_2byteWidth;
|
||||
return CharsetRendererV3::getDrawWidthIntern(chr);
|
||||
}
|
||||
|
||||
int CharsetRendererPCE::getDrawHeightIntern(uint16 chr) {
|
||||
if (_vm->_useCJKMode && chr > 127) {
|
||||
assert(_vm->_cjkFont);
|
||||
return _vm->_cjkFont->getFontHeight();
|
||||
}
|
||||
if (_vm->_useCJKMode && chr > 127)
|
||||
return _vm->_2byteHeight;
|
||||
return CharsetRendererV3::getDrawHeightIntern(chr);
|
||||
}
|
||||
|
||||
|
@ -76,7 +76,7 @@ void FontSJIS::drawChar(Graphics::Surface &dst, uint16 ch, int x, int y, uint32
|
||||
}
|
||||
|
||||
FontSJISBase::FontSJISBase()
|
||||
: _drawMode(kDefaultMode), _flippedMode(false), _fontWidth(16), _fontHeight(16), _charSpacing(0), _lineSpacing(0), _bitPosNewLineMask(0) {
|
||||
: _drawMode(kDefaultMode), _flippedMode(false), _fontWidth(16), _fontHeight(16), _bitPosNewLineMask(0) {
|
||||
}
|
||||
|
||||
void FontSJISBase::setDrawingMode(DrawingMode mode) {
|
||||
@ -93,43 +93,35 @@ void FontSJISBase::toggleFlippedMode(bool enable) {
|
||||
warning("Flipped mode unsupported by this font");
|
||||
}
|
||||
|
||||
void FontSJISBase::setCharSpacing(int spacing) {
|
||||
_charSpacing = spacing;
|
||||
}
|
||||
|
||||
void FontSJISBase::setLineSpacing(int spacing) {
|
||||
_lineSpacing = spacing;
|
||||
}
|
||||
|
||||
uint FontSJISBase::getFontHeight() const {
|
||||
switch (_drawMode) {
|
||||
case kOutlineMode:
|
||||
return _fontHeight + _lineSpacing + 2;
|
||||
return _fontHeight + 2;
|
||||
|
||||
case kDefaultMode:
|
||||
return _fontHeight + _lineSpacing;
|
||||
return _fontHeight;
|
||||
|
||||
default:
|
||||
return _fontHeight + _lineSpacing + 1;
|
||||
return _fontHeight + 1;
|
||||
}
|
||||
}
|
||||
|
||||
uint FontSJISBase::getMaxFontWidth() const {
|
||||
switch (_drawMode) {
|
||||
case kOutlineMode:
|
||||
return _fontWidth + _charSpacing + 2;
|
||||
return _fontWidth + 2;
|
||||
|
||||
case kDefaultMode:
|
||||
return _fontWidth + _charSpacing;
|
||||
return _fontWidth;
|
||||
|
||||
default:
|
||||
return _fontWidth + _charSpacing + 1;
|
||||
return _fontWidth + 1;
|
||||
}
|
||||
}
|
||||
|
||||
uint FontSJISBase::getCharWidth(uint16 ch) const {
|
||||
if (isASCII(ch))
|
||||
return ((_drawMode == kOutlineMode) ? 10 : (_drawMode == kDefaultMode ? 8 : 9)) + _charSpacing;
|
||||
return ((_drawMode == kOutlineMode) ? 10 : (_drawMode == kDefaultMode ? 8 : 9));
|
||||
else
|
||||
return getMaxFontWidth();
|
||||
}
|
||||
|
@ -146,10 +146,6 @@ public:
|
||||
|
||||
virtual void toggleFlippedMode(bool enable);
|
||||
|
||||
virtual void setCharSpacing(int spacing);
|
||||
|
||||
virtual void setLineSpacing(int spacing);
|
||||
|
||||
virtual uint getFontHeight() const;
|
||||
|
||||
virtual uint getMaxFontWidth() const;
|
||||
@ -172,7 +168,6 @@ protected:
|
||||
DrawingMode _drawMode;
|
||||
bool _flippedMode;
|
||||
int _fontWidth, _fontHeight;
|
||||
int _charSpacing, _lineSpacing;
|
||||
uint8 _bitPosNewLineMask;
|
||||
|
||||
bool isASCII(uint16 ch) const;
|
||||
|
Loading…
x
Reference in New Issue
Block a user