專利名稱:一種古琴減字譜的計算機生成、編輯方法與系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及一種計算機方法,尤其是涉及一種古琴減字譜的計算機生成、編輯方法與系統(tǒng)。
背景技術:
古琴減字譜的計算機生成方法,是計算機系統(tǒng)中的一個輸入工具,把鍵盤的輸入 信息或其他非鍵盤的輸入信息轉換成古琴減字的輸入方法。目前最常用的是基于漢字輸入 的減字輸入方法。古琴譜的構成元素是減字,一個琴譜包含了多個減字。由于一個減字是由至少一 個基本減字譜字構成,每一個基本減字譜字有其對應的漢字名稱,因此一個減字就對應于 一個漢字串。減字字形的構成,類似于漢字的構成,是各種基本譜字有規(guī)則的疊加,而不是如同 字符文字單詞(如英文單詞)一樣簡單的累加組成。所以正確的解決減字字形的輸入問題, 一直沒有一個完善的解決方法。目前,關于古琴譜的計算機生成方法,科技論文有提及的主要有以下兩種一、1989年7月的《計算機學報》發(fā)表的論文《電腦在古琴音樂研究中的初步應 用》。此文中,陳長林研究員提到了一種古琴減字譜的計算機生成方法,該方法雖然能夠處 理一部分比較簡單的古琴減字,但是對于復雜的“撮”結構的減字的支持不足;二、2010年3月的《計算機工程》上發(fā)表的論文《Windows下處理減字圖形之新方 法》中,我們曾提出了一種古琴減字譜的計算機生成方法,該方法能夠支持復雜的“撮”結 構,但是實用效果不理想,處理速度慢。以上兩種方法都有著比較明顯的缺點,即實用效果不足。本申請的發(fā)明人([1] 丁曉君,葉娃婷,周昌樂.古琴減字譜編碼與編輯方法[J]. 中國音樂學(季刊))公開了一種古琴減字譜編碼與編輯方法。
發(fā)明內容
本發(fā)明的目的是提供一種古琴減字譜的計算機生成與編輯方法。本發(fā)明的另一目的是提供一種古琴減字譜的生成系統(tǒng)。本發(fā)明所述一種古琴減字譜的計算機生成與編輯方法包括以下步驟1)將輸入的減字的漢字意義串劃分,得到每個減字所有基本譜字,并將基本譜字 轉換成對應的自造字Unicode碼值,此時一個減字就被轉換成一個Unicode碼值串;2)分析所述減字所包含的Unicode值,確定每一個碼值所代表字形的顯示區(qū)域, 記錄該區(qū)域信息,得到當前減字在減字譜圖形頁面中的輸出位置,根據(jù)該區(qū)域信息和減字 中包含的基本譜字信息輸出減字,把它顯示在減字圖形頁面中;3)將該減字的基本譜字信息保存到減字譜圖片的描述字符串中,以便后續(xù)對圖片 的編輯處理,所述編輯處理的方法包括以下步驟
(1)獲取減字譜頁面圖片的描述信息,判斷格式是否符合上述輸入方法定義的輸 出格式,否則終止;(2)從描述信息中獲取該減字圖片的數(shù)據(jù)信息,并顯示該圖片;(3)進行頁面格式調整操作,或者選中該減字譜頁面圖片中的某減字,進行對應的 編輯操作。在分析所述減字的漢字意義串時,按照最長漢字長度優(yōu)先匹配的原則進行從左到 右匹配,把漢字串轉換成基本譜字代碼串。輸出減字時,確定每個基本譜字字形在整個減字字形區(qū)域中顯示位置和大小的算 法,通過該算法得到位置數(shù)據(jù)后,按照基本譜字串的順序,輸出每個基本譜字的字形,由這 些譜字字形構成該減字的顯示字形 ,并把該字形保存在增強型圖元文件中。輸出的減字,將被保存在一個圖片中,稱之為減字頁面,該頁面被劃分為多個行和 列,其屬性包括了行數(shù)、列數(shù)、行高、列寬、行間距、列間距、橫排或是縱列顯示模式。減字頁面按照行和列,劃分出總計個數(shù)是行數(shù)乘以列數(shù)的多個方格區(qū)域,每個減 字在一個該方格區(qū)域中進行顯示。用于保存減字譜圖形結果的增強型圖元文件的描述信息部分,有著獨特的格式, 其中記錄了減字頁面的所有信息,包括頁面的屬性、所有減字的相關信息,從而能夠對已輸 出的減字頁面進行編輯處理。本發(fā)明所述一種古琴減字譜的計算機生成系統(tǒng)設有存儲單元,存儲單元用于保存基本譜字的漢字名稱和對應自定義Unicode碼值, 基本譜字構成減字時的位置區(qū)域信息;接收單元,接收單元用于接收用戶輸入的漢字串;編碼轉換單元,編碼轉換單元用于將用戶輸入串轉化為基本譜字的Unicode碼值 串;減字生成單元,減字生成單元用于將基本譜字的Unicode碼值串,轉換成減字圖 形;輸出控制單元,輸出控制單元用于控制和實現(xiàn)減字頁的輸出,包括管理頁面的輸 出格式與頁面的各種屬性;編輯操作單元,編輯操作單元用于對減字頁中的某個減字進行編輯操作,包括修 改、刪除、插入等操作;狀態(tài)顯示單元,狀態(tài)顯示單元用于顯示減字頁的頁面相關信息;文件操作單元,文件操作單元用于對減字譜的圖形文件進行操作控制,包括新建、 打開、關閉、轉換、保存、另存等操作功能;Word互操作部分,在Microsoft Word中加入插件,實現(xiàn)在Word中對本系統(tǒng)的調 用,并能夠將編輯后的減字圖片結果保存到Word文檔中去。所述一種古琴減字譜的計算機生成系統(tǒng)還可設有轉換單元,轉換單元用于將指定 格式的減字譜的漢字文件轉換成減字譜圖形文件,也可以將由本系統(tǒng)所輸出的減字譜圖片 轉換成減字譜的漢字文件。由于本發(fā)明預先建立了從基本譜字漢字名稱到Unicode碼值的映射表,而且也建 立了對應的基本譜字字形,因此在處理輸入時,當接收到漢字串后,對該漢字串進行分析,并轉換為基本譜字的Unicode碼值串;然后分析該減字所包含的Unicode值,確定每一個碼 值所代表字形的顯示區(qū)域,記錄該區(qū)域信息;接著得到當前減字在減字譜圖形頁面中的輸 出位置,根據(jù)該信息和減字中包含的基本譜字信息輸出減字,把它顯示在減字圖形頁面中。 把該減字的基本譜字信息以一定的格式保存到減字譜圖片的描述字符串中,以便后續(xù)對圖 片的編輯處理。在處理編輯時,獲取減字譜頁面圖片的描述信息,判斷格式是否符合本方法 定義的格式,否則終止。從描述信息中獲取該減字圖片的數(shù)據(jù)信息,并顯示該圖片。進行頁 面格式調整操作,或者選中該減字譜頁面圖片中的某減字,進行對應的編輯操作。由于本發(fā)明所述古琴減字譜的計算機生成系統(tǒng),預先在存儲單元中建立了從基本 譜字漢字名稱到Unicode碼值的映射表,而且也建立了對應的基本譜字字形。在處理輸入 時,當接收單元接收到漢字串后,對該漢字串進行分析,并通過編碼轉換單元轉換為基本譜 字的Unicode碼值串;然后分析該減字所包含的Unicode值,通過減字生成單元,確定每一 個碼值所代表字形的顯示區(qū)域,記錄該區(qū)域信息。接著,通過減字生成單元得到當前減字在 減字譜圖形頁面中的輸出位置,根據(jù)該信息和減字中包含的基本譜字信息輸出減字,通過 輸出控制單元把它顯示在減字圖形頁面中,并且同時通過狀態(tài)顯示單元,顯示整個減字頁 面的狀態(tài)情況。把該減字的基本譜字信息以一定的格式保存到減字譜圖片的描述字符串 中,以便后續(xù)對圖片的編輯處理。在處理編輯時,獲取減字譜頁面圖片的描述信息,判斷格 式是否符合本方法定義的格式,否則終止。從描述信息中獲取該減字圖片的數(shù)據(jù)信息,并顯 示該圖片。進行頁面格式調整操作,或者選中該減字譜頁面圖片中的某減字,通過編輯操作 單元進行對應的編輯操作。本發(fā)明所提供古琴減字譜的計算機生成方法相比于現(xiàn)有的古琴減字譜的計算機 生成方法,處理上分類清晰,速度較快,顯示較為美觀,實用效果良好。
圖1為本發(fā)明實施例所述古琴減字譜的計算機生成方法中的輸入方法的一種實 施方式流程圖。圖2為本發(fā)明實施例所述古琴減字譜的計算機生成方法中的輸入方法的另一種 實施方式流程圖。圖3為本發(fā)明實施例所述古琴減字譜的計算機生成方法的對于譜字串的處理流 程圖。圖4為本發(fā)明實施例所述減字系統(tǒng)各單元關系。
具體實施例方式本發(fā)明提供一種古琴減字譜的計算機生成方法,用于實現(xiàn)對古琴減字譜的計算機 生成,從而解決困擾多年的古琴減字譜的數(shù)字化問題。為了使本技術領域的技術人員更好的理解本發(fā)明方案,下面結合附圖和具體實施 方案對本發(fā)明作進一步的詳細說明。圖1給出本發(fā)明實施例所述古琴減字譜的計算機生成方法中的輸入方法的一種 實施方式流程圖。第一步驟中,用戶輸入減字譜的漢字意義串,然后該漢字串會按照輸入順序進行匹配,匹配時選擇最大的匹配長度與減字的基本譜字進行匹配,并得到結果,比如對應漢字 串“大指七徽勾三弦”,雖然也存在基本譜字“大”,但是由于“大指,,的長度大于“大”,所以 優(yōu)先匹配“大指”,同理于“七徽”和“三弦”,如此便能夠得到“大指”、“七徽”、“勾”、“三弦” 這四個基本譜字。另外,由于我們預先建立了從漢字到基本譜字自造字編碼之間的映射關 系,所以就能夠得到對應的四個基本譜字的Unicode碼值。第二步驟中,通過分析一個減字的Unicode串,對該串中的基本譜字進行圖3中的 分析處理,就能夠得到每個基本譜字所對應的在減字中的顯示區(qū)域,需要注意的是我們設 定每個減字的顯示區(qū)域都是從左上角坐標(0,0)到右下角坐標(100,100)的矩形區(qū)域,所 以基本譜字的顯示區(qū)域也應該在這個范圍內。比如對于上述的四個Unicode基本譜字碼 值,經(jīng)過分析后得到“大指”的顯示區(qū)域是(0,0)到(50,33),“七徽”的顯示區(qū)域是(50,0) 到(50,33),“勾”的區(qū)域(0,33)到(100,100),“三弦”的區(qū)域(25,50)到(53,75)。第三步驟中,最終要把減字顯示到減字圖片頁面中,所以需要知道當前減字在減 字頁面中的位置,將減字頁面分成眾多的行和列,每個減字只能在由行線和列線構成的矩 形區(qū)域中顯示,從而可以很方便的根據(jù)輸出位置的索引號得到對應的位置區(qū)域信息。隨后 在該位置區(qū)域輸出當前減字,輸出時基本單位是對應的基本譜字編碼字形,在原有的位置 區(qū)域坐標的基礎上加上當前減字位置的偏移即可。第四步驟中,在最后輸出一個減字頁圖片時,要在對應的減字譜圖片文件的描述 信息中加入該減字頁面所包含的各種信息,比如頁面本身的各種屬性(行數(shù)、列數(shù)、行高、 列寬等信息)和頁面中所有減字的信息(每個減字的字體、字高等信息)。按照圖4所示的 格式,保存這些信息,就可以在未來對減字頁面進行修改和編輯。下面結合圖2具體說明本發(fā)明對減字譜圖片文件編輯的過程。參見圖2,該圖為本 發(fā)明編輯減字譜圖片文件的流程圖。第一步驟中,判斷本圖片文件格式是否符合標準,如果符合則獲取本圖片文件的 描述信息。我們在圖片文件的描述信息開始處設置了一個字串用來標識,如果未發(fā)現(xiàn)該字 串,則說明本文件并非我們的減字譜圖片文件。第二步驟中,讀取出該文件的描述字串后,把該描述串按照格式轉換成我們的減 字頁面信息,隨后,采用和圖1類似的輸入過程,將減字頁面顯示出來。第三步驟主要描述了對該減字頁面的一些編輯操作的方法??梢詫p字的頁面格 式進行調整,例如對列寬、列數(shù)、行高、行數(shù)等格式的改變。也可以在減字頁面的顯示區(qū)域中 選中某個減字,然后改變該減字內容或者刪除改減字,或者在該減字后面進行新減字的插 入操作。任何編輯操作都會使得整個減字頁面進行重新的繪制,其過程與頁面的顯示過程 一樣。下面結合圖3具體說明本發(fā)明獲取基本譜字編碼的顯示位置區(qū)域的過程。參見圖 2,該圖為本發(fā)明該部分的流程圖。得到一個基本譜字后,判斷它是否是一個帶來左右結構的基本譜字,比如“大指”。 如果是,則將當前基本譜字的寬度進行縮短,比如原本的寬度是100,那么“大指”的寬度變 為50。為了顯示的美觀效果,不同的左右結構基本譜字,它們的寬度縮短比例也不同,比如 “大指”的縮短比例是1/2,而“注”的縮短比例是1/5。如果不是左右結構的基本譜字,那么判斷是否屬于上下結構的譜字,比如“抹”。如果是,則將當前基本譜字的高度進行縮短,其方法類似于對寬度的處理。如果非前兩類,那么查看是否屬于包圍結構的基本譜字,比如“勾”,如果是,則要 給出隨后的基本譜字的顯示區(qū)域,由于包圍類的基本譜字并不多,所以可以手動進行設置, 比如“勾”后面的“三弦”,如果假設“勾”的區(qū)域是(0,0)到(100,100),那么“三弦”的顯示 區(qū)域是(25,30)到(75,80)。如果不屬于前三類,那么查看是否屬于“撮”結構的基本譜字,比如“撮”,如果是, 由于“撮”包含兩個分結構,分結構中的基本譜字串的內容一股都僅限于前三類基本譜字, 所以我們可以采用上面的方法,處理這兩個分結構,最后合成即可。如果不屬于前四類,那么就屬于代表串結束類型的基本譜字,比如”三弦“,使用當 前的顯示位置數(shù)據(jù),一股這種類型的基本譜字出現(xiàn)后,本減字的基本譜字串也就結束了。參見圖4,本發(fā)明實施例提供一種減字譜的計算機生成系統(tǒng),該系統(tǒng)包括=WordS 操作單元、接收單元、編碼轉換單元、存儲單元、減字生成單元、輸出控制單元、狀態(tài)顯示單 元、編輯操作單元和文件操作單元。Word互操作單元,用于在Microsoft Word程序中,在用戶需要輸入或者編輯Word 文檔中的減字譜圖片的時候,通過本單元來調用本系統(tǒng)的主界面,實現(xiàn)輸入與編輯減字譜 的功能。 接收單元,用于接收減字譜的漢字輸入串。存儲單元,用于存儲從漢字到基本譜字的映射關系。編碼轉換單元,利用存儲單元中的映射表,把輸入的漢字轉換成基本譜字的 Unicode 碼值。減字生成單元,將基本譜字的Unicode碼值串進行分析,得到由該串中各基本譜 字在對應減字顯示中的位置數(shù)據(jù)。輸出控制單元,負責將所有已經(jīng)輸入的減字譜的顯示輸出。編輯操作單元,包括針對已有的減字譜的各種編輯操作,主要操作包括修改、刪 除、插入、頁面屬性修改、字體屬性修改操作。狀態(tài)顯示單元,用于顯示本減字譜頁面的各種狀態(tài)信息,從而方便用戶的查看。文件操作單元,用于對減字譜文件的操作,主要包括新建、保存關閉、另存為、文件 格式轉換操作。以上所述僅是本發(fā)明的優(yōu)選實施方式,應當指出,對于本技術領域的普通技術人 員來說,在不脫離本發(fā)明原理的前題下,還可以做出若干改進和潤飾,這些改進和潤飾也應 該視為本發(fā)明的保護范圍。
權利要求
一種古琴減字譜的計算機生成與編輯方法,其特征在于包括以下步驟1)將輸入的減字的漢字意義串劃分,得到每個減字所有基本譜字,并將基本譜字轉換成對應的自造字Unicode碼值,此時一個減字就被轉換成一個Unicode碼值串;2)分析所述減字所包含的Unicode值,確定每一個碼值所代表字形的顯示區(qū)域,記錄該區(qū)域信息,得到當前減字在減字譜圖形頁面中的輸出位置,根據(jù)該區(qū)域信息和減字中包含的基本譜字信息輸出減字,把它顯示在減字圖形頁面中;3)將該減字的基本譜字信息保存到減字譜圖片的描述字符串中,以便后續(xù)對圖片的編輯處理,所述編輯處理的方法包括以下步驟(1)獲取減字譜頁面圖片的描述信息,判斷格式是否符合上述輸入方法定義的輸出格式,否則終止;(2)從描述信息中獲取該減字圖片的數(shù)據(jù)信息,并顯示該圖片;(3)進行頁面格式調整操作,或者選中該減字譜頁面圖片中的某減字,進行對應的編輯操作。
2.如權利要求1所述的一種古琴減字譜的計算機生成與編輯方法,其特征在于在分析 所述減字的漢字意義串時,按照最長漢字長度優(yōu)先匹配的原則進行從左到右匹配,把漢字 串轉換成基本譜字代碼串。
3.如權利要求1所述的一種古琴減字譜的計算機生成與編輯方法,其特征在于輸出減 字時,確定每個基本譜字字形在整個減字字形區(qū)域中顯示位置和大小的算法,通過該算法 得到位置數(shù)據(jù)后,按照基本譜字串的順序,輸出每個基本譜字的字形,由這些譜字字形構成 該減字的顯示字形,并把該字形保存在增強型圖元文件中。
4.如權利要求1所述的一種古琴減字譜的計算機生成與編輯方法,其特征在于輸出的 減字,將被保存在一個圖片中,稱之為減字頁面,該頁面被劃分為多個行和列,其屬性包括 了行數(shù)、列數(shù)、行高、列寬、行間距、列間距、橫排或是縱列顯示模式。
5.如權利要求1所述的一種古琴減字譜的計算機生成與編輯方法,其特征在于減字頁 面按照行和列,劃分出總計個數(shù)是行數(shù)乘以列數(shù)的多個方格區(qū)域,每個減字在一個該方格 區(qū)域中進行顯示。
6.如權利要求1所述的一種古琴減字譜的計算機生成與編輯方法,其特征在于用于保 存減字譜圖形結果的增強型圖元文件的描述信息部分,有著獨特的格式,其中記錄了減字 頁面的所有信息,包括頁面的屬性、所有減字的相關信息,從而能夠對已輸出的減字頁面進 行編輯處理。
7.一種古琴減字譜的計算機生成系統(tǒng),其特征在于設有存儲單元,存儲單元用于保存基本譜字的漢字名稱和對應自定義Unicode碼值,基本 譜字構成減字時的位置區(qū)域信息;接收單元,接收單元用于接收用戶輸入的漢字串;編碼轉換單元,編碼轉換單元用于將用戶輸入串轉化為基本譜字的Unicode碼值串;減字生成單元,減字生成單元用于將基本譜字的Unicode碼值串,轉換成減字圖形;輸出控制單元,輸出控制單元用于控制和實現(xiàn)減字頁的輸出,包括管理頁面的輸出格 式與頁面的各種屬性;編輯操作單元,編輯操作單元用于對減字頁中的某個減字進行編輯操作,包括修改、刪除、插入等操作;狀態(tài)顯示單元,狀態(tài)顯示單元用于顯示減字頁的頁面相關信息; 文件操作單元,文件操作單元用于對減字譜的圖形文件進行操作控制,包括新建、打 開、關閉、轉換、保存、另存等操作功能;Word互操作部分,在Microsoft Word中加入插件,實現(xiàn)在Word中對本系統(tǒng)的調用,并 能夠將編輯后的減字圖片結果保存到Word文檔中去。
8.如權利要求7所述的一種古琴減字譜的計算機生成系統(tǒng),其特征在于還設有轉換單 元,轉換單元用于將指定格式的減字譜的漢字文件轉換成減字譜圖形文件,也可以將由本 系統(tǒng)所輸出的減字譜圖片轉換成減字譜的漢字文件。
全文摘要
一種古琴減字譜的計算機生成、編輯方法與系統(tǒng),涉及一種計算機方法。生成方法為將輸入的減字的漢字意義串劃分,得每個減字所有基本譜字,將基本譜字轉換成對應的自造字Unicode碼值,此時一個減字就被轉換成一個Unicode碼值串;分析所述減字所包含的Unicode值,確定每一個碼值所代表字形的顯示區(qū)域,記錄該區(qū)域信息,得當前減字在減字譜圖形頁面中的輸出位置,根據(jù)該區(qū)域信息和減字中包含的基本譜字信息輸出減字,把它顯示在減字圖形頁面中;將該減字的基本譜字信息保存到減字譜圖片的描述字符串中,以便后續(xù)對圖片的編輯處理。生成系統(tǒng)設有存儲、接收、編碼轉換、減字生成、輸出控制、編輯操作、狀態(tài)顯示、文件操作等單元。
文檔編號G06F17/22GK101944081SQ20101028524
公開日2011年1月12日 申請日期2010年9月17日 優(yōu)先權日2010年9月17日
發(fā)明者關胤, 周昌樂, 齊京峰 申請人:廈門大學