像courier new,consolas這些我都試過了,發現空格和字母的寬度是不一樣的,好像是word自己調整字間距了。

請問如何做到數字、英文字母、空格嚴格等寬,然後一個漢字嚴格等於2個字母的寬度,不要讓word自己把字距擠扁或者拉長? 我是寫實驗報告,想在word文檔里插入彙編代碼,彙編代碼對不齊真的好難看哦。百度了幾小時都百度爛了也沒用。。(Markdown我也試過,甚爽,但轉成pdf體驗不太好)

照百度上有些人說的,用notepad++複製所有格式粘貼到word,我試了一下好像也沒什麼卵用啊。。


Word Options -&> Advanced -&> Layout options for: -&> Balance SBCS characters and DBCS characters.

Then Consolas 空格和字母寬度一致。


這個問題的關鍵是Word自動調整了空格的寬度。

格式 -&> 段落 -&> 中文版式:

取消選中【自動調整中文與西文的間距】取消選中【自動調整中文與數字的間距】這樣就可以對齊代碼了。已親測有效。


這個實現起來挺簡單的,剛剛在word上弄了下實現了這個效果,如下:

去改兩個設置:

  1. 把字體設置成inziu Iosevka字體。這個字體裡面西文、數字、空格、特殊符號都嚴格等於二分之一個漢字寬度,目前我只找到這一款字體能實現這個。

2. ctrl 加 a 全選,設置段落裡面的中文樣式如下,主要是取消調整中文和西文/數字的間距、允許西文在單詞中間換行、設置左對齊等等。如果還是沒對齊就再按別的各個選項試一下


Word中代碼用宋體或者DFKai-SB(標楷體)就可以保證英文字元和空格都是等寬的。
Word里有對齊網格的功能,每行字數固定(數值自定義),按網格對齊;似乎是對整個文檔生效,不能對部分段落生效。我上次用這個功能是四五年前,標準的名字早就忘記了……最近電腦送修,也沒法找來截圖給你,遺憾……

按 @Ai Ta 的方法摸索了一下 按下面設置出來的空格和字母的寬度是一樣的

但是不知道會有什麼其他影響

其實還有一種方法就是代碼用tab縮進 然後在word裡面設置製表位 不過麻煩一點


這個真是難辦。

Courier New 字元在word中是等寬的,但是Courier New格式的空格不是,讓人非常惱火。

我曾經這麼處理這個問題。比較笨,沒辦法,但如果需求不複雜的話還是有效的。

建一個兩列的表格,左列粘代碼,右列粘注釋,絕對對齊!


謝邀


推薦閱讀:
相关文章