利用VBA将Word文档修改为符合EPUB3标准规范的HTML文件

发布于:2025-06-21 ⋅ 阅读:(17) ⋅ 点赞:(0)

Word本身具有将docx文件转换为HTML文件的功能,但是转换出来的HTML文档源代码令人不忍卒读,占用空间大,可维护性极差,如果想给HTML文档加上点自定义交互行为,也不是一般的麻烦。如果文档中包含注释,对于Word文档来说,因为文件分页固定,脚注比尾注更方便阅读,但是EPUB文件并无固定分页,所以用符合EPUB3标准规范的交叉链接处理注释才更方便阅读,Word自带的转换为HTML文件功能是无法完成这一任务的。在这种情况下,用VBA结合文本编辑器完成文件格式转换,就是一个非常好的选择。以如下Word文档为例进行演示:

上面是Word文档中的一个典型页面,其中有脚注,有双行夹批,双行夹批前后有一个或两个大括号作为标志。转换成HTML文件后显示像下面这个样子:

上面的注释引用与注释内容之间的跳转在浏览器中以交叉链接的模式进行交互,如果最终制作成符合EPUB3标准的EPUB文件,点击正文中的注释引用的时候会弹出一个信息框,其中包含注释内容。完成这一转换的步骤如下:

1、脚注转换为尾注:

Sub 脚注转换为尾注()
 
    Dim aFootnote As Footnote, Note$
    ' 遍历文档中所有脚注
    For Each aFootnote In ActiveDocument.Footnotes
        ' 将光标定位到脚注引用所在位置
        aFootnote.Reference.Select
        ' 记录脚注内容
        Note = aFootnote.Range.Text
        ' 删除脚注。必须先删除脚注,否则Selection.Endnotes.Add方法
        ' 执行时参数Range赋值为Selection.Range会引发类型不匹配错误
        aFootnote.Delete
        ' 在光标所在位置添加尾注
        With Selection
            With .EndnoteOptions
                .Location = wdEndOfSection
                .NumberingRule = wdRestartContinuous
                .StartingNumber = 1
                .NumberStyle = 28 ' 带圈数字
            End With
            .Endnotes.Add Range:=.Range, Reference:="", Text:=Note
        End With
    Next
    
End Sub

2、将注释引用与注释内容修改为为带EPUB3规范的属性的交叉链接

Sub 尾注改为epub式交叉链接()
    Dim anEndnote As Endnote, Note$, i%, href$, para As Paragraph
    Set para = ActiveDocument.Paragraphs.Add
    ' 添加将尾注与正文隔开的标签及尾注块的起始标签
    para.Range.Text = "<hr/>" & vbCrLf & "<div class=""note-block"">" & vbCrLf
    ' 给交叉链接带上不同章节进行命名
     href = "ch044note"
    ' 遍历文档中所有尾注
    For Each anEndnote In ActiveDocument.Endnotes
        i = i + 1
        ' 将光标定位到尾注引用所在位置
        anEndnote.Reference.Select
        ' 记录尾注内容
        Note = anEndnote.Range.Text
        ' 在文档中增加一个段落,并将注释内容加上带EPUB3规范的链接锚点属性的HTML标签作为其内容
        Set para = ActiveDocument.Paragraphs.Add
        para.Range.Text = "<aside epub:type=""footnote"" id=""" & href & Format(Trim(Str(i)), "00") & _
                        """ class=""comment""><a href=""#ref_" & href & Format(Trim(Str(i)), "00") & """>" & _
                        "[" & Format(i, "0") & "]</a>" & Note & "</aside>" & vbCrLf
        ' 修改尾注引用,改为带EPUB3规范的链接锚点属性的HTML标签的注释编号,原来的尾注自然删除
        anEndnote.Reference.Text = "<a id=""ref_" & href & Format(Trim(Str(i)), "00") & """ epub:type=""noteref"" href=""#" & _
                                href & Format(Trim(Str(i)), "00") & """><sup>" & "[" & Format(i, "0") & "]" & "</sup></a>"
    Next anEndnote
    ' 添加注释块结束标签
    Set para = ActiveDocument.Paragraphs.Add
    para.Range.Text = "</div>" & vbCrLf
End Sub

3、根据段落样式给各个段落加上合适的HTML标签,便于使用CSS调整格式:

Sub 给段落加上合适HTML标签()
    Dim aPara As Paragraph, paraRng As Range
    For Each aPara In ActiveDocument.Paragraphs
        ' 构造出排除了分段符的文本范围并对其进行赋值。不排除分段符将陷入死循环,这是翻书都找不到的知识
        Set paraRng = ActiveDocument.Range(aPara.Range.Start, aPara.Range.End - 1)
        ' 根据段落样式在段落前后加上合适的HTML标签。以下只处理示例文档中使用的样式
        If aPara.Style = "列表段落" Then
            paraRng.Text = "<p class=""content"">" & Left(aPara.Range.Text, Len(aPara.Range.Text) - 1) & "</p>"
        ElseIf aPara.Style = "标题 2" Then
            paraRng.Text = "<h2>" & Left(aPara.Range.Text, Len(aPara.Range.Text) - 1) & "</h2>"
        ElseIf aPara.Style = "标题 3" Then
            paraRng.Text = "<h3>" & Left(aPara.Range.Text, Len(aPara.Range.Text) - 1) & "</h3>"
        ElseIf (aPara.Style = "正文") And (Left(aPara.Range.Text, 1) <> "<") Then
            paraRng.Text = "<p class=""normal"">" & Left(aPara.Range.Text, Len(aPara.Range.Text) - 1) & "</p>"
        ElseIf (aPara.Style = "明显引用") And (Left(aPara.Range.Text, 1) <> "<") Then
            paraRng.Text = "<p class=""zhi-note"">" & Left(aPara.Range.Text, Len(aPara.Range.Text) - 1) & "</p>"
        End If
    Next aPara
End Sub

经过上面的处理,Word文档的内容(这里只截取第四回)变成了下面的样子(只取无格式文本):

<h3>第四回 薄命女偏逢薄命郎 葫芦僧乱判葫芦案</h3>
<p class="zhi-note">【戚】阴阳交结变无伦,幻境生时即是真。秋月春花谁不见,朝晴暮雨自何因。心肝一点劳牵恋,可意偏长遇喜嗔。我爱世缘随分定,至诚相感作痴人。</p>
<p class="zhi-note">请君着眼护官符,把笔悲伤说世途。作者泪痕同我泪,燕山仍旧窦公无。</p>
<p class="normal">题曰:</p>
<p class="normal">捐躯报君恩,未报躯犹在。眼底物多情,君恩或可待。<a id="ref_ch044note01" epub:type="noteref" href="#ch044note01"><sup>[1]</sup></a></p>
<p class="normal">却说黛玉同姊妹们至王夫人处,见王夫人与兄嫂处的来使计议家务,又说姨母家遭人命官司等语。{{【蒙侧】又来一位,宝钗将出现矣。}}因见王夫人事情冗杂,姊妹们遂出来,至寡嫂李氏房中来了。{{【蒙侧】慢慢度入法。}}</p>
<p class="normal">原来这李氏即贾珠之妻。{{【甲戌侧】起笔写薛家事,他偏写宫裁,是结黛玉,明李纨本末,又在人意料之外。}}珠虽夭亡,幸存一子,取名贾兰,今已五岁<a id="ref_ch044note02" epub:type="noteref" href="#ch044note02"><sup>[2]</sup></a>,已入学攻书。这李氏亦系金陵名宦之女,父名李守中,{{【甲戌侧】妙!盖云人能以理自守,安得为情所陷哉!}}曾为国子监祭酒<a id="ref_ch044note03" epub:type="noteref" href="#ch044note03"><sup>[3]</sup></a>,族中男女无有不诵诗读书者。{{【甲戌侧】未出李纨,先伏下李纹、李绮。}}至李守中承继以来,便说“女儿无才便有{{【甲戌侧】“有”字改得好。}}德”,{{【蒙侧】确论。}}故生了李氏时,便不十分令其读书,只不过将些《女四书》、《列女传》、《贤媛集》等三四种书,使他认得几个字、记得这前朝几个贤女便罢了,却只以纺绩井臼为要,因取名为李纨,字宫裁<a id="ref_ch044note04" epub:type="noteref" href="#ch044note04"><sup>[4]</sup></a>。{{【甲戌侧】一洗小说窠臼俱尽,且命名字,亦不见红香翠玉恶俗。}}因此这李纨虽青春丧偶,且居处于膏粱锦绣之中,竟如槁木死灰一般,{{【甲戌侧】此时处此境,最能越(理)[礼]生事,彼竟不然,实罕见者。【蒙侧】反有此等文章。}}一概无见无闻,唯知侍亲养子,外则陪侍小姑等针黹<a id="ref_ch044note05" epub:type="noteref" href="#ch044note05"><sup>[5]</sup></a>诵读而已。{{【甲戌侧】一段叙出李纨,不犯熙凤。【蒙侧】此中不得不有如此人。天地覆载,何物不有?而才子手中,亦何物不有?}}今黛玉虽客寄于斯,日有这般姐妹相伴,除老父外,馀者也就无庸虑及了。{{【甲戌侧】仍是从黛玉身上写来,以上了结住黛玉,复找前文。}}</p>
<p class="normal">如今且说贾雨村,因补授了应天府,一下马,就有一件人命官司详至案下,{{【蒙侧】非雨村难以了结此案。}}乃是两家争买一婢,各不相让,以致殴伤人命。彼时雨村即问原告。那原告道:“被殴死者乃小人之主人。因那日买了一个丫头,不想系拐子所拐来卖的。这拐子先已得了我家银子,我家小爷原说第三日方是好日子,再接入门。{{【甲戌侧】所谓“迟则有变”,往往世人因不经之谈误却大事。}}这拐子便又悄悄的卖与了薛家,被我们知道了,去找那卖主夺取丫头。无奈薛家原系金陵一霸,倚财仗势<a id="ref_ch044note06" epub:type="noteref" href="#ch044note06"><sup>[6]</sup></a>,众豪奴将我主人竟打死了。{{【蒙侧】一派世境恶习活现。}}凶身主仆已皆逃走,无影无踪,只剩了几个局外之人。小人告了一年的状,竟无人作主。{{【蒙侧】悲夫!千古世情,不过如此。}}望大老爷拘拿凶犯,剪恶除凶,以救孤寡,死者感戴天恩不尽<a id="ref_ch044note07" epub:type="noteref" href="#ch044note07"><sup>[7]</sup></a>!”</p>
<p class="normal">雨村听了大怒{{【蒙侧】偏能用反跌法。}}道:“岂有这样放屁的事!打死人命就白白的走了,再拿不来的?”因发签差公人立刻将凶犯族中人拿来拷问,令他们实供藏在何处,一面再动海捕文书。正要发签时,只见案边立着一个门子,使眼色儿不令他发签之意。雨村心中甚是疑怪,{{【甲戌侧】原可疑怪,余亦疑怪。【蒙侧】请看文字递出递转,闲中皆是要笔。}}只得停了手。即时退堂,至密室,使从皆退去,只留下门子一人伏侍。这门子忙上来请安,笑问:“老爷一向加官进禄,八九年来就忘了我了?”{{【甲戌侧】语气傲慢,怪甚!【蒙侧】似闲语,是要人。}}雨村道:“却十分面善得紧,只是一时想不起来。”那门子笑道:“老爷真是贵人多忘事,把出身之地竟忘了,{{【甲戌侧】刹心语。自招其祸,亦因夸能恃才也。}}不记当年葫芦庙里之事了?”雨村听了,如雷震一惊,{{【甲戌侧】余亦一惊,但不知门子何知,尤为怪甚。}}方想起往事<a id="ref_ch044note08" epub:type="noteref" href="#ch044note08"><sup>[8]</sup></a>。原来这门子本是葫芦庙内一个小沙弥,因被火之后,无处安身,欲投别庙去修行,又耐不得清凉景况,因想这件生意倒还轻省热闹,{{【甲戌侧】新鲜字眼。}}遂趁年纪蓄了发,充了门子。{{【甲戌侧】一路奇奇怪怪,调侃世人,总在人意臆之外。}}雨村那里料得是他,便忙携手笑道:“原来是故人。”{{【甲戌侧】妙称!全是假态。}}又让坐了好谈。{{【甲戌侧】假极!}}这门子不敢坐。雨村笑道:“贫贱之交不可忘,{{【甲戌侧】全是奸险小人态度,活现活跳。}}你我故人也,二则此系私室,{{【蒙侧】如此亲近,其先必有故事。}}既欲长谈,岂有不坐之理?”这门子听说,方告了座,斜签着坐了。</p>
<p class="normal">雨村因问方才何故不令发签。这门子道:“老爷既荣任到这一省,难道就没抄一张‘护官符<a id="ref_ch044note09" epub:type="noteref" href="#ch044note09"><sup>[9]</sup></a>’{{【甲戌侧】可对“聚宝盆”,一笑。◇三字从来未见,奇之至!}}来不成?”雨村忙问:“何为‘护官符’?{{【甲戌侧】余亦欲问。}}我竟不知。”门子道:“这还了得!连这不知,怎能作得长远!{{【甲戌侧】骂得爽快!【蒙侧】真是警世之言。使我看之,不知要哭要笑。}}如今凡作地方官者,皆有一个私单,上面写的是本省最有权有势、极富极贵的大乡绅名姓,各省皆然。倘若不知,一时触犯了这样的人家,不但官爵,只怕连性命还保不成呢!{{【甲戌侧】可怜可叹,可恨可气,变作一把眼泪也。【蒙侧】快论。请问其言是乎否乎?}}所以绰号叫作‘护官符’。{{【甲戌侧】奇甚趣甚,如何想来?}}方才所说的这薛家,老爷如何惹得他!他这一件官司并无难断之处,皆因都碍着情分脸面,所以如此。”一面说,一面从顺袋中取出一张抄写的‘护官符’来,递与雨村,看时,上面皆是本地大族名宦之家的谚俗口碑。其口碑排写得明白,下面皆注着始祖官爵并房次。{{【戚夹】此等人家,岂必欺霸方始成名耶?总因子弟不肖,招接匪人,一朝生事则百计营求,父为子隐,群小迎合,虽暂时不罹祸网,而从此放胆,必破家灭族不已,哀哉!【蒙侧】可怜伊等始祖。}}石头亦曾照样抄写一张,{{【甲戌侧】忙中闲笔,用得好。}}今据石上所抄云:</p>
<p class="normal">贾不假,白玉为堂金作马。{{【甲戌侧】宁国、荣国二公之后,共二十房分,除宁、荣亲派八房在都外,现原籍住者十二房。}}<a id="ref_ch044note10" epub:type="noteref" href="#ch044note10"><sup>[10]</sup></a></p>
<p class="normal">阿房宫,三百里,住不下金陵一个史。{{【甲戌侧】保龄侯尚书令史公之后,房分共十八。都中现住者十房,原籍现居八房。}}</p>
<p class="normal">丰年好大雪,{{【甲戌夹】隐“薛”字。}}珍珠如土金如铁。{{【甲戌侧】紫微舍人薛公之后,现领内府帑银行商,共八房分。}}</p>
<p class="normal">东海缺少白玉床,龙王来请金陵王<a id="ref_ch044note11" epub:type="noteref" href="#ch044note11"><sup>[11]</sup></a>。{{【甲戌侧】都太尉统制县伯王公之后,共十二房。都中二房,馀皆在籍。}}<a id="ref_ch044note12" epub:type="noteref" href="#ch044note12"><sup>[12]</sup></a></p>
<p class="normal">雨村犹未看完,{{【甲戌眉】妙极!若只有此四家,则死板不活,若再有两家,又觉累赘,故如此断法。}}忽闻传点人报:“王老爷来拜。”雨村听说,忙具衣冠出去迎接。{{【甲戌侧】横云断岭法,是板定大章法。}}有顿饭工夫,方回来细问<a id="ref_ch044note13" epub:type="noteref" href="#ch044note13"><sup>[13]</sup></a>。这门子道:“这四家皆连络有亲,一损皆损,一荣皆荣,扶持遮饰,皆有照应的。{{【甲戌侧】早为下半部伏根。【蒙侧】此四家不相为结亲,则无门当户对者,亦理势之必然。既结亲之后,岂不照应,又人情之不可无。}}今告打死人之薛,就系‘丰年大雪’之薛也。不单靠这三家,他的世交亲友在都在外者,本亦不少。老爷如今拿谁去?”雨村听如此说,便笑问门子道:“如你这样说来,却怎么了结此案?你大约也深知这凶犯躲的方向了?”</p>
<p class="normal">门子笑道:“不瞒老爷说,不但这凶犯躲的方向我知道,一并这拐卖之人{{【甲戌侧】斯何人也。}}我也知道,死鬼买主也深知道。待我细说与老爷听:{{【蒙侧】放胆一说,毫无避忌。世态人情被门子参透了。}}这个被打之死鬼,乃是本地一个小乡宦之子,名唤冯渊,{{【甲戌侧】真真是冤孽相逢。}}自幼父母早亡,又无兄弟,只他一个人守着些薄产过日。{{【蒙侧】我为幼而失父母者一哭。}}长到十八九岁上,酷爱男风,最厌女子。{{【甲戌侧】最厌女子,仍为女子丧生,是何等大笔!不是写冯渊,正是写英莲。}}这也是前生冤孽,可巧{{【甲戌侧】善善恶恶,多从可巧而来,可畏可怕。}}遇见这拐子卖丫头,他便一眼看上了这丫头,立意买来作妾,立誓再不交结男子,{{【甲戌侧】谚云:“人若改常,非病即亡。”信有之乎?}}也再不娶第二个了,{{【甲戌侧】虚写一个情种。【蒙侧】也是幻中情魔。}}所以三日后方过门。谁晓这拐子又偷卖与了薛家,{{【蒙侧】一定情即了结,请问是幻不是?点醒幻字,人皆不醒。我今日看了、批了,仍也是不醒。}}他意欲卷了两家银子,再逃往他省。谁知又不曾走脱,两家拿住,打了个臭死,都不肯收银,只要领人。那薛家公子岂是让人的,便喝着手下人一打,将冯公子打了个稀烂,{{【蒙侧】有情反是无情。}}抬回家去,三日死了。这薛公子原是早已择定日子上京去的<a id="ref_ch044note14" epub:type="noteref" href="#ch044note14"><sup>[14]</sup></a>,头起身两日前,就偶然遇见了这丫头,意欲买了就进京的,谁知闹出这事来。既打了冯公子,夺了丫头,他便没事人一般,只管带了家眷走他的路。他这里自有兄弟奴仆在此料理,并不为此些些小事值得他一逃走的。{{【甲戌侧】妙极!人命视为“些些小事”,总是刻画阿呆耳。}}这且别说,老爷你当被卖之丫头是谁?”{{【甲戌侧】问得又怪。}}雨村道:“我如何得知?”门子冷笑道:“这人算来还是老爷的大恩人呢!{{【蒙侧】当心一脚。请看后文,并无蹴动。}}他就是葫芦庙旁住的甄老爷的小姐,名唤英莲的。”{{【甲戌侧】至此一醒。}}雨村罕然道:“原来就是他!闻得养至五岁被人拐去,却如今才来卖呢?”{{【蒙侧】“闻得”只说一层,并无言及要娇杏自道(子)[之]语。非作者忘怀,欲写世态,故作幻笔。}}</p>
<p class="normal">门子道:“这一种拐子单管偷拐五六岁的儿女,养在一个僻静之处,到十一二岁时,度其容貌,带至他乡转卖。当日这英莲我们天天哄他顽耍,虽隔了七八年,如今十二三岁的光景,其模样虽然出脱得齐整好些,然大概相貌,自是不改,熟人易认。况且他眉心中原有米粒大小的一点胭脂㾵<a id="ref_ch044note15" epub:type="noteref" href="#ch044note15"><sup>[15]</sup></a>,从胎里带来的,{{【甲戌侧】宝钗之热,黛玉之怯,悉从胎中带来。今英莲有㾵,其人可知矣。}}所以我却认得。偏生这拐子又租了我的房舍居住,{{【戚夹】作者要说容貌势力,要说情,要说幻,又要说小人之居心,豪强之托大,了结前文旧案,铺设后文根基。点明英莲,收叙宝钗等项诸事:只借先之沙弥、今日门子之口层层叙来,真是大悲菩萨,千手千眼一时转动,毫无遗露。可见具大光明者,故无难事,诚然。}}那日拐子不在家,我也曾问他。他是被拐子打怕了的,{{【甲戌侧】可怜!【蒙侧】世家子女至此。可想见其先世亦必有如薛公子者。}}万不敢说,只说拐子系他亲爹,因无钱偿债,故卖他。我又哄之再四,他又哭了,{{【蒙侧】写其心机,总为后文。}}只说:‘我原不记得小时之事!’这可无疑了。那日冯公子相看了,兑了银子,拐子醉了,他自叹道:‘我今日罪孽可满了!’{{【蒙侧】天下英雄,失足匪人,偶得机会可以跳出者,与英莲同声一哭!}}后又听得冯公子三日后才娶过门,他又转有忧愁之态。我又不忍其形景,等拐子出去,又命内人去解释他:‘这冯公子必待好日期来接,可知必不以丫鬟相看。况他是个绝风流人品,家里颇过得,素习又最厌恶堂客<a id="ref_ch044note16" epub:type="noteref" href="#ch044note16"><sup>[16]</sup></a>,今竟破价买你,后事不言可知。只耐得三两日,何必忧闷!’{{【蒙侧】良人者所望而终身也。}}他听如此说,方才略解忧闷,自为从此得所。谁料天下竟有这等不如意事,{{【甲戌侧】可怜真可怜!◇一篇《薄命赋》,特出英莲。【蒙侧】天下同患难者同来一哭!}}第二日,他偏又卖与了薛家。若卖与第二个人还好,这薛公子的混名人称‘呆霸王’,最是天下第一个弄性尚气的人,而且使钱如土,{{【甲戌侧】世路难行钱作马。【蒙侧】“使钱如土”,方能称霸王。}}遂打了个落花流水,生拖死拽,把个英莲拖去,如今也不知死活。{{【甲戌侧】为英莲留后步。}}这冯公子空喜一场,一念未遂,反花了钱,送了命,岂不可叹!”{{【甲戌眉】又一首《薄命叹》。英、冯二人一段小悲欢幻景从葫芦僧口中补出,省却闲文之法也。所谓“美中不足,好事多魔”,先用冯渊作一开路之人。}}</p>
<p class="normal">雨村听了,亦叹道:“这也是他们的孽障遭遇,亦非偶然。不然这冯渊如何偏只看准了这英莲?这英莲受了拐子这几年折磨,才得了个头路,且又是个多情的,若能聚合了,倒是一件美事,偏又生出这段事来。{{【蒙侧】冯渊之事之人,是英莲之幻景中之痴情人。}}这薛家纵比冯家富贵,想其为人,自然姬妾众多,淫佚无度,未必及冯渊定情于一人者。这正是梦幻情缘,{{【蒙侧】点明白了,直入本题。}}恰遇见一对薄命儿女。{{【甲戌眉】使雨村一评,方补足上半回之题目。所谓此书有繁处愈繁,省中愈省;又有不怕繁中繁,只要繁中虚;不畏省中省,只要省中实。此则省中实也。}}且不要议论他,只目今这官司,如何剖断才好?”门子笑道:“老爷当年何等明决,今日何翻成个没主意的人了<a id="ref_ch044note17" epub:type="noteref" href="#ch044note17"><sup>[17]</sup></a>!{{【蒙侧】利欲薰心,必致如此。}}小的闻得老爷补升此任,亦系贾府、王府之力,此薛蟠即贾府之老亲,老爷何不顺水行舟,做个整人情,将此案了结,日后也好见贾、王二公的。”雨村道:“你说的何尝不是。{{【甲戌侧】可发一长叹。这一句已见奸雄,全是假。}}但事关人命,蒙皇上隆恩,起复委用,{{【甲戌侧】奸雄。}}实是重生再造,正当殚心竭力图报之时,{{【甲戌侧】奸雄。}}岂可因私而废法<a id="ref_ch044note18" epub:type="noteref" href="#ch044note18"><sup>[18]</sup></a>?{{【甲戌侧】奸雄。【蒙侧】良明不昧势难当。}}是我实不能忍为者。”{{【甲戌侧】全是假。}}门子听了,冷笑道:“老爷说的何尝不是大道理,但只是如今世上是行不去的。岂不闻古人有云‘大丈夫相时而动’,{{【蒙侧】误尽多少苍生!}}又曰‘趋吉避凶者为君子’。{{【甲戌侧】近时错会书意者多多如此。}}依老爷这一说,不但不能报效朝廷,亦且自身不保,{{【蒙侧】说了来也是一团道理。}}还要三思为妥。”</p>
<p class="normal">雨村低了半日头,{{【甲戌侧】奸雄欺人。}}方说道:“依你怎么样?”门子道:“小人已想了个极好的主意在此:老爷明日坐堂,只管虚张声势,动文书发签拿人。原凶自然是拿不来的,原告固是定要将薛家族中及奴仆人等拿几个来拷问。小的在暗中调停,令他们报个暴病身亡,合族中及地方上共递一张保呈,老爷只说善能扶鸾请仙,堂上设下乩坛,令军民人等只管来看。老爷就说:‘乩仙批了,死者冯渊与薛蟠原因夙孽相逢,今狭路既遇,原应了结。薛蟠今已得无名之症,{【{甲戌侧】“无名之症”却是病之名,而反曰“无”,妙极!}}被冯魂追索已死。其祸皆由拐子某人而起,拐之人原系某乡某姓人氏,按法处治,馀不略及’等语。小人暗中嘱托拐子,令其实招。众人见乩仙批语与拐子相符,馀者自然也都不虚了。薛家有的是钱,老爷断一千也可,五百也可,与冯家作烧埋之费。那冯家也无甚要紧的人,不过为的是钱,见有了这个银子,想也就无话了。老爷细想此计如何?”雨村笑道:“不妥,不妥。{{【甲戌侧】奸雄欺人。}}<a id="ref_ch044note19" epub:type="noteref" href="#ch044note19"><sup>[19]</sup></a>等我再斟酌斟酌,{{【蒙侧】一张口就是了结,真腐臭。以“再斟酌”收结,真是不凡之笔。}}或可压服口声。”二人计议,天色已晚,别无话说。</p>
<p class="normal">至次日坐堂,勾取一应有名人犯,雨村详加审问,果见冯家人口稀疏,不过赖此欲多得些烧埋之费,{{【甲戌侧】因此三四语收住,极妙!此则重重写来,轻轻抹去也。}}薛家仗势倚情,偏不相让,故致颠倒未决。雨村便徇情枉法,胡乱判断了此案。{{【甲戌侧】实注一笔,更好。不过是如此等事,又何用细写。可谓“此书不敢干涉廊庙”者,即此等处也,莫谓写之不到。盖作者立意写闺阁尚不暇,何能又及此等哉!}}冯家得了许多烧埋银子,也就无甚话说了。{{【甲戌眉】盖宝钗一家不得不细写者。若另起头绪,则文字死板,故仍只借雨村一人穿插出阿呆兄人命一事,且又带叙出英莲一向之行踪,并以后之归结,是以故意戏用“葫芦僧乱判”等字样,撰成半回,略一解颐,略一叹世,盖非有意讥刺仕途,实亦出人之闲文耳。◇又注冯家一笔,更妥。可见冯家正不为人命,实赖此获利耳。故用“乱判”二字为题,虽曰不涉世事,或亦有微辞耳。但其意实欲出宝钗,不得不做此穿插,故云此等皆非《石头记》之正文。}}雨村断了此案,急忙作书信二封,与贾政并京营节度使王子腾,{{【甲戌侧】随笔带出王家。}}不过说“令甥之事已完,不必过虑”等语。此事皆由葫芦庙内之沙弥新门子所出,雨村又恐他对人说出当日贫贱时的事来,因此心中大不乐业。{{【甲戌侧】瞧他写雨村如此,可知雨村终不是大英雄。}}后来到底寻了个不是,远远的充发了才罢。{{【甲戌侧】至此了结葫芦庙文字。◇又伏下千里伏线。◇起用“葫芦”字样,收用“葫芦”字样,盖云一部书皆系葫芦提之意也,此亦系寓意处。【蒙侧】口如悬河者,当于出言时小心。}}<a id="ref_ch044note20" epub:type="noteref" href="#ch044note20"><sup>[20]</sup></a></p>
<p class="normal">当下言不着雨村。且说那买了英莲、打死冯渊的薛公子,{{【甲戌侧】本是立意写此,却不肯特起头绪,故意设出“乱判”一段戏文,其中穿插,至此却淡淡写来。}}亦系金陵人氏,本是书香继世之家。{{【蒙侧】为书香人家一叹。}}只是如今这薛公子幼年丧父,寡母又怜他是个独根孤种,未免溺爱纵容些,{{【蒙侧】受病处。富而且孤,自多溺爱。孟母三迁,故难再见。}}遂致老大无成,且家中有百万之富,现领着内帑钱粮,采办杂料。这薛公子学名薛蟠,字表文龙,今年方十有五岁,性情奢侈,言语傲慢。虽也上过学,不过略识几字,{{【甲戌侧】这句加于老兄,却是实写。}}终日惟有斗鸡走马,游山玩水而已。虽是皇商,一应经纪世事,全然不知,不过赖祖父旧日的情分,户部挂虚名,支领钱粮,其馀事体,自有伙计老家人等措办。寡母王氏,乃现任京营节度使<a id="ref_ch044note21" epub:type="noteref" href="#ch044note21"><sup>[21]</sup></a>王子腾之妹,与荣国府贾政的夫人王氏,是一母所生的姊妹,今年方四十上下年纪,只有薛蟠一子。{{【蒙侧】非母溺爱,非家道殷实,非节度、荣国之至亲,则不能到如此强霸。富贵者其思之。}}还有一女,比薛蟠小两岁,乳名宝钗,{{【戚夹】初见。}}生得肌骨莹润,举止娴雅<a id="ref_ch044note22" epub:type="noteref" href="#ch044note22"><sup>[22]</sup></a>。{{【甲戌侧】写宝钗只如此,更妙!}}当日有他父亲在日,酷爱此女,令其读书识字,较之乃兄竟高过十倍。{{【甲戌侧】又只如此写来,更妙!}}自父亲死后,见哥哥不能体贴母怀,他便不以书字为事,只留心针黹家计等事,好为母亲分忧解劳。近因今上崇诗尚礼,征采才能,降不世出之隆恩,除聘选妃嫔外,凡世宦名家之女,皆亲名达部,以备选择为公主、郡主入学陪侍,充为才人、赞善之职。{{【甲戌侧】一段称功颂德,千古小说中所无。}}二则自薛蟠父亲死后,各省中所有的买卖承局、总管、伙计人等,见薛蟠年轻不识世事,便趁时拐骗起来,{{【蒙侧】我为创家立业者一哭。}}京都中几处生意,渐亦消耗。{{【蒙侧】有(制)[治]人,无(制)[治]法。}}薛蟠素闻得都中乃第一繁华之地,正思一游,便趁此机会,一为送妹待选<a id="ref_ch044note23" epub:type="noteref" href="#ch044note23"><sup>[23]</sup></a>,二为望亲,三因亲自入部销算旧账目,再计新支,其实则为游览上国风景之意。因此早已打点下行装细软,以及馈送亲友各色土物人情等类,正择日已定,不想偏遇见了那拐子重卖英莲。薛蟠见英莲生得不俗,{{【甲戌侧】阿呆兄亦知不俗,英莲人品可知矣。}}立意买了,又遇冯家来夺人,因恃强喝令手下豪奴将冯渊打死。他便将家中事务嘱了族中人并几个老家人,他便同了母妹竟自起身长行去了。{{【蒙侧】破销不顾业已之事,业已如此,倒是走的妙。}}人命官司一事,他却视为儿戏,自为花上几个臭钱,没有不了的。{{【甲戌侧】是极!人谓薛蟠为呆,余则谓是大彻悟。}}</p>
<p class="normal">在路不计其日。{{【甲戌侧】更妙!必云程限,则又有落套,岂暇又记路程单哉?}}那日已将入都时,却又闻得母舅王子腾升了九省统制<a id="ref_ch044note24" epub:type="noteref" href="#ch044note24"><sup>[24]</sup></a>,奉旨出都查边。{{【蒙侧】天下之母舅再无不教外甥以正途者。必使其升任出京,亦是留下文地步。}}薛蟠心中暗喜道:“我正愁进京去有个嫡亲的母舅管辖着,不能任意挥霍挥霍,偏如今又升出去了,可知天从人愿。”{{【甲戌侧】写尽五陵心意。【蒙侧】写不肖子弟如画。}}因和母亲商议道:“咱们京中虽有几处房舍,只是这十来年没人进京居住,那看守的人未免偷着租赁与人,须得先着几人去打扫收拾才好。”他母亲道:“何必如此招摇!咱们这一进京,原是先拜望亲友,或是在你舅舅家,{{【甲戌侧】陪笔。}}或是你姨爹<a id="ref_ch044note25" epub:type="noteref" href="#ch044note25"><sup>[25]</sup></a>家。{{【甲戌侧】正笔。}}他两家的房舍极是方便的,咱们先能着住下,再慢慢的着人去收拾,岂不消停些。”薛蟠道:“如今舅舅正升了外省去,家里自然忙乱起身。{{【蒙侧】好游荡不要管束的子弟,每惯会说此等话。}}咱们这工夫反一窝一拖的奔了去,岂不没眼色些?”他母亲道:“你舅舅家虽升了去,还有你姨爹家。况这几年来,你舅舅、姨娘两处,每每带信捎书,接咱们来。如今既来了,你舅舅虽忙着起身,你贾家的姨娘未必不苦留我们。咱们且忙忙收拾房舍,岂不使人见怪?{{【甲戌侧】闲语中补出许多前文,此画家之云罩峰尖法也。}}你的意思我却知道,{{【甲戌侧】知子莫如父。}}守着舅舅、姨爹住着,未免拘紧了你,不如你各自住着,好任意施为的。{{【甲戌侧】寡母孤儿一段,写得毕肖毕真。【蒙侧】用为子不得放荡一逼,再收入本意。}}你既如此,你自己去挑所宅子去住。我和你姨娘,姊妹们别了这几年,却要厮守几日,我带了你妹子去投你姨娘家去,{{【甲戌侧】薛母亦善训子。}}你道好不好?”薛蟠见母亲如此说,情知扭不过的<a id="ref_ch044note26" epub:type="noteref" href="#ch044note26"><sup>[26]</sup></a>,{{【蒙侧】情理如真。}}只得吩咐人夫一路奔荣国府来。</p>
<p class="normal">那时王夫人已知薛蟠官司一事,亏贾雨村就中维持了结,才放了心。又见哥哥升了边缺,正愁又少了娘家亲戚来往,{{【甲戌侧】大家尚义,人情大都是也。}}略加寂寞。过了几日,忽家人传报:“姨太太带了哥儿姐儿,合家进京,正在门外下车。<a id="ref_ch044note27" epub:type="noteref" href="#ch044note27"><sup>[27]</sup></a>”{{【蒙侧】开留住之根。}}喜的王夫人忙带了媳妇、女儿人等,接出大厅,将薛姨妈等接了进去。姊妹们暮年相见,自不必说悲喜交集,泣笑叙阔一番。忙又引了拜见贾母,将人情土物各种酬献了,合家俱厮见了,忙又治席接风。</p>
<p class="normal">薛蟠已拜见过贾政,贾琏又引着拜见了贾赦、贾珍等。贾政便使人上来对王夫人说:“姨太太已有了春秋,外甥年轻不知世路,在外住着恐有人生事。咱们东北角上梨香院<a id="ref_ch044note28" epub:type="noteref" href="#ch044note28"><sup>[28]</sup></a>{{【甲戌侧】好香色。}}一所十来间白空闲,赶着打扫了,请姨太太和哥儿姐儿住了甚好。”{{【甲戌眉】用政老一段,不但王夫人得体,且薛母亦免靠亲之嫌。}}王夫人未及留,贾母也就遣人来说“请姨太太就在这里住下,大家亲密些”等语。{{【甲戌侧】老太君口气,得情。◇偏不写王夫人留,方不死板。}}薛姨妈正要同居一处,方可拘紧些儿子,若另住在外,又恐他纵性惹祸,{{【蒙侧】父母为子弟处每每如此。}}遂忙道谢应允。又私与王夫人说明:“一应日费供给一概免却,{{【甲戌侧】作者题清,犹恐看官误认今之靠亲投友者一例。}}方是处常之法。”{{【蒙侧】补足。真是一丝不漏。}}王夫人知他家不难于此,遂亦从其愿。从此后,薛家母子就在梨香院<a id="ref_ch044note29" epub:type="noteref" href="#ch044note29"><sup>[29]</sup></a>中住了。</p>
<p class="normal">原来这梨香院即当日荣公暮年养静之所,小小巧巧,约有十馀间房舍,前厅后舍俱全。另有一门通街,薛蟠家人就走此门出入。西南有一角门,通一夹道,出了夹道便是王夫人正房的东院了。每日或饭后,或晚间,薛姨妈便过来,或与贾母闲谈,或和王夫人相叙。宝钗日与黛玉、迎春姊妹等一处,{{【甲戌眉】金玉初见,却如此写,虚虚实实,总不相犯。}}或看书着棋,或作针黹,倒也十分乐业。{{【甲戌侧】这一句衬出后文黛玉之不能乐业,细甚妙甚!}}只是薛蟠起初之心,原不欲在贾宅中居住者,但恐姨父管约拘禁,料必不自在的,无奈母亲执意在此,且贾宅中又十分殷勤苦留,只得暂且住下,一面使人打扫出自家的房屋,再移居过去的。{{【甲戌侧】交代结构,曲曲折折,笔墨尽矣。}}谁知自在此间住了不上一月的日期,贾宅族中凡有的子侄,俱已认熟了一半,凡是那些纨绔气习者,莫不喜与他来往,今日会酒,明日观花,甚至聚赌嫖娼,渐渐无所不至,引诱的薛蟠比当日更坏了十倍。{{【甲戌侧】虽说为纨绔设鉴,其意原只罪贾宅,故用此等句法写来。【蒙侧】膏粱子弟每习成的风化。处处皆然,诚为可叹!}}虽说贾政训子有方,治家有法,{{【甲戌侧】八字特洗出政老来,又是作者隐意。}}<a id="ref_ch044note30" epub:type="noteref" href="#ch044note30"><sup>[30]</sup></a>一则族大人多,照管不到这些,二则现任族长乃是贾珍,彼乃宁府长孙,又现袭职,凡族中<a id="ref_ch044note31" epub:type="noteref" href="#ch044note31"><sup>[31]</sup></a>事,自有他掌管,三则公私冗杂,且素性潇洒,不以俗务为要,每公暇之时,不过看书着棋而已,{{【戚夹】其用笔墨何等灵活,能足前摇后,即境生文,真到不期然而然,所谓水到渠成,不劳着力者也。}}馀事多不介意。况且这梨香院相隔两层房舍,又有街门另开,任意可以出入,{{【蒙侧】既为作姨父的开一条生路。若无此段,则姨父非木偶即不仁,则不成为姨父矣。}}所以这些子弟们竟可以放意畅怀的闹,因此,遂将移居之念,渐渐打灭了<a id="ref_ch044note32" epub:type="noteref" href="#ch044note32"><sup>[32]</sup></a>。</p>
<p class="zhi-note">【戚】总评:看他写一宝钗之来,先以英莲事逼其进京,及以舅氏官出,惟姨可倚。辗转相逼来,且加以世态人情,隐(跃)[约]其间,如人饮醇酒,不期然而已醉矣。</p>
<hr/>
<div class="note-block">
<aside epub:type="footnote" id="ch044note01" class="comment"><a href="#ref_ch044note01">[1]</a>吴注:底本无此回前诗,列、杨本有,文字小异,据两本互校补录。</aside>
<aside epub:type="footnote" id="ch044note02" class="comment"><a href="#ref_ch044note02">[2]</a>从此处看,贾兰约比宝玉小两岁,至第9回闹私塾都基本合理,但26回宝玉“看见贾兰拿着一张小弓在追两只小鹿”,并且象对幼儿一样跟贾兰说话,两人的年龄差距又应该很大。这也是此书中存在大宝玉与小宝玉的迹象之一。</aside>
<aside epub:type="footnote" id="ch044note03" class="comment"><a href="#ref_ch044note03">[3]</a>犹如国立最高学府校长。明初为正四品,后改为从四品,清为从四品,为声望较高的文官。</aside>
<aside epub:type="footnote" id="ch044note04" class="comment"><a href="#ref_ch044note04">[4]</a>曹学派因李纨这个名字有织造之意,称李纨是来自苏州制造李煦家的人,引为曹公为曹寅子孙的论据。有索隐派以李纨判词“桃李春风结子完”含有李子成熟的意思称李纨影射李自成,而李自成虽登帝位不久却败亡,与李纨判词有相合之处。也有索隐派认为李纨是礼教的政治隐喻,贾府败后唯有她还有晚韶华,是古人礼治天下的观念体现。各执一词,各自附会。</aside>
<aside epub:type="footnote" id="ch044note05" class="comment"><a href="#ref_ch044note05">[5]</a>音zhǐ。针黹,针线活。李纨“无见无闻”与写宝钗生活的28回“雨打梨花深闭门” 、55回“摇头三不知”有类似处,贾玉出家有若贾珠之死,李纨的生活影射宝玉走后宝钗的生活。</aside>
<aside epub:type="footnote" id="ch044note06" class="comment"><a href="#ref_ch044note06">[6]</a>此处原告的话只强调薛氏倚自己之财,仗亲戚之势,可见薛氏并非与贾府相埒的贵族。</aside>
<aside epub:type="footnote" id="ch044note07" class="comment"><a href="#ref_ch044note07">[7]</a>薛冯争香菱,忠顺北静二王争蒋玉菡,贾赦石呆子争扇子,凑成“三争”。冯渊谐音“逢冤”,其事与48回石呆子失扇子事非常类似,一些人认为暗伏佚稿中宝玉逢冤入狱。</aside>
<aside epub:type="footnote" id="ch044note08" class="comment"><a href="#ref_ch044note08">[8]</a>雨村“把出身之地竟忘了”,是曹公借门子之口评雨村,不但伏下后文雨村忘了甄士隐之恩不救英莲,或也伏佚稿中宝玉逢冤,他忘记贾府为他谋起复之恩不救宝玉,甚至借机攻击贾府。</aside>
<aside epub:type="footnote" id="ch044note09" class="comment"><a href="#ref_ch044note09">[9]</a>护官符中有贾史王薛四家,有索隐派指谐音“家亡血史”,作为此书影射明清换代证据之一。有学者据清初多明我会西班牙籍传教士方济各在康熙初年编写的《官话语法》推演,薛与血在清初官话中并不谐音。大抵脂批未明指的谐音,均应谨慎考证,不可因今天谐音而遽然定论。</aside>
<aside epub:type="footnote" id="ch044note10" class="comment"><a href="#ref_ch044note10">[10]</a>护官符后四则脂批可做正文看。王以下,周朝爵位分公侯伯子男五个等级。紫微舍人即中书舍人别称,明官阶从七品。护官符附注可看出四家地位并不等同,而且后文“雨村犹未看完”,可知金陵大户并非只有这四家,书中也无四大家族一说。若以四家初始地位看,贾高于史高于王高于薛。至书中主要故事发生时,这四家里史家始封家主官尚书令,是文官世家,与贾王以武官发家不同,且后代史鼎又多了个忠靖侯爵位,应是发展最好,书中提及史家夫人小姐都要做针线到深夜,当是史家家风勤俭,而非没落最快。贾家爵位降等,官阶低,影响力当已不及史家。王家则随王子腾升迁政治影响力越发升高,但爵位不及贾府。薛家虽为皇商,一则古代商人地位较低,且薛家也不是江宁织造那样真正以皇家名义经商的官商,若无贾王二家关系,社会地位不过略高于普通富户。京中的政治地位高于原籍,四家在京中与原籍房分比例,也可看出各家政治地位高低的差别。四家中史家除贾府外,与其他二家基本没有过从,且家风谨严,至贾府败事时也许受到的牵连较少甚至不受牵连。</aside>
<aside epub:type="footnote" id="ch044note11" class="comment"><a href="#ref_ch044note11">[11]</a>胡适开创曹学派前,也是个政治索隐派。他在《藏晖室札记·小说丛话》说:“《石头记》……实则一部大政治小说也,故曰政,曰王,曰赦,曰刑,曰史,曰礼。为政而权操于内,故其妇曰王,其侄亦曰王。外赦而内刑,言不相孚也。史之为言已成陈迹也,李之为言礼也、理也。刑足以破家,即足以亡国,作者之意深矣。非礼与理,其孰能善其终哉!《石头记》专写一极专制之家庭,实则一极专制之国家也。”四家确似影射古人眼中的国之四维,史家为史(祖宗家法,意识形态),王为宗室亲王,贾为国家文人政权,薛为国家武装力量。史家代表贾母之权威,正如祖宗家法。王夫人地位尊崇,对宝玉有极大话语权,却并不实际行政,正如明清亲王。贾政名字就点出政字,且好交读书人,正是文官政府的特征,且宝玉爱吃胭脂(红色印泥),正如玉玺(宝玉也是玉玺别称),也是政权象征。薛则本义是香草(古之草民,今称韭菜),薛家行事有礼不下庶人的味道,然而宝钗名字有金戈,秦以来草民拿起武器就是国家武装力量的主体。曹公此书应该有政治隐喻,只是是否悼明则难以定论,正如其是否为曹寅子孙目前也难以定论一样。</aside>
<aside epub:type="footnote" id="ch044note12" class="comment"><a href="#ref_ch044note12">[12]</a>吴注:“护官符”小注,己、庚、舒本无,戚、蒙、列、甲辰本为文后双行小字,杨本为文后单行小字。</aside>
<aside epub:type="footnote" id="ch044note13" class="comment"><a href="#ref_ch044note13">[13]</a>这王老爷或系王家人,来拜或是请托薛蟠之事,所以雨村先还有救英莲之心,后面却乱判葫芦案结案。此处偏生一事打断门子演说四家,不露痕迹地了结护官符上无关家族,颇具匠心。</aside>
<aside epub:type="footnote" id="ch044note14" class="comment"><a href="#ref_ch044note14">[14]</a>上回末写的是王子腾得知薛蟠打死人命才意欲唤取薛氏进京,与门子说法略有差池。此回后文以作者视角交代薛蟠进京时与门子说法较为相符。</aside>
<aside epub:type="footnote" id="ch044note15" class="comment"><a href="#ref_ch044note15">[15]</a>音jì。有索隐派认为香菱影射崇祯太子朱慈烺(lǎng),故要带着红痣(朱家记号),做个标记。亦有称香菱影射永历帝朱由榔,夏金桂则影射吴三桂,朱由榔被吴三桂所杀,此所谓“两地生孤木,香魂返故乡”。还有影射陈圆圆诸说。然而香菱被拐则这些人都无可以附会的经历。因书中有天倾地陷、朱楼水国、白骨如山忘姓氏等寓意极明显的文字,所以不少有识之士也从此书索隐明清易代史事,但很多将书中人物对应历史人物的说法则往往牵强,正如王国维在《红楼梦评论》中对有人据此书中“红楼”、“葬花”等词首出纳兰容若《饮水集》便说宝玉影射此人所做的评论:“苟执此例以求《红楼梦》之主人公,吾恐其可以傅合者,断不止容若一人而已。”。索隐固然是一种读红楼的方法,甚至也颇有趣味,但不可执此一道,反而忽略了此书艺术价值,陷入旁门。</aside>
<aside epub:type="footnote" id="ch044note16" class="comment"><a href="#ref_ch044note16">[16]</a>湘语方言,一般指已婚的非老年妇女。有据方言推断作者籍贯的因而说雪芹是长沙人。然此书中方言,除长沙外,尚有北京、丰润、如皋、保定、东北等等地区的方言。这只能说明依据书中方言推测作者出生地或常住地完全靠不住。</aside>
<aside epub:type="footnote" id="ch044note17" class="comment"><a href="#ref_ch044note17">[17]</a>雨村心中已有打算,却不用封闭式的问题说出自己的打算再问门子是否妥当,偏用开放式的问题问门子如何剖断,而门子竟以为雨村没主意,三言两语写出人物深浅,这就是大手笔。</aside>
<aside epub:type="footnote" id="ch044note18" class="comment"><a href="#ref_ch044note18">[18]</a>若是因私,正当报甄士隐之恩,若是因公,也当拿下薛蟠。雨村心里只要“因我”却要以“公”为幌子,而门子的话又点明雨村大概也只有“因我”才能得保平安,何其曹公洞悉中国社会之深也!</aside>
<aside epub:type="footnote" id="ch044note19" class="comment"><a href="#ref_ch044note19">[19]</a>不少人认为雨村依门子进言弄了个薛蟠暴病而亡胡乱断了此案,薛蟠自此就是黑户。然而书中后文薛蟠仍然以薛氏当家人身份进行社会活动,也未更名改姓,至79回娶夏金桂,若薛蟠是黑户夏家怎会跟着冒风险,金桂几番诟骂也没有指控薛蟠杀人,可见雨村是用了其他法子处理的,不过作者略去了细节而已。脂批“奸雄欺人”意指雨村已打定主意乱判此案,却装出不因私废法的样子。</aside>
<aside epub:type="footnote" id="ch044note20" class="comment"><a href="#ref_ch044note20">[20]</a>《史记·陈涉世家》载,陈胜为王后与贱时熟识相遇,载与归。客入宫见富丽堂皇,喊道:“夥颐!涉之为王沉沉者!”且出入愈益放肆,说陈胜往事。后陈王斩之。曹公或因此事设计出这个情节。脂批“千里伏线”,佚文或有门子坏雨村的事的情节。</aside>
<aside epub:type="footnote" id="ch044note21" class="comment"><a href="#ref_ch044note21">[21]</a>明朝京营是保卫京师的军事力量,京营节度使是京营的高级将领,地位重要,但权力受到朝廷的严格限制,以防止武将专权。一般为正三品。清无此职,步军统领衙门统领有点类似。</aside>
<aside epub:type="footnote" id="ch044note22" class="comment"><a href="#ref_ch044note22">[22]</a>书中第8回解衣取锁、26回晴雯指她“有事没事跑了来坐着”等等不一而足,均当不得“举止娴雅”——此处曹公写宝钗用反笔。戚蓼生序说此书一喉而两歌,有人认为是说此书另有政治隐喻,然而未必不是说这种反笔有一喉而两歌的艺术效果。此处交代的宝钗年龄比宝玉大了五六岁,后文有金玉良缘,二人年龄差缩小,而宝钗与香菱、袭人等年龄相仿则不变,应该是改大了宝玉年龄。</aside>
<aside epub:type="footnote" id="ch044note23" class="comment"><a href="#ref_ch044note23">[23]</a>待选一事,此处提及便没了后文。前称“入学陪侍”,并非准备聘选妃嫔,大约选上了的通知去陪读,没选上的也就没有通知了。也有人说第7回薛姨妈所送的宫花,便是宝钗待选宫中所赐,其时已知宝钗落选。</aside>
<aside epub:type="footnote" id="ch044note24" class="comment"><a href="#ref_ch044note24">[24]</a>王子腾升统制,宫中已有他甥女元春,可能也是他另一个甥女薛宝钗落选原因。同为待选,元春成功而宝钗失败,且王子腾奉旨出都,隐约透出皇帝限制王子腾政治影响力之意。</aside>
<aside epub:type="footnote" id="ch044note25" class="comment"><a href="#ref_ch044note25">[25]</a>既称姨爹,便是姨侄,后文贾政称薛蟠外甥,称宝钗为王夫人外甥女,均非中国宗法制正统称呼,只是地方风俗。正统宗法制王夫人出嫁从夫,其外甥女是黛玉,舅侄女(或内侄女)为凤姐,侄女迎春,从侄女(或堂侄女)惜春,姨侄女宝钗,表侄女湘云,表外甥女(贾政表姐妹之女)表舅侄女(王夫人表兄弟之女)表姨侄女(王夫人表姐妹之女)则没有在书中出现。</aside>
<aside epub:type="footnote" id="ch044note26" class="comment"><a href="#ref_ch044note26">[26]</a>若是拜望亲友,在王家或贾府小住都算合理,然而后来薛家长住贾府,则不合情理,所以薛姨妈只能同意薛蟠自己挑所宅子去住。薛蟠拗不过母亲,只能说是作者强行为书中的安排找点合理性。</aside>
<aside epub:type="footnote" id="ch044note27" class="comment"><a href="#ref_ch044note27">[27]</a>薛家到贾府,无人专侯,自然并非受贾府之邀。薛家也没有先派人来贾府通传打点,薛氏依附贾府应当不是贾母贾政的主意,只是王夫人遵从兄弟的安排。</aside>
<aside epub:type="footnote" id="ch044note28" class="comment"><a href="#ref_ch044note28">[28]</a>应当是薛蟠拜见贾政时说过先暂住贾府之意,贾政才这么安排。梨香院先有荣国公住,现有薛姨妈住,至18回为新买的小戏子居住,69回则成了尤二姐停尸之所,其兴衰变迁也影射荣国府兴衰。此院“另有一门通街”,贾政也要借此区隔两家。</aside>
<aside epub:type="footnote" id="ch044note29" class="comment"><a href="#ref_ch044note29">[29]</a>梨香院为薛宝钗住,可补上冷香丸没有梨花蕊之缺,又含有钗玉相离的意味,后且成为梨园,既是荣公参悟之所,也是宝玉36回情悟之处,此院终成停尸之所还隐喻“白骨如山”照应。读者当体会作者颇具匠心的安排。</aside>
<aside epub:type="footnote" id="ch044note30" class="comment"><a href="#ref_ch044note30">[30]</a>参看本回前文称宝钗“举止娴雅”处脂批,赞政老教子有方,是与写宝钗一样笔法。</aside>
<aside epub:type="footnote" id="ch044note31" class="comment"><a href="#ref_ch044note31">[31]</a>吴注:底本下缺半页。胡适据庚辰本抄补94字。</aside>
<aside epub:type="footnote" id="ch044note32" class="comment"><a href="#ref_ch044note32">[32]</a>只为要展开钗玉争宝故事,作者不得不费许多苦心,安排薛氏暂住贾府,回中正文脂批许多别扭处,都因为薛姨妈长住贾府不合常理。贾政本意只是留薛氏暂住,日后薛氏不提告别,贾府也不好打发他们走了。直到75回探春说“也不在必要死住着才好”,薛氏不走,贾府还是只好因循。</aside>
</div>
<p class="normal"></p>

最后面多了一个空段落,可以现在删掉,或者修改前面的第二个宏,将结束标签后面的”& VbCrLf"删掉,也可以在后续的文本处理软件处理过程中替换掉。上面就是HTML文件的主体内容了。后续处理仍然可以在Word中完成,但是由于基本上就是简单的查找替换了,所以不如用文本处理软件来做,比Word速度快还更为灵活。

4、创建HTML文件模板

用EmEditor新建一个HTML文件,包含如下内容:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops"> 
<head>
	<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
	<link rel="stylesheet" href="styles/styles.css" />
	<title></title>
</head> 
<body>

<script src="scripts/double_line.js" ></script>
</body>
 
</html>

模板文件中的style.css是进行格式定义的样式表文件,纯属个人审美偏好,不做解释,内容如下:

@font-face {
  font-family: "增字雅黑";
  src: url("../fonts/ExtendYaHei-Regular.ttf");
}
@font-face {
  font-family: "Source Code Pro";
  src: url("../fonts/SourceCodePro-Regular.ttf");
}
@font-face {
  font-family: "霞鹜文楷";
  src: url("../fonts/LXGWWenKaiMonoScreen.ttf");
}
body,  *{
	font-family: "霞鹜文楷", "增字雅黑", "Source Code Pro",  "微软雅黑", "PingFang SC", "Droid Sans Fallback", "Sans Serif";
	font-size: 16px;
}
.wu-note {
	font-weight:bold;
	color:red;
}
.center{
	text-align:center;
}
.zhi-note{
	font-weight:bold;
	color:orange;
}
.tx-note {
	font-weight:bold;
	color:green;
}
.comment{
    color:black;
}
.double-line {
    display: inline-block;
    line-height: 1.2; /* 调整行高 */
    vertical-align: middle;
    color:blue;
}
.double-line span {
    display: block;
    line-height: 1.2; /* 调整行高 */
    font-size: 0.8em; /* 调整字体大小 */
    color:blue;
}
.container {
    width: 100%; /* 容器宽度 */
    margin: 0 auto;
    padding: 10px;
}
.pic-title {
    text-align: center;
    font-size: 0.8em;
}
.emph {
	font-size:1.2em;
	color:blue;
	font-weight:bold;
}
.remove {
	color: orange;
	text-decoration: line-through 2px;
	font-weight:bold;
}
.note-block {
	border: 1px dashed #66BBCC;
	margin: 1em 1em 0.5em 1em;
	padding: 5px !important;
	box-shadow: 0 0 1em #AAAAAA;
	clear: both;
	background-color:beige;
}
p {
	text-indent:2em;
}
span {
	text-indent:0em;
}
a {
    text-decoration: none;
    font-weight:bold;
    color:rgb(255, 0, 255);
}
img {
    display: block;
    margin: 0 auto;
}
aside {
   margin-bottom: 0.5em;
}
hr {
	width:100%;
	border: 2px solid purple;
}
sup, .comment a {
	font-size: 0.6em;
	vertical-align: super;
}

模板文件中的double_line.js是用来处理双行合一显示格式的脚本,内容如下(HTML中的双行合一实现实在太复杂了,难怪没有标准的样式或者标签,下面这个脚本并未精确处理正文最后一行内容占用的长度与紧接的双行块长度之和大过页面宽度时的情况,本应截取合适的双行块文本长度添加到正文最后一行长度末端,剩余的双行文本另行组成双行文本块,这样才与Word基本上一致。在上面的HTML文件截图中,就是说“一张口就是了结”这条脂批不像Word文档中那样紧接着“斟酌斟酌,”,而是另换了一行。完全模拟Word非常麻烦,目前这个简单脚本阅读效果也勉强过得去):

    function handleResizeAndLoad(elements) {
        elements.forEach(el => {
            const containerWidth = el.parentElement.clientWidth; // 获取容器宽度
            const text = el.innerText;
            const fontSize = parseFloat(window.getComputedStyle(el).fontSize); // 获取字体大小
            const maxCharsTwoLine = 2*Math.floor(containerWidth / (fontSize * 0.8)); // 计算两行文字合计最大字符数,0.8为样式中设置的字体大小的em值
            if (text.length > maxCharsTwoLine) {//文本长度大于即两行文字时
                // 分割文本
                let firstPart = text.slice(0, maxCharsTwoLine);
                let remainingPart = text.slice(maxCharsTwoLine);

                // 将首行加入双行合一的结构
                el.innerHTML = `<span>${firstPart}</span>`; 
                //剩余文本长度大于大于每行字符数时继续分割文本,将分割出的行加入双行合一的结构
                while(remainingPart.length > maxCharsTwoLine){
                        firstPart = remainingPart.slice(0, maxCharsTwoLine);
                        remainingPart = remainingPart.slice(maxCharsTwoLine);
                        el.innerHTML = ` ${el.innerHTML} <span>${firstPart}</span>`; 
                }
                //将最后剩余的文本加入双行合一的结构
                el.innerHTML = `${el.innerHTML}<span>${remainingPart}</span>`;    
            }else{//文本长度小于每行最大字符数,直接将文本分割为长度相等的两行进行排版
                el.innerHTML = `<span>${text.slice(0, Math.ceil(text.length / 2))}</span><span>${text.slice(Math.ceil(text.length / 2))}</span>`;
            }
            el.classList.add('double-line'); // 应用双行合一样式
        });
    }
    document.addEventListener("DOMContentLoaded", function () {
        const elements = document.querySelectorAll('.adaptive-double-line'); 
        handleResizeAndLoad(elements) ;
    });
    //窗口宽度调整时重新计算并设置双行合一
    window.addEventListener('resize', function () {
    const elements = document.querySelectorAll('.adaptive-double-line');
        handleResizeAndLoad(elements) ;
});

注意将样式表文件和js脚本文件按HTML模板文件中对应的标签所指定的路径保存。

5、拼合成完整的HTML文件:

将步骤3所得的Word文件全选,复制,然后光标放到步骤4中的HTML模板文件的<body>标签下的空行中,粘贴,完成完整HTML文件的拼合,然后将标题复制粘贴到<title>标签内部。

6、完成双行文本块的处理:

先将“{{”替换为“{”,“}}”替换为“}”,将单双大括号数量统一起来。

然后将“{”替换为“<span class="adaptive-double-line">”。这里的css类名与步骤4给出的css文件和js文件是耦合的,想修改必须同时修改那两个文件中的相应内容。

最后将“}”替换为“</span>”,完成双行块的结束标签。

完成之后可以打开EmEditor的语法检查器检查一下是否存在错误,有的话做个修改。

7、完成HTML文件的修改

如果还需要进行个性化的处理,可以直接修改步骤6完成之后的HTML文件,还可以用EmEditor的格式化功能格式化一下(全选,转换→格式化),更加美观。最后怎么做成EPUB文件,我的博客中有相关文章,互联网上也有无数教程,这里就不重复了。

通过以上步骤的处理,转换完成的HTML文件没有冗余内容,结构良好,便于修改,是居家旅行打架泡妞必备良药。


网站公告

今日签到

点亮在社区的每一天
去签到