MarkFormat,一個在Word中使用Mark進行格式化的插件
- 2021 年 3 月 7 日
- 筆記
- c#, TidyScripr, VSTO, Word
MarkFormat(標記格式化),是一款在Word中基於標記進行格式化的工具。
讓我們看下具體效果。
首先是有標記的文本
點擊格式化之後
點擊去除標記之後(去除標記也會進行格式化)
如果想要恢復標記,點擊「恢復上一次 去除標記 的數據」
MarkFormat支援哪些標記呢?
- # 或 多個#,如「#這是一個段落」,「##這也是一個段落」
- “,這是一對符號,Tab鍵上面那個鍵,如「#這雖然是一個段落,但`我想變大`」
- “style_label:xxxxx`,這是一個自定義格式的標記,如「#你好呀,“big:MarkFormat`」
MarkFormat暫時只支援上述三種標記
- #或多個#,這個標記主要功能是設定段落格式
- “,這個標記主要用來設定常用的格式
- “style_label:xxxxx`,你總會需要一些自定義的格式
MarkFormt這些格式都是固定的嗎?不!
MarkFormat依賴於一個格式化文件
我們打開看看呢
{
"#":"font-name:宋體,Times New Roman;font-size:三號;font-bold:true;align:center;level:1;",
"##":"font-name:宋體,Times New Roman;font-size:14pt;font-bold:true;align:center;level:2;",
"quote":"font-name:宋體,Times New Roman;font-size:32pt;font-bold:true;",
"big":"font-name:宋體,Times New Roman;font-size:72pt;font-bold:true;"
}
「#」和「##」是不是很好理解?那麼「quote」是什麼呢?其實就是「“」的別名。而「big」是需要這麼用的:「“big:是的,我很大,我有72Points大`」
總共有多少子格式呢?暫時只有如下:
- font-name:fn1,fn2
- font-size:12pt
- font-bold:true/false
- align:left/center/right/wrap/justify。這是段落對齊方式。
- first-line:none/2c/-2c/3pt/-3pt。這是首行格式。2c表示首行縮進2個字元
- line-space:2pt。行間距。
- line-rule:atleaset/1pt5/double/exactly/multiply/single。這個需要搭配line-space使用。
- line-after:2pt。段前。
- line-before:2pt。段後。
- level:1/2/3/4/5/6/7/8/9/正文。大綱級別。
那麼如何獲取這個插件呢?
首先,下載WordLab,這是一個Word二次開發插件,在裡面可以用類C#腳本開發具體插件。MarkFormat就是基於此開發的。
這是一個標準的VSTO插件,下面只需要打開setup.exe,即可完成安裝
安裝完成後,打開Office Word即可找到:
下面下載MarkFormat插件,解壓
在Word中,點擊插件管理,然後右鍵列表,點擊添加,選擇「MarkFormat.標記格式化.csc」,關閉「插件管理」即可
至此,插件基本安裝完成,下面就是設置格式化文件
首先,點擊「標記格式化」
然後,點擊「打開」
在打開的文件夾中新建一個文件「示例格式化文件.json」,並複製粘貼下面文本
{
"#":"font-name:宋體,Times New Roman;font-size:三號;font-bold:true;align:center;level:1;",
"##":"font-name:宋體,Times New Roman;font-size:14pt;font-bold:true;align:center;level:2;",
"quote":"font-name:宋體,Times New Roman;font-size:32pt;font-bold:true;",
"big":"font-name:宋體,Times New Roman;font-size:72pt;font-bold:true;"
}
點擊「刷新下拉列表」
在Word中輸入如下內容,點擊「去除標記」
\#這是段落格式,\
但我需要更大的字體`,“big:我覺得不夠大!“
我這邊的效果是:
Enjoy
VSTO
核心功能一切基於TidyScriptCore,小組://group.cnblogs.com/180073/
WordLab使用到了ICsharp.Editor
TidyScriptCore一切基於C#和TidyScript標準