色人妻超碰,日韩在线视频网站,亚汌国产一区二区三区,国产经典免费视频在线观看 ,久久久精品国产亚洲麻色欲,国产大片喷水在线在线视频,亚洲一区二区成人,女人18一级毛片免费观看
| 項目咨詢 |積分體系 | 加入收藏 | 設為首頁 | RSS
您當前的位置:首頁 > 市場 > 百科 > 技術 > 夸父專欄

基于RICHVIEW的EMR開發文檔九

時間:2013-10-08 20:45:09  來源:  作者:
更多

 http://blog.sina.com.cn/game7788

   夸父
下面代碼主要處理刪除文檔中的文本樣式,處理對象包括所有的文本元素,制表符,標記列表等文本類型的元素,對于其它元素不起作用。
在使用此功能時,需要注意的是,當文檔中同時存在UNICODE和非UNICODE文本編碼時,或者存在不同的語言字符集的非UNICODE文本,那么此功能可能會使部分文本信息丟失,所以使用此功能時最好保證文檔中的字符編碼格式相同。同時,
這個功能不是普通的編輯操作,因此使用后是不可以撤消的,使用前請務必清除撤消緩沖區。
procedure RemoveFormatting(RVData: TCustomRVData; RemoveMarkers, KeepLinks: Boolean); 
var i, HypertextStyleNo: Integer; 
    UnicodeTo, UnicodeHTo: Boolean; 
  {.............................................................} 
  procedure DoRemoveFormatting(RVData: TCustomRVData); //主要實現方法
  var i, r, c, StyleNo, StyleNoTo: Integer; 
      PB, UnicodeFrom, ThisUnicodeTo: Boolean; 
      table: TRVTableItemInfo; 
  begin 
    for i := RVData.ItemCount-1 downto 0 do begin 
      RVData.GetItem(i).ParaNo := 0; 
      StyleNo := RVData.GetItemStyle(i); 
      case StyleNo of 
        rvsTable: 
          begin 
            table := TRVTableItemInfo(RVData.GetItem(i)); 
            for r := 0 to table.RowCount-1 do 
              for c := 0 to table.ColCount-1 do 
                if table.Cells[r,c]<>nil then 
                  DoRemoveFormatting(table.Cells[r,c].GetRVData); 
          end; 
        rvsListMarker: 
          if RemoveMarkers then begin 
            PB := RVData.PageBreaksBeforeItems[i]; 
            RVData.DeleteItems(i, 1); 
            if i<RVData.ItemCount then begin 
              RVData.GetItem(i).SameAsPrev := False; 
              RVData.GetItem(i).PageBreakBefore := PB; 
            end; 
          end; 
        rvsTab: 
          if RVData.GetRVStyle.TextStyles[ 
            TRVTabItemInfo(RVData.GetItem(i)).TextStyleNo].Jump and KeepLinks then 
            TRVTabItemInfo(RVData.GetItem(i)).TextStyleNo := HypertextStyleNo 
          else begin 
            TRVTabItemInfo(RVData.GetItem(i)).TextStyleNo := 0; 
            RVData.SetItemTag(i, ''); 
          end; 
        1..MaxInt: 
          begin 
            if KeepLinks and RVData.GetRVStyle.TextStyles[StyleNo].Jump then begin 
              ThisUnicodeTo := UnicodeHTo; 
              StyleNoTo := HypertextStyleNo; 
              end 
            else begin 
              ThisUnicodeTo := UnicodeTo; 
              StyleNoTo := 0; 
              RVData.SetItemTag(i, '');              
            end; 
            UnicodeFrom := RVData.GetRVStyle.TextStyles[StyleNo].Unicode; 
            RVData.GetItem(i).StyleNo := StyleNoTo; 
            if UnicodeFrom and not ThisUnicodeTo then begin 
              RVData.GetItem(i).ItemOptions := RVData.GetItem(i).ItemOptions-[rvioUnicode]; 
              RVData.SetItemTextR(i, 
                RVU_UnicodeToAnsi(RVData.GetStyleCodePage(0), RVData.GetItemTextR(i))); 
              end 
            else if not UnicodeFrom and ThisUnicodeTo then begin 
              RVData.GetItem(i).ItemOptions := RVData.GetItem(i).ItemOptions+[rvioUnicode]; 
              RVData.SetItemTextR(i, 
                RVU_AnsiToUnicode(RVData.GetStyleCodePage(0), RVData.GetItemTextR(i))); 
            end; 
          end; 
      end; 
    end; 
  end; 
  {.............................................................} 
begin 
  HypertextStyleNo := 0; 
  if KeepLinks then 
    for i := 0 to RVData.GetRVStyle.TextStyles.Count-1 do 
      if RVData.GetRVStyle.TextStyles[i].Jump then begin 
        HypertextStyleNo := i; 
        break; 
      end; 
  UnicodeTo  := RVData.GetRVStyle.TextStyles[0].Unicode; 
  UnicodeHTo := RVData.GetRVStyle.TextStyles[HypertextStyleNo].Unicode; 
  DoRemoveFormatting(RVData); 
end;
 
上面是主要實現方法,如果要在文檔中正式使用此方法,調用下面的代碼即可.
  RemoveFormatting(RichViewEdit1.RVData, True, True); 
  NormalizeRichView(RichViewEdit1.RVData);//還原編輯器原始狀態,這步很重要,主要起修復作用,可以理解為格式化
  RichViewEdit1.DeleteUnusedStyles(True, True, True); 
  RichViewEdit1.ClearUndo; 
  RichViewEdit1.Format; 
來頂一下
返回首頁
返回首頁
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
欄目更新
欄目熱門
主站蜘蛛池模板: aaa国产一级毛片| 九九九精品成人免费视频7| 婷婷五月在线视频| 永久免费AⅤ无码网站在线观看| 国产精品va| 国产欧美综合在线观看第七页| 国产乱视频网站| 国产精品视频久| 四虎影视永久在线精品| 国产精品福利社| 国产一区二区三区精品久久呦| 亚洲国产清纯| 国产精品观看视频免费完整版| 日韩人妻少妇一区二区| 欧美成人午夜视频| 制服丝袜一区二区三区在线| 亚洲三级影院| 欧美在线天堂| 亚洲精品在线影院| 久久青草视频| 亚洲乱码在线视频| 无码中文AⅤ在线观看| 欧美激情第一区| 男人的天堂久久精品激情| 99精品热视频这里只有精品7| 亚洲一区无码在线| 国产精品男人的天堂| 国产成人成人一区二区| 免费无码AV片在线观看中文| av在线手机播放| 激情六月丁香婷婷四房播| 日韩欧美中文| 日韩精品少妇无码受不了| 国产小视频免费| 亚洲天堂久久| 免费观看国产小粉嫩喷水| 99热这里只有精品在线播放| 日本不卡在线播放| 五月天综合网亚洲综合天堂网| 亚洲欧美日韩成人高清在线一区| 免费大黄网站在线观看| 老色鬼久久亚洲AV综合| 在线欧美一区| 多人乱p欧美在线观看| 欧美狠狠干| 亚洲一区二区三区麻豆| 久久成人免费| 中国特黄美女一级视频| 91久久偷偷做嫩草影院| 青草视频免费在线观看| 亚洲综合欧美在线一区在线播放| 亚洲二区视频| 毛片基地美国正在播放亚洲| 欧美日韩国产成人高清视频| 久久国产精品国产自线拍| 91精品最新国内在线播放| 亚洲a免费| 亚洲青涩在线| 伊人成人在线| 亚洲无码高清一区| 亚洲精品无码日韩国产不卡| 高清无码手机在线观看| 亚洲男人的天堂久久精品| 午夜国产不卡在线观看视频| 欧美色视频日本| 99热最新在线| 亚洲欧美日韩天堂| www.精品国产| 免费大黄网站在线观看| 国产精品综合色区在线观看| 久久超级碰| 999福利激情视频| 在线欧美一区| 国产高清又黄又嫩的免费视频网站| 亚洲欧美日韩综合二区三区| 一级毛片免费不卡在线| 久久久久无码精品国产免费| 国产欧美日韩精品综合在线| 欧美日韩在线成人| 欧美另类视频一区二区三区| 国产成人免费高清AⅤ| 99久久精品国产精品亚洲 |