让四柱排盘重新整齐对齐

针对元亨利贞网四柱八字在线排盘的错位问题,用一款严格等宽的中文字体,加上一枚浏览器书签脚本即可修复。

修复逻辑

特殊空格  →  标准空格
中文字符 = 2 × 数字 / 空格

两步缺一不可:只换字体会保留特殊空格,只清空格又无法保证字符占位一致。

为什么会错位?

不是排盘数据出了问题,而是旧式排版方式遇上了现代浏览器的字体渲染。

  1. 01

    页面依靠空格排版

    老页面没有用现代网格或表格锁定列宽,而是依靠连续空格把天干、地支与数字推到指定位置。

  2. 02

    不换行空格参与计算

    HTML 中的特殊不换行空格( )与普通空格并不完全相同,浏览器替换字体后更容易产生累计偏差。

  3. 03

    系统字体不是严格等宽

    苹方等阅读字体中,汉字、数字与空格的占位比例不固定;数字越多,整行偏移通常越明显。

步骤 1

安装等宽字体

下载字体文件后双击打开,选择“安装字体”。安装一次即可,浏览器会自动识别它。

LXGWWenKaiMono-Regular.ttf

霞鹜文楷等宽 · TrueType 字体

下载字体
步骤 2

添加“一键对齐排盘”书签

先显示浏览器书签栏,再把下面按钮直接拖进去。也可以复制代码,手动粘贴到书签的“网址”栏。

把按钮拖到书签栏

按住按钮并拖到浏览器书签栏,名称会自动保存为“一键对齐排盘”。

一键对齐排盘
Bookmarklet JavaScript
javascript:(function(){var w=document.createTreeWalker(document.body,4,null,!1);var n;while(n=w.nextNode()){if(!n.parentElement||!n.parentElement.closest('script,style,noscript,textarea')){n.nodeValue=n.nodeValue.replace(/\u00A0/g,' ');}}var old=document.getElementById('luosir-bazi-align');if(old)old.remove();var s=document.createElement('style');s.id='luosir-bazi-align';s.textContent='*, font, span, td, div { font-family: "LXGW WenKai Mono", "霞鹜文楷等宽", monospace !important; font-size: 16px !important; white-space: pre !important; letter-spacing: 0 !important; word-spacing: 0 !important; }';document.head.appendChild(s);})();

按钮点不动是正常的:它需要拖入书签栏,或复制代码后手动创建书签。

Chrome 手动添加示意

  1. 1将书签名称改为“一键对齐排盘”。
  2. 2清空“网址”栏,完整粘贴以 javascript: 开头的代码。
  3. 3保存到书签栏,之后在排盘页面点击它。
Chrome 修改书签窗口:名称填写一键对齐排盘,网址粘贴 JavaScript 代码
Chrome“修改书签”窗口填写位置
步骤 3

每次排盘后点一下

  1. 1打开元亨利贞网四柱八字在线排盘,并完成排盘。
  2. 2点击书签栏里的“一键对齐排盘”。
  3. 3页面会立即清理特殊空格并切换为等宽字体;刷新页面即可恢复原样。