zoukankan      html  css  js  c++  java
  • 富文本测试

    #include <string>
    using namespace std;
    string UTF8ToGBK(const std::string& strUTF8)
    {
    int len = MultiByteToWideChar(CP_UTF8, 0, strUTF8.c_str(), -1, NULL, 0);
    wchar_t * wszGBK = new wchar_t[len + 1]; memset(wszGBK, 0, sizeof(wchar_t) * (len + 1));
    MultiByteToWideChar(CP_UTF8, 0, (LPCTSTR)strUTF8.c_str(), -1, (LPWSTR)wszGBK, len);

    len = WideCharToMultiByte(CP_ACP, 0, (LPCWCH)wszGBK, -1, NULL, 0, NULL, NULL);
    char *szGBK = new char[len + 1];
    memset(szGBK, 0, len + 1);
    WideCharToMultiByte(CP_ACP, 0, (LPCWCH)wszGBK, -1, szGBK, len, NULL, NULL); //strUTF8 = szGBK;
    std::string strTemp(szGBK);
    delete[]szGBK;
    delete[]wszGBK;
    return strTemp;
    }

    string GBKToUTF8(const std::string& strGBK)
    {
    string strOutUTF8 = "";
    WCHAR * str1;
    int n = MultiByteToWideChar(CP_ACP, 0, strGBK.c_str(), -1, NULL, 0);
    str1 = new WCHAR[n];
    MultiByteToWideChar(CP_ACP, 0, strGBK.c_str(), -1, str1, n); n = WideCharToMultiByte(CP_UTF8, 0, str1, -1, NULL, 0, NULL, NULL);
    char * str2 = new char[n];
    WideCharToMultiByte(CP_UTF8, 0, str1, -1, str2, n, NULL, NULL);
    strOutUTF8 = str2;
    delete[]str1;
    str1 = NULL;
    delete[]str2;
    str2 = NULL;
    return strOutUTF8;
    }

    xRichView::xRichView()
    {
    clear();
    maxWidth = 0;

    htmlTextElement& nodeTextOne = alloc_push_back<htmlTextElement>();
    nodeTextOne.text = chUTF82W(GBKToUTF8("123对于m_indexCursorBegin = m_indexCursorEnd = getIndexCursorByMousePoint(contentPoint);int widthContent = width - paddingLeft - paddingRight;return paddingTop + resetCacheBox(*this, widthContent) + paddingBottom; 文本搜索,如果搜索了除英文以外的语言还好").c_str());
    nodeTextOne.m_counts = nodeTextOne.text.length();
    m_countElment = nodeTextOne.m_counts;


    htmlTextElement& nodeTextAtme = alloc_push_back<htmlTextElement>();
    nodeTextAtme.text = chUTF82W(GBKToUTF8("@yecy").c_str());
    nodeTextAtme.m_counts = nodeTextAtme.text.length();
    m_countElment += nodeTextAtme.m_counts;

    htmlImageElement& nodeTextImg = alloc_push_back<htmlImageElement>();
    nodeTextImg.setImgPath("bz.png");
    m_countElment += nodeTextImg.m_counts;

    htmlTextElement& nodeTextTwo = alloc_push_back<htmlTextElement>();
    nodeTextTwo.text = chUTF82W(GBKToUTF8("说些如果要搜索的内容是英文本").c_str());
    nodeTextTwo.m_fontDescript.pixelSize = 16;
    nodeTextTwo.m_fontDescript.color = xColor(0x00, 0xFF, 0xFF);
    nodeTextTwo.m_fontDescript.under = true;
    nodeTextTwo.m_counts = nodeTextTwo.text.length();
    m_countElment += nodeTextTwo.m_counts;

    htmlImageElement& nodeTextImg2 = alloc_push_back<htmlImageElement>();
    nodeTextImg2.setImgPath(L"dt.png");
    m_countElment += nodeTextImg2.m_counts;

    htmlTextElement& nodeTextThree = alloc_push_back<htmlTextElement>();
    nodeTextThree.m_fontDescript.pixelSize = 15;
    nodeTextThree.text = chUTF82W(GBKToUTF8("那么就难以区分是标记还是本文了这样就绕回到对于文本搜索另外字母的大小写,被转义的字符,引号,尖括号").c_str());
    nodeTextThree.m_counts = nodeTextThree.text.length();
    m_countElment += nodeTextThree.m_counts;

    m_bHideCursor = true;

    m_indexCursorPressed = nodeTextOne.m_counts;
    m_indexCursorRelease = nodeTextOne.m_counts;
    }

  • 相关阅读:
    Spark SQL概述
    Spark编程进阶篇
    数据的读取与保存
    键值对RDD数据分区器
    Spark master的HA实战案例
    生产环境中zookeeper分布式集群部署实战案例
    Spark的RDD编程实战案例
    部署Spark历史服务器
    Spark的Standalone运行模式部署实战案例
    将开发的程序打包到正式环境中运行实战篇
  • 原文地址:https://www.cnblogs.com/hqu-ye/p/5942432.html
Copyright © 2011-2022 走看看