close

筆譯社推薦語言翻譯公司

 

20091017-04  

 

 

 

完全的程式碼以下:

 

經由幾回測試改寫完成的程式有幾項特點:


    c.Italic?斜體字,字會向右傾斜,所以繪圖規模的寬度必須加大1.5倍取整數

20091017-09  

20091017-03  

文字LED賽馬燈的作法有好幾種,縱向的比橫向的好做,但網路上能找到的素質上都是以查表法的體例來完成

 

20091017-02  

 

在進入下一步驟前必需將輸入確定按鈕埋沒,因為賽馬燈在動作時若再觸發這個按鈕的事宜會造成程式毛病當機,潛藏按鈕可避免這個問題

 

20091017-05  

 

 

下方暫停鈕可暫停賽馬燈動作,並恢復輸入肯定按鈕的顯示翻譯STOP鈕可遏制跑馬燈動作並恢復顯示輸入肯定按鈕翻譯速度控制旋鈕則可以節制賽馬燈的移動速度

 

 

 


首先是程式面板

20091017-11  


1.需事前把每一個字的點陣資料完成,字數少時還好,字數一多就很難做了,點陣資料是不是正確很難比對


2.點陣資料是寫死的,也就是若是點陣資料沒有的字就不可能顯示,勢必從新寫過把字加進去


3.就因為點陣資料是寫死的,顯示的點陣字體大小也是固定的,若要改變點陣字體巨細,資料來曆陣列必須重做


4.網路上找到的大都是跑英文和數字,因為英文和數字加起來頂多30多個字,查表法對照好做翻譯那中文字呢?經常使用中文就有幾千個,真要做成查表用的資料來源陣列是一大工程

跑馬燈還有其他的移動方式,但用插入刪除法可避免陣列很大時泛起顯示有時停頓的問題

20091017-06  

 

 


    e.Bold?粗體字,字會在豎和斜的筆劃上加粗(橫的筆劃不會),所以畫圖局限的寬度必需加大1.125倍取整數


1.賽馬燈的文字可由利用者自行輸入,只要功課系統能輸入的文字都可以跑,要跑符號或日文也是可以


2.在跑文字的半途可以按暫停,更改完輸入文字後,以新的文字從新跑


3.要更改顯示點陣字體大小只需更改4個位置的程式參數,和調整程式面板上LED陣列即可


4.字體要特殊結果(斜體、粗體、加底線、利用特別字型)只需更改程式參數便可

 

 

 

20091017-13  

針對"小黑~"的問題增補申明:

 

Delete From Array元件length這一項設定的數值必需是畫圖規模右(right)這個數值的一半,如繪圖局限右(right)的數值為16,則length必須設定為8


轉換出來的布林點陣資料都是一樣大小,這樣半形字的右邊會多出一個半形字空白,所以必須再用Delete From Array元件來去除多出的那一半。

1.原本用來離隔字串的空白從插入後面改成插入前面

20091017-15  

 

 

2.字串點陣反向重組,本來點陣的右邊改到左側,左邊改到右側,如許每一個字的點陣輸出順序正好相反

20091017-16  

 

 

3.顯示部份改成插入陣列左側的前端,刪除陣列右邊的後端

20091017-17  

觸發以後先以Empty String/Path?元件剖斷文字輸入框內是不是有文字(半形字空白也算有文字),用Case Structure元件來區隔,有文字時輸出為False,此時才開始用While Loop迴圈的移位暫存器(Shift Register)轉換文字。字串進入迴圈前在字串後再加1個半形字空白,作為文字輪回顯示時的區隔,若拿掉則字串的首尾會接連著顯示

輸入確定按鈕自動隱藏翻譯這時候可用速度節制旋鈕節制文字移動速度


3.按暫停鈕LED看板文字終了移動,輸入確定按鈕恢復顯示。


1.先在文字輸入框輸入要顯示的文字


2.按輸入肯定按鈕,中心的LED看板最先由右向左顯示移動文字。這時候可在文字輸入框從頭輸入要顯示的文字


4.按STOP鈕看板文字終了移動,輸入肯定按鈕恢復顯示,程式停止

 

 

轉出來的圖形資料還要再轉換才能成為布林陣列資料

 

20091017-08  

 

 

再來是用Draw Text in Rect.vi元件來把文字轉換成圖型資料翻譯這裡有5項設定部分,由下往上申明:

 


    d.Underline?加底線,會在每個字底下加一條橫線(半形空白字也會)

 

起首文字轉換成布林點陣資料華碩翻譯社是用輸入肯定按鈕的Mouse Down事宜來觸發動作,之所以不消Value Change事件,是因為Value Change事務會有觸發不確實的問題

 


處置懲罰後的布林陣列必需再以Transpose 2D Array元件轉換方向,再以Build Array元件串連成單一陣列輸出,如許做是方便下一步調的賽馬燈程式處置

 

翻譯社 賽馬燈

 


賽馬燈的首要部份使用插入刪除法:先用Index Array元件將轉換好後的布林陣列按挨次掏出資料(取完後從頭再開始),再用Insert Into Array元件將掏出的資料插入顯示陣列的最右側,接著用Delete From Array元件刪除顯示陣列的最左邊,如此就可讓文字從右側往左側移動


另外網路上的例子多是轉換資料和顯示同時動作,有時會有文字移動停頓的問題

20091017-12  

20091017-01  


迴圈停止時則強制顯示輸入肯定按鈕元件

 

程式的首要部分以Flat Sequence Structure元件分成左右2個部分,左邊是把文字轉換成布林點陣資料,右側是橫式文字跑馬燈的主程式


    a.Font Name:字型名稱,要功課系統有安裝的字型才能設定,中文字不能利用英文字型,建議用細明體轉換後的點陣比力樸直

 

 

 


點竄重點:

右邊的賽馬燈程式我是用While Loop迴圈的移位暫存器(Shift Register)來處置,移位暫存器的初始值是用Initialize Array元件創建1個全部由False組成的64×16大小的布林陣列,用來作為LED顯示陣列的根本

轉換的一入手下手是把字串逐一分手成單一字元,這裡有要留意的重點是中文或符號等全形字算2個字元,英文數字等半形字算1個字元,星散時要分隔處置懲罰。半形字用Replace Substring元件掏出1個字元,全形字用Replace Substring元件取出2個字元。當字串的字全取出後住手迴圈

先以Replace Substring元件掏出第1個字元,再以Printable?元件判定是半形或全形字,若是半形字則輸出為True。

 

 

20091017-10  

 

20091017-14  

 

那要若何克服以上的弱點,讓改字改陣列巨細變的輕易呢?想到的方法就是先把文字輸出成點陣圖型,再把點陣圖形文字轉換成布林陣列,最後再來顯示跑馬燈

 

但查表法有幾個問題:

以下是程式試跑的畫面

若有利用粗體字結果,則右(right)設定為字型巨細的1.125倍取整數,如字型設定為16則右(right)必須設定為18。如有利用斜體字結果,則右(right)設定為字型巨細的1.5倍取整數,如字型設定為16則右(right)必須設定為24。若不按照此方式設定,則字的右側會有一部分被截掉


4.desired font(Application)這裡必然要設定為User-specified Font,如許才能使用本身設定的字型參數


5.[user-specified font]字型參數,這裡能設定的有5項,依序是:

1.BG color(transparent)圖形後臺顏色,我是設定成白色,其他色彩也可以,重點是不能和文字同色


2.text color(black)文字色彩,我是設定成黑色,因為黑色在轉換成數值時是0,後續程式比力優點理


3.rect畫圖範圍指定的是左(left)上(top)和右(right)下(bottom),左(left)上(top)保持為0不改翻譯下(bottom)配合字型大小點竄,如字型設定為16則下(bottom)也必須設定為16;右(right)對照麻煩,若字體沒有任何特別效果則共同字型巨細點竄,如字型設定為16則右(right)也必需設定為16。

20091017-07  

 

 

若要調劑建議寬是高的整數倍,這樣全形字顯示比較完全

中心是由LED元件組成的LED看板陣列,華碩翻譯社是設定成64×16的巨細,最多顯示4個全形字(每一個全形字由16×16的點陣構成)。 別的輸入確定按鈕在賽馬燈動作時會隱藏,以免二次觸發造成程式當機

上方是1個輸入肯定按鈕和文字輸入框,要另加輸入肯定按鈕的緣由是預防輸入文字時誤動作。


    b.Size字型大小,有中文字建議設為16(含)以上,這樣筆畫多的字才不會釀成一團

程式的操作流程:

 

這裡用Picture to Pixmap.vi和Unflatten Pixmap.vi元件先把圖形資料轉換成數值陣列,這數值陣列是由顏色的默示值組成。之前的步驟把字設定成黑色(色彩數值0),這時候再用Equal To 0?元件把數值陣列中的0全轉為True,以外的數值全轉為False

迴圈內利用Timeout事件來節制顯示速度,如許做在暫停及STOP的控制上會對照簡單

 

以下申明程式的構成:

 


修改程式要殺青的結果:由字串最尾端開始,從左側跑向右邊,輪回顯示

 

 

 



以下文章來自: http://liuyunantw.pixnet.net/blog/post/252699617-%E7%94%A8labview%E6%A8%A1%E6%93%AC%E6%A9%AB%E5%90%9有關翻譯的問題歡迎諮詢華碩翻譯社

arrow
arrow

    westrvg3t710a 發表在 痞客邦 留言(0) 人氣()