当前位置: 首页 > news >正文

广州网站设计教程网页制作的平台

广州网站设计教程,网页制作的平台,北京海淀区居家办公,个人电子邮箱使用二进制字体需要将整个字体加载到存储器。 在某些情况下,如果字体很大,如大字号中文字体,则这样做可能不可取。 字体缓存使应用能够从外部存储器只能加载显示字符串所需的字母。 这意味着整个字体无需保存到在可寻址闪存或RAM上&#xff…

使用二进制字体需要将整个字体加载到存储器。 在某些情况下,如果字体很大,如大字号中文字体,则这样做可能不可取。

字体缓存使应用能够从外部存储器只能加载显示字符串所需的字母。 这意味着整个字体无需保存到在可寻址闪存或RAM上,而是只需保存在更大的文件系统上。

字体文件阅读器

FileDataReader.hpp#ifndef FILEDATAREADER_HPP
#define FILEDATAREADER_HPP
#include <fonts/FontCache.hpp>
#include <stdio.h>using namespace touchgfx;class FileDataReader : public FontDataReader
{
public:virtual ~FileDataReader() { }virtual void open(){fp = fopen("generated/fonts/bin/Font_verdana_20_4bpp.bin", "rb");}virtual void close(){fclose(fp);}virtual void setPosition(uint32_t position){fseek(fp, position, SEEK_SET);}virtual void readData(void* out, uint32_t numberOfBytes){fread(out, numberOfBytes, 1, fp);}
private:FILE* fp;
};#endif // FRONTENDAPPLICATION_HPP

创建FontCache、存储缓冲区和文件系统阅读器对象,然后安装CachedFont:

#include <gui/common/FrontendApplication.hpp>
#include <BitmapDatabase.hpp>
#include <texts/TextKeysAndLanguages.hpp>
#include <texts/TypedTextDatabase.hpp>
#include <gui/common/FileDataReader.hpp>
#include <fonts/CachedFont.hpp>
#include <fonts/FontCache.hpp>uint8_t fontdata[5120];
FileDataReader reader;
FontCache fontCache;
CachedFont cachedFont;  //Cached Font objectLOCATION_PRAGMA_NOLOAD("TouchGFX_Cache")
uint16_t Cache[1024 * 604] LOCATION_ATTRIBUTE_NOLOAD("TouchGFX_Cache");FrontendApplication::FrontendApplication(Model& m, FrontendHeap& heap): FrontendApplicationBase(m, heap)
{
#ifdef SIMULATORconst uint32_t cacheSize = 0x300000; //3 MB, as exampleuint16_t* const cacheStartAddr = (uint16_t*)malloc(cacheSize);Bitmap::setCache(cacheStartAddr, cacheSize, 4);
#elseBitmap::setCache(Cache, sizeof(Cache));
#endif//setup the font cache with buffer and size; and file reader objectfontCache.setMemory(fontdata, sizeof(fontdata));fontCache.setReader(&reader);TypedText text = TypedText(T___SINGLEUSE_2OJQ);fontCache.initializeCachedFont(text, &cachedFont);//replace the linked in font in TouchGFX with cachedFontTypedTextDatabase::setFont(Typography::DEFAULT, &cachedFont);Unicode::UnicodeChar* str = const_cast<Unicode::UnicodeChar*>(text.getText());fontCache.cacheString(text, str);
}

运行模拟器

http://www.yayakq.cn/news/944816/

相关文章:

  • 网站怎么做评估公司招聘网站
  • 建设的网站首页百度关键词优化快速排名软件
  • 备案网站名称有什么用西安巨久科技网站建设
  • 为什么营销型网站比普通网站建站贵海珠网站建设制作
  • 怎么找上海网站建建行的官方网站
  • 河南省建设厅官方网站做最好的言情网站
  • 个人网站建设方法和过程服装定制费用
  • 网站开发 程序开发阶段wordpress Escort
  • 学习做网站难吗搜索关键词然后排名怎样提升
  • 网站建设在哪个会计科目核算如何做实验室网站
  • 厦门无忧网站建设有限公司seo快速优化
  • 网站建设公司营销方案网站怎么做网站地图
  • 网站做线支付平台系统多少钱怎么做模板网站
  • 建网站手续温州网站建设结构
  • 东莞市人力资源网官网小红书seo排名规则
  • 做网站如何文字链接文字怎么看网站是动态还是静态
  • 做网站如何与腾讯合作有什么网站可以做跳转连接的
  • 百度云建站WordPressphp免费企业网站模板
  • 下载网站备案的核验单定制网站建设简介
  • 城阳网站建设公司电话网页设计与制作案例教程答案
  • 这几年做啥网站致富wordpress转载插件
  • 网站开发保密协议范本学做网站网
  • 高安高端网站设计公司共享ip服务器做网站
  • 湛江网站制作专业班级手机网站墨刀怎样做
  • 济南做外贸网站如何查询自己二建的状态
  • 谁有手机网站啊介绍一下安卓app开发教程视频免费
  • 冲浪网站优化网做艺人资料卡的网站
  • 自建网站定位常见的制作网站的工具
  • tomcat 怎么做网站舟山信息港
  • 网站开发资金预算openshift wordpress 中文