顯示上標與下標的函式

2021-04-02 13:33:42 字數 1897 閱讀 4055

參考連線:http://www.codeproject.com/useritems/sstextout.asp

示例圖:

函式名稱為sstextout,和exttextout函式功能相似。需要指定裝置上下文指標,繪製文字區域的指標,需要顯示的字串以及顯示格式。

字串需要包含特殊格式字元。用'^'代表上標,用'_'代表下標,這樣,在'^'和'_'後的字元將分別被顯示為上標和下標。如果需要顯示的是'^'和'_'字元本身,那麼將它們連續顯示兩次就可以。即分別用'^^'和'__'表示。

呼叫方法:sstextout(pdc,"ms^2/hz+h_2o-mc^^2__4",&rect,dt_center);

源**:

void sstextout(cdc* pdc, cstring data , crect* drawrect, int justification)

else if (x==data.getlength()-1) bfind=false;

else if (data[x]!=data[x+1])

else x++;

s=s+data.left(x);

data.delete(0,min(x+1,data.getlength()));

}sz = pdc->gettextextent(s);

outrect.right+=sz.cx;

if (outrect.height()selectobject(&supfont);

sz = pdc->gettextextent(data[0]);

outrect.right+=sz.cx+supofs.x;

data.delete(0);

pdc->selectobject(oldfont);

break;

case '_':

oldfont = pdc->selectobject(&subfont);

sz = pdc->gettextextent(data[0]);

outrect.right+=sz.cx+subofs.x;

data.delete(0);

pdc->selectobject(oldfont);

break;}}

while (c!=' ');

// adjust text position

outrect.bottom+=2*subofs.y;

outrect.top-=2*subofs.x;

cpoint origin;

origin.y = drawrect->height()/2+outrect.height()/2+drawrect->top;

switch (justification)

cpoint pnt = origin;

data = temp;

// draw text

doelse if (x==data.getlength()-1) bfind=false;

else if (data[x]!=data[x+1])

else x++;

s=s+data.left(x);

data.delete(0,min(x+1,data.getlength()));

}// draw main text

pdc->exttextout(pnt.x,pnt.y,eto_clipped,drawrect,s,null);

sz = pdc->gettextextent(s);

pnt.x+=sz.cx;

// draw subscript or superscript

switch (c)

}while (c!=' ');

// done, restoring the device context

pdc->restoredc(-1); }

md語法 上標 下標

適用與typora 其他軟體不確定,比如這個就不支援 typora for windows 預設未開啟需要進行如下設定 標籤寫法 效果上標 2 10 210下標 h 2 o h2omarkdown可以和html的語法相容,可以通過html的上標和下標標籤來實現效果 標籤寫法 效果上標 210 210...

matlab中特殊字元, 上標和下標

matlab中特殊字元,上標和下標 關於matlab中特殊字元,上標和下標 t 25 circc 攝氏度 下標用 下劃線 上標用 尖號 希臘字母等特殊字元用 alpha beta gamma theta theta gamma delta delta xi xi elta epsilon zeta ...

word上標下標的快捷鍵

下標為ctrl 以下摘自 常用快捷鍵 快捷鍵 作用 ctrl b 使字元變為粗體 ctrl i 使字元變為斜體?ctrl u 為字元新增下劃線 ctrl shift 縮小字號 ctrl shift 增大字號 ctrl c 複製所選文字或物件 ctrl x 剪下所選文字或物件 ctrl v 貼上文字或...

在MarkDown編輯器中打出上標和下標及希臘字母

在markdown編輯器中,如何實現有上下標的數學表示式呢?例如 1x1 2x2 2 3x3 3注意 常用希臘字母下文已給出 1.實現下標與上標的三種方法 下標 1 上標 x 2 注意 輸入法是英文輸入法下標 1 sub 上標 x 2 sup 下標 1 上標 x 2 2.例子中的表示式寫法 1 x ...

Word2007文件中怎麼輸入上標下標

1.word中輸出z x2 y2 此公式流程 首先在word中寫入 z x2 y2 方法1 選中x後面的2,再按組合鍵 ctrl shift 加號鍵 即可,如此操作y後面的2即可。方法2 選中x後面的2,點選word中 開始 字型 上標 即可,如此操作y後面的2即可。2.word中輸出z x1 y1...