CvxText.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #pragma once
  2. #ifndef PUTTEXT_H_
  3. #define PUTTEXT_H_
  4. #include <string>
  5. #include <opencv2/opencv.hpp>
  6. using namespace std;
  7. void GetStringSize(HDC hDC, const char* str, int* w, int* h);
  8. //获取字符串的宽高
  9. cv::Size GetTextSize(const char* str, int fontSize, const char *fn = "Arial", bool italic = false, bool underline = false);
  10. void putTextZH(cv::Mat &dst, cv::Size & rSize, const char* str, cv::Point org, cv::Scalar color, int fontSize,
  11. const char *fn = "Arial", bool italic = false, bool underline = false);
  12. /// 数据收集卡 功能样式设计
  13. /********************************************************
  14. * @function : 获取字符串的画布上的宽度
  15. * @brief : brief
  16. * @input : str: 字符串
  17. * @input : fontSize: 信息区域字体大小
  18. * @input : ttBoxW: 填涂框宽度
  19. * @input : tiSl: 题号和题干的距离
  20. * @input : backPix: 每行的预留空间
  21. * @return :
  22. * @author : qqm 2022/08/31 19:42
  23. *********************************************************/
  24. int getLineStrWidth(string str, int fontSize, int ttBoxW, int tiSl, int backPix);
  25. /********************************************************
  26. * @function : 生成一张数据收集卡
  27. * @brief : brief
  28. * @input : cols: 栏数
  29. * @input : index: 关联ID
  30. * @input : fontSize: 信息区域字体大小
  31. * @input : linGrayPix: 横线的灰度值
  32. * @input : vecLines: 本张数据行
  33. * @input : engShow: 是否显示词性
  34. * @return :
  35. * @author : qqm 2022/08/31 19:42
  36. *********************************************************/
  37. int dataCollectionPaper(int cols, int index, int fontSize, int lineGrayPix, bool engShow, std::vector<std::string> & vecLines);
  38. #endif // PUTTEXT_H_