main.cpp 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #include "widget.h"
  2. #include <QApplication>
  3. #include <QFontDatabase>
  4. #include <qapplication.h>
  5. #include <qchar.h>
  6. #include <QDebug>
  7. #include "spdlog/spdlog.h"
  8. void addFont();
  9. int main(int argc, char *argv[])
  10. {
  11. QApplication a(argc, argv);
  12. /* 从文件加载字体 */
  13. addFont();
  14. SPDLOG_INFO("********** ACASetting **********");
  15. Widget w;
  16. w.show();
  17. return a.exec();
  18. }
  19. /* 加载字体 */
  20. void addFont()
  21. {
  22. QString fontPath = QApplication::applicationDirPath() + "/font/SiYuanBlack_ttf";
  23. /* 加载字体 */
  24. int id1 = QFontDatabase::addApplicationFont(fontPath + "/SiYuanBlack_Bold.ttf");
  25. int id2 = QFontDatabase::addApplicationFont(fontPath + "/SiYuanBlack_M.ttf");
  26. int id3 = QFontDatabase::addApplicationFont(fontPath + "/SiYuanBlack_R.ttf");
  27. /***************************************************
  28. * 字体使用方式
  29. * id1 ("思源黑体-粗")
  30. * id2 ("思源黑体M")
  31. * id3 ("思源黑体R")
  32. ****************************************************/
  33. SPDLOG_INFO("{}", fontPath.toStdString());
  34. qDebug() << "id1" << id1 << ", " << QFontDatabase::applicationFontFamilies(id1);
  35. qDebug() << "id2" << id2 << ", " << QFontDatabase::applicationFontFamilies(id2);
  36. qDebug() << "id3" << id3 << ", " << QFontDatabase::applicationFontFamilies(id3);
  37. QFont font_main;
  38. font_main.setFamily(QFontDatabase::applicationFontFamilies(id3).at(0));
  39. font_main.setPixelSize(14);
  40. QApplication::setFont(font_main);
  41. }