Pixel function used wrong width and height for bounds check.
Remove String variable in smooth font code (not used)
Correct ESP8266UncannyEyes example for new setAddrWindow parameters
This commit is contained in:
Bodmer committed 2019-02-20 00:45:02 +00:00
1 parent 66a21cb761
commit 1edfe6c680
6 files changed
+11 -10

No files matched your search

+2 -4
View File
@@ -76,15 +76,13 @@ void TFT_eSPI::loadFont(String fontName)
unloadFont();
_gFontFilename = "/" + fontName + ".vlw";
// Avoid a crash on the ESP32 if the file does not exist
if (SPIFFS.exists(_gFontFilename) == false) {
if (SPIFFS.exists("/" + fontName + ".vlw") == false) {
Serial.println("Font file " + fontName + " not found!");
return;
}
fontFile = SPIFFS.open( _gFontFilename, "r");
fontFile = SPIFFS.open( "/" + fontName + ".vlw", "r");
if(!fontFile) return;
-2
View File
@@ -39,8 +39,6 @@ fontMetrics gFont = { 0, 0, 0, 0, 0, 0, 0 };
int8_t* gdX = NULL; //leftExtent
uint32_t* gBitmap = NULL; //file pointer to greyscale bitmap
String _gFontFilename;
bool fontLoaded = false; // Flags when a anti-aliased font is loaded
private:
+6 -1
View File
@@ -1059,6 +1059,8 @@ int16_t TFT_eSprite::height(void)
// Does nothing for 8 and 16 bpp sprites. TODO allow rotation of these sprites
void TFT_eSprite::setRotation(uint8_t rotation)
{
if (_bpp != 1) return;
_rotation = rotation;
if (rotation == 0 && _iwidth > _iheight) swap_coord(_iwidth, _iheight);
if (rotation == 1 && _iwidth < _iheight) swap_coord(_iwidth, _iheight);
@@ -1085,19 +1087,22 @@ uint8_t TFT_eSprite::getRotation(void)
void TFT_eSprite::drawPixel(int32_t x, int32_t y, uint32_t color)
{
// Range checking
if ((x < 0) || (y < 0) ||(x >= _width) || (y >= _height) || !_created) return;
if ((x < 0) || (y < 0) || !_created) return;
if (_bpp == 16)
{
if ((x >= _iwidth) || (y >= _iheight)) return;
color = (color >> 8) | (color << 8);
_img[x+y*_iwidth] = (uint16_t) color;
}
else if (_bpp == 8)
{
if ((x >= _iwidth) || (y >= _iheight)) return;
_img8[x+y*_iwidth] = (uint8_t)((color & 0xE000)>>8 | (color & 0x0700)>>6 | (color & 0x0018)>>3);
}
else // 1 bpp
{
if ((x >= _dwidth) || (y >= _dheight)) return;
if (_rotation == 1)
{
uint16_t tx = x;