V případě, že si vyrábíte e-booky (třeba do Kindlu) vlastními silami z DOC souborů pro Microsoft Word, které se dají často sehnat na různých internetech, možná už jste narazili na menší problém, kdy jsou ve zdrojovém dokumentu poznámky pod čarou. Čtečka se s nimi nemusí poprat zrovna nejlépe. Některé způsoby převodu do čtečky poznámky přesunou na konec knížky a dají k nim odkazy, jiné je nezobrazí vůbec.
Hledal jsem způsob, jak poznámky tedy přesunout přímo do textu, abych v Kindlu nemusel složitě projíždět text kurzorem a rozklikávat odkazy, a narazil jsem moc pěkný VBA skript, který přesně tohle udělá. Potíž byla v tom, že to poznámku prostě mrsklo do textu bez ladu a skladu. Rozhodl jsem si tedy tento skript trošku vylepšit.
Má verze přesune text z poznámek za odstavec, ve kterém byl původně odkaz. Text dá do závorky, nastaví mu kurzívu a zmenší jeho velikost o 1 bod.
Sub footnotes_to_inline()
Dim afn As Footnote
For Each afn In ActiveDocument.Footnotes
'get text from footnote and prepare inline text
Dim note As String
note = "(" & afn.Reference & afn.Range & ")" & Chr(10)
'copy reference of note to plain text
afn.Reference.InsertAfter afn.Reference.Text
'look for end of the paragraph and insert text of note
Selection.Start = afn.Reference.End
With Selection.Find
.Text = "^p"
.Forward = True
.Wrap = wdFindStop
.Execute
End With
Selection.InsertAfter note
'change inline note to bit smaller italic font
Dim format As Range
Set format = ActiveDocument.Range(Selection.Start, Selection.Start + Len(note))
format.Font.Italic = True
format.Font.Size = format.Font.Size - 1
Next afn
'delete original footnotes
For Each afn In ActiveDocument.Footnotes
afn.Reference.Delete
Next afn
End Sub
Skript nejjednodušeji použijete tak, že otevřete dokument s poznámkami ve Wordu, stisknete Alt+F11 a do otevřivšího se okna ho vložíte. (V případě, že není kam vkládat, najděte nalevo v okénku Project položku ThisDocument a poklepejte na ni). Pak stačí kliknout na zelenou šipku nebo stisknout klávesu F5.
Visual Basic naprosto neumím, takže přimhouřete oči, kód je pěkný bastl. Ale funguje relativně v pohodě a výsledek vypadá skvěle. 🙂


2 komentáře: “Jak přesunout poznámky pod čarou do textu v Microsoft Word”
Mně se teda zdá, že verze před je mnohem lepší a myslel jsem si, že takhle mají fungovat poznámky pod čarou a né je cpát přímo do textu 😀
Verze „před“ je prima a kdyby to takhle uměl Kindle zobrazit, tak budu spokojený. Jenže neumí, jak ostatně píšu i v článku. 🙂