国内扁平化网站欣赏,ps做网站像素大小,开发公司股权重组协议书,河北住房和城乡建设厅有一种epub文件#xff0c;其中的注释以弹窗形式显示#xff0c;如下图#xff1a; 点击注释引用后#xff0c;对应的注释内容会弹出在页面中显示#xff0c;再次点击弹窗外的任意位置该弹窗即关闭#xff0c;关闭后点击任意注释引用#xff0c;对应的注释内容会弹窗显示…有一种epub文件其中的注释以弹窗形式显示如下图 点击注释引用后对应的注释内容会弹出在页面中显示再次点击弹窗外的任意位置该弹窗即关闭关闭后点击任意注释引用对应的注释内容会弹窗显示。
实现弹出式注释可以用CSS伪类、JavaScript、img标签的alt属性等各种方法例如此文将带注释的Word文档改造成点击注释引用即可弹窗显示注释的HTML文档-CSDN博客即给出了一种JavaScript实现的方式。但是这些方式往往在PC上效果不错但在手机、平板等设备上就没法弹出了。实际上根据epub3规范一个epub文档中的html文件如果符合以下范式即自动支持如上图的弹出式注释
1、html标签中引入epub命名空间如下
html xmlnshttp://www.w3.org/1999/xhtml xmlns:epubhttp://www.idpf.org/2007/ops
2、注释引用标签一般用a标签加入epub:typenoteref属性且注释引用的链接目标为对应的注释内容
3、注释内容标签可用div、aside等加入epub:typefootnote属性。
这种实现方法不依赖任何CSS或JavaScript不但在PC上效果不错在许多支持epub3标准的手机电子书阅读APP上例如静读天下、汉王墨水屏自带读书APP等也能弹出显示注释免除页面跳转的麻烦因此是首选方法。
现在我们将用VBA自动更正错误的注释引用序号-CSDN博客处理好注释引用与注释编号的文档改造成符合上述规范的html文件所需内容。为便于处理我们首先在每个诗标题前插入一个连续型分节符代码如下
Sub 在符合条件的段落前插入分节符()Dim pos As Long, styleName$styleName 标题 3With Selection.HomeKey wdStory 光标回到文档开头此时Selection.Start为0Dopos .Start 先记录光标位置.GoTo wdGoToHeading, wdGoToNext, 1 向后移动到下一个标题以标题为对象遍历文档If .Start pos Then Exit Do 光标位置不变则已遍历完所有标题退出循环If .Paragraphs(1).Style styleName Then.InsertBreak Type:wdSectionBreakContinuous 连续型分节符End IfLoopEnd WithEnd Sub
然后用下面的代码将处理好的word文档内容修改成html文件所需内容
Sub txt2epubhtml() 方便多数手机epub阅读器阅读PC阅读效果也好无需css配合Dim aSec As Section, chapter%, regStr$, i%, j%, href$, paraTxt$Dim searchRange As Range, refRange As RangeDim regEx As RegExp, match, matches As ObjectregStr [\u2460-\u2473]Set regEx CreateObject(VBScript.RegExp)With regEx.Global True.ignoreCase True.Pattern regStr End WithFor Each aSec In ActiveDocument.Sectionschapter chapter 1i 0Set searchRange aSec.RangeSet matches regEx.Execute(searchRange.Text) 在搜索范围内执行匹配操作For j 0 To matches.Count / 2 - 1Set refRange searchRangeWith refRange.Find.Text matches(j).Value.Wrap 1 wdFindContinue.Execute 找到注释引用If refRange.Find.found Theni i 1href c Format(chapter, 000) _ Trim(Str(i))refRange.Text a idref_ href epub:typenoteref href# href sup _refRange.Text /sup/arefRange.SetRange refRange.End, searchRange.End 向下找到与已找到的注释引用对应的注释编号.Forward True.Execute 改为向上查找找到下一条注释引用.Forward FalserefRange.SelectIf refRange.Find.found ThenparaTxt refRange.Paragraphs(1).Range.TextrefRange.Paragraphs(1).Range.Text aside epub:typefootnote id _href a href#ref_ href Left(paraTxt, 1) /a _ Mid(paraTxt, 2, Len(paraTxt) - 2) /aside vbCrLfElseMsgBox 找不到对应的注释内容请检查文档Exit SubEnd IfEnd IfEnd WithNext jNext aSecDim ps As ObjectSet ps ActiveDocument.ParagraphsFor i 1 To ps.CountparaTxt ps(i).Range.Text 防止样式为标题3的分节符影响输出并防止包裹aside标签If ps(i).Style 标题 3 And Len(paraTxt) 1 And Left(paraTxt, 6) aside Thenps(i).Range.Text h3 Left(paraTxt, Len(paraTxt) - 1) /h3 vbCrLfElseIf ps(i).Style 标题 4 And Len(paraTxt) 1 Thenps(i).Range.Text h4 Left(paraTxt, Len(paraTxt) - 1) /h4 vbCrLf 防止空白段落影响输出并防止包裹aside标签ElseIf ps(i).Style 正文 And Len(paraTxt) 1 And Left(paraTxt, 6) aside Thenps(i).Range.Text p classnormaltext Left(paraTxt, Len(paraTxt) - 1) /p vbCrLfEnd IfNext i
End Sub
经过上面的处理Word文档中的文本变成了如下内容
h3落日前墟望贈范廣州雲/h3
p classnormaltext緣溝緑草蔓扶楥雜華舒a idref_c001_1 epub:typenoteref href#c001_1sup①/sup/a。輕煙淡柳色重霞映日餘a idref_c001_2 epub:typenoteref href#c001_2sup②/sup/a。遥遥長路遠a idref_c001_3 epub:typenoteref href#c001_3sup③/sup/a寂寂行人疏a idref_c001_4 epub:typenoteref href#c001_4sup④/sup/a。我心懷碩德思欲命輕車a idref_c001_5 epub:typenoteref href#c001_5sup⑤/sup/a。高門盛游侣誰肯進畋漁a idref_c001_6 epub:typenoteref href#c001_6sup⑥/sup/a/p
h4【題解】/h4
p classnormaltext本篇見《詩紀》八三。《藝文類聚》三一僅載有該詩的前六句且題作《落日贈范岫》。范廣州雲即范雲。詳前《酬范記室雲》説明。據《南齊書·東昏侯紀》載范雲於永元元年四九九六月由始興内史任遷廣州刺史。而據《梁書》本傳范在廣州刺史任上“坐徵還下獄會赦免”。另據《南齊書·東昏侯紀》載永元元年十月以始興内史顏翻爲廣州刺史。由此可知范雲在廣州前後不及半年。並由此推知此詩應作於永元元年四九九中。/p
p classnormaltext王夫之云“寄婉於促如笙聲之音。雖非琴瑟正自琅然動人。《古詩評選》/p
h4【校注】/h4
aside epub:typefootnote idc001_1a href#ref_c001_1①/a“緣溝”二句緣沿。蔓。滋長。扶沿。楥籬笆。雜華雜花各種各樣的花。《文選》四三丘希範遲《與陳伯之書》“暮春三月江南草長雜花生樹群鶯亂飛。”舒開放。二句言春日草緣溝生長花傍籬笆盛開。/aside
aside epub:typefootnote idc001_2a href#ref_c001_2②/a“輕煙”二句輕煙指暮靄。重霞謂色彩濃重的晚霞。映《類聚》作“掩”。日餘謂落日餘暉。二句言翠碧的楊柳在暮靄中隱去落日餘暉使晚霞更加絢麗。/aside
aside epub:typefootnote idc001_3a href#ref_c001_3③/a遠《類聚》作晚。/aside
aside epub:typefootnote idc001_4a href#ref_c001_4④/a疏稀少。/aside
aside epub:typefootnote idc001_5a href#ref_c001_5⑤/a我心”二句碩德大德。碩大。輕車輕便之車。二句言我常感懷您知遇之德打算前往廣州探望。/aside
aside epub:typefootnote idc001_6a href#ref_c001_6⑥/a“高門”二句高門高貴之門對范雲住處的敬稱。盛多。游侣交游的友人。進引薦。畋通“佃”耕種。漁捕魚。《尚書·多方》“今爾尚爾宅畋爾田。”孔穎達疏“治田謂之畋猶捕魚謂之漁。”畋漁從事種田捕魚的人是詩人自謙之詞。漁張紘本作“魚”。二句承上言但考慮到彼處高朋甚多谁肯引進我這村野農夫呢/asideh3范廣州宅聯句/h3
p classnormaltext洛陽城東西卻作經年别a idref_c002_1 epub:typenoteref href#c002_1sup①/sup/a。昔去雪如花今來花似雪。a idref_c002_2 epub:typenoteref href#c002_2sup②/sup/a雲濛濛夕煙起奄奄殘暉滅a idref_c002_3 epub:typenoteref href#c002_3sup③/sup/a。遜非君愛滿堂寧我安車轍a idref_c002_4 epub:typenoteref href#c002_4sup④/sup/a。/p
h4【題解】/h4
p classnormaltext本篇見《詩紀》八四。《藝文類聚》二九截録前四句即范雲詩題作《别詩》江本題作《范廣州聯句》。唐詩人李商隱的詩曾兩用其事《詩話補遺》云“何遜與范雲聯句詩云·李商隱《送王校書分司詩》云“多少分曹掌祕書洛陽花雪夢隨君。定知何遜緣聯句每到城東憶范雲。”又《漫成一絶》云“不妨何范盡名家未解當年重物華。遠把龍山千里雪將來擬並洛陽花。”二詩皆用此事。”這說明此詩叙别頗有特色。此詩應爲范雲由廣州刺史任坐事徵還、赦免之後所作時約在永元二年五○○任國子博士之前。/p
h4【校注】/h4
aside epub:typefootnote idc002_1a href#ref_c002_1①/a“洛陽”二句洛陽即今河南洛陽市。因其爲西晉都城南朝人常借指京都建康。經年常年。二句言咱們二人雖然住在京城的東西兩面相距並不算遠但卻常年不得見面。/aside
aside epub:typefootnote idc002_2a href#ref_c002_2②/a“昔去”二句雪如花謂冬季花似雪言春日。《詩·小雅·采薇》有云“昔我往矣楊柳依依。今我來思雨雪霏霏。”此處化用其意言去年你離去時是大雪紛飛的冬天今年再來卻是春花爛漫的季節了。/aside
aside epub:typefootnote idc002_3a href#ref_c002_3③/a“濛濛”二句濛濛雲氣迷茫貌。同“蒙蒙”。《楚辭·九思·憫上》“雲蒙蒙兮電倏爍孤雌驚兮鳴呴呴。”註“蒙一作‘濛’。”夕煙暮靄。奄奄日落昏闇貌。李密《陳情表》“日薄西山氣息奄奄。”殘暉落日餘暉。二句寫來時暮靄乍起太陽落山。/aside
aside epub:typefootnote idc002_4a href#ref_c002_4④/a“非君”二句用漢陳遵事《漢書·陳遵傳》説“遵耆嗜酒每大飲賓客滿堂輒關門取客車轄投井中雖有急終不得去。”滿原文誤作蒲”據張紘本、薛本改。二句言如不是您如此好客我怎能在您門外停下車子呢。/asideh3望廨前水竹答崔録事/h3
p classnormaltext蕭蕭叢竹映淡淡平湖靜a idref_c003_1 epub:typenoteref href#c003_1sup①/sup/a。葉倒漣漪文水漾檀樂影a idref_c003_2 epub:typenoteref href#c003_2sup②/sup/a。相思不會面相望空延頸a idref_c003_3 epub:typenoteref href#c003_3sup③/sup/a。遠天去浮雲長墟斜落景a idref_c003_4 epub:typenoteref href#c003_4sup④/sup/a。幽疴與歲積賞心隨事屏a idref_c003_5 epub:typenoteref href#c003_5sup⑤/sup/a。鄉念一邅回a idref_c003_6 epub:typenoteref href#c003_6sup⑥/sup/a白髮生俄頃。/p
h4【題解】/h4
p classnormaltext本篇見《詩紀》八三題下注“《拾遺》作顧則心詩。張紘本、薛本等各本均載録此詩説明不同意《選詩拾遺》的意見。廨公廨即官署。水竹謂水邊之竹。崔録事指崔慰祖。崔慰祖四六五—四九九字悦宗清河武城今山東武城縣人。據《南齊書》本傳崔慰祖齊時曾任始安王蕭遥光撫軍墨曹行參軍轉刑獄兼記室。《南齊書·百官志·四鎮將軍》“凡公督府置佐長史、司馬各一人.諸曹有録事、記室。録事録事參軍的簡稱。晉置官。掌總録衆官府文簿舉彈善惡。此爲對崔慰祖的敬稱。崔死於永元元年四九九則此詩不得晚於此時可知崔任始安王記室是蕭遥光任撫軍將軍之時即建武二年四九五則知此詩應作於建武二年至永元元年之間四九五—四九九。/p
h4【校注】/h4
aside epub:typefootnote idc003_1a href#ref_c003_1①/a“蕭蕭”二句蕭蕭竹影扶疏之狀。淡淡水平滿貌。二句謂在平靜的湖面上倒映着扶疏秀美的竹影。/aside
aside epub:typefootnote idc003_2a href#ref_c003_2②/a“葉倒”二句漣漪文水面被撞擊泛起的連瑣般的波紋。漪托聲字猶兮。文同“紋”。《詩·魏風·伐檀》“河水清且漣漪。”檀欒秀美貌多形容竹。《藝文類聚》六五枚乘《梁王兔園賦》“修竹檀欒夾池水旋。”檀樂影即秀美的竹影。二句承上言風一吹竹葉蘸着水面泛起漣漪波紋美好的竹影便消失了。/aside
aside epub:typefootnote idc003_3a href#ref_c003_3③/a延頸伸長脖頸翹盼綦切之狀。/aside
aside epub:typefootnote idc003_4a href#ref_c003_4④/a“遠天”二句去離去謂漸漸落下。長墟謂村落。景日光。二句寫傍晚“延頸”佇望的情景殘霞將盡落日餘暉思友不至更增惆悵。/aside
aside epub:typefootnote idc003_5a href#ref_c003_5⑤/a“幽疴”二句幽疴猶沉疴。疴病。王本作“疴”。與歲積謂一年年加重。賞心心意歡樂。《文選》三〇謝靈運《田南樹園激流植援》“賞心不可忘妙善冀能同。”屏去。二句謂病體日漸沉重難得有賞心樂事。/aside
aside epub:typefootnote idc003_6a href#ref_c003_6⑥/a邅回徘徊。《楚辭·九歎·怨思》“寧浮沅而馳騁兮下江湘以邅回。”鄉念邅回謂思鄉的愁苦反復煎熬着自己。/aside
只需要将上述内容拷贝到如下的HTML模板的body标签内部及成为了符合epub3标准的弹出显示注释的HTML文档
html xmlnshttp://www.w3.org/1999/xhtml xmlns:epubhttp://www.idpf.org/2007/opsheadmeta contenttext/html; charsetutf-8 http-equivContent-Type / /headbody
!--注释引用和注释内容标签带有规定的epub:type属性且链接目标正确的HTML文本复制到此处--
/body/html
因为扫描文档在Word中校核并编辑出结构比较方便因此以上通过VBA来处理Word中的文本实际上如果弄清了epub3标准的弹窗显示注释的要求对不符合标准的Epub/HTML文件也可以利用python的soup库进行修改使其符合标准那又是另一个主题了。