程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> 對WebMatrix進行現代化改造 使其完美支持中文

對WebMatrix進行現代化改造 使其完美支持中文

編輯:關於ASP.NET

先插一段小廣告為下文做鋪墊

我一直覺得WebMatrix是一個很不錯的ASP.NET開發工具, 雖然這個小軟件是在遙遠的 v1.x 年代的產品, 但功能齊全, 使用方便, 而且個頭小, 安裝後總共才2.8M的個頭(想想 Web Developer Express的個頭), 自帶一個服務器, 安裝後還可以直接把程序目錄拷貝到 U盤裡隨身攜帶, 非常適合那些自己沒有電腦但又想學習ASP.NET開發的童鞋(我以前大學 時沒買電腦前就是這麼干的啦). 不過它有個很大的缺點, 就是不能很好的支持中文. 在 文本編輯器裡輸入中文後, 光標顯示的位置不對.... 一個對策就是不輸入中文就好啦, 順便還可以鍛煉英文 :-)

最近一直在研究WebMatrix, 為什麼要研究它? 有幾個目的和原因:

學習如何設計並實現一個結構良好且有擴展性的程序

學習如何從零開始實現一個代碼編輯器

WebMatrix這個程序功能齊全, 具有一定擴展性(支持插件), 個頭不大不小(核心部分 估計有50000行左右代碼, 花一兩個星期摸透, 非常適合進行研究 

這是微軟出品的, 就算程序設計的不是很完美, 但至少不會是錯誤的

響應上面的小廣告, 對其進行改造, 使其能夠完美支持中文

我花了大概一個星期左右, 基本摸清了整個程序的結構和流程, 發現其實這個程序設 計的還是很不錯的. 各模塊職責分明, 配合良好, 擴展性很強也很容易進行擴展, 非常符 合 "對修改關閉, 對擴展開放" 這個軟件設計思想.

對程序研究得比較清楚之後, 最主要的任務就是

對其進行改造,

使其能夠完美支持中文

啦. 經研究發現, WebMatrix裡的文本編輯器在輸出文本時, 使用了一個固定的字符寬 度(杯具的開始), 這個固定寬度在僅僅使用英文時是沒有問題的, 但是如果有中文(或其 他非拉丁系文字), 就會出problems了: 計算出來的文本寬度不對, 這個就直接導致了兩 個問題:

當前文本行裡的光標位置不對

被選中部分的文字顯示不正常

如圖:

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved