CvxText.h 1.8 KB

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