Publishing Medical Books Better Quality

Who will this article for?

Someone who works at the publishing company(large or small) is eager to make a book better.

Table of contents

  1. What is a medical book?
  2. Don’t do
  3. Should do
  4. Do text wrangling by using the regular expressions

What is a medical book?

I have to admit it first. Medical books are one of the most difficult books to edit, design, and publish. It is not a cottage industry. It could be a large scale industry involving millions of dollars in a single book. (over 1000 person participate). That is why I write for sharing some tips.

  • p.308, 311 : (in a diagram) mmol/l → mmol/L
  • p.761 : with relatively few infections due to organisms that are strictly pathogens (e.g, Neisseria gonorrhoeae, rabies virus). : e.g → e.g.
  • p. 764 : a noninfectious disorder (e.g, neoplastic meningitis, sarcoidosis). : e.g → e.g.
  • p.1739 : (in a diagram) : Tidal volume ≤ 6 ml/kg PBW : ml/kg mL/kg
  • p.2272 : Pasireotide (600 or 900 ug/day subcutaneously): ug/dayµg/day
  • p.2278 : (in a diagram) : mosm/L → mOsm/L
  • p.2310 : FIGURE 406–3. MESOR: 5.25 µg/dl (145 nmol/L) : µg/dl µg/dL
  • p.2928 : without CHD and a LDL of 70–189 mg/dl receive “moderate” intensity statin therapy : mg/dl → mg dL
  • p.332e-7 : (in a table) Epithelial sodium channel, a, β, and γ subunits : a → α
  • Anywhere over 30, Pao₂ → PaO₂
  • Anywhere over 20, Sao₂ → SaO₂


  • Medical illustrations: Medical illustration is a small field with fewer than 100 practitioners in Korea. There is almost no one who knows anatomy better than doctors. Even simple illustrations below, it’s hard to say it is easy to draw and insert indication in the right place.
Illustaration by Ikhwan Shin
Illustaration by Ikhwan Shin
  • Pictures: It is hard to obtain the right picture and high definition of the wounds, radiographs. Even though you get the best quality pictures by the contributors, it could print out unintentionally press.
Photo by Harlie Raethel on Unsplash
  • Diagrams and flowcharts: Diagrams and flowcharts are useful tools to visualize what is going on and help understand a process about diagnosis, evaluation and treatment approach.
Vector artwork by Ikhwan Shin.
  • Table: Tables help you find the information that you want quickly and readable. There are many tables about medications and treatments for specific symptoms. Tables are making hard than the normal texts.


  • Typography: For any books(esp. medical books), the most important component would be the content. So you should apply typography as simple and straightforward as possible, make readers not to worry about reading. A medical book doesn’t need both Std, LtStd fonts, but OpenType Pro is needed. You can get better explanations in here.
  • Character style: Latin words, and germs, gypsum, fungus, the parasite’s scientific name, in vivo, in vitro, and in situ, must be applied in italics.
  • Terminology: Medical Terminology is to type without a single error, there could be misspelled and omitted words.
  • Rules to follow: It would be good to follow the International Systems of Units(SI) guideline.

Don’t do this.

Don’t insert space after the comma(,) except…

There is only one way to separate words, sentences, syllables (in syllabification) in English is a space.

  • Chromosome : ‘46,XX’, ‘46,XY’ …
  • Before single or double quotation marks : “That’s it,” she said.
  • With figures of four or more digits : $20,000, 4,000 mg/dL

Don’t use double space

I know old habit die hard, but today’s writing style guideline is to type just one space after a period.

Don’t use a CJK* based single character

  • fi → fi
  • ℃ → °C
  • ℉ → °F
  • ß, 𝛽 → β
  • ℓ →L
  • ㎛, ㎜, ㎝ → μm, mm, cm
  • ㎍, ㎎, ㎏ → μg, mg, kg
  • ㎕, ㎖, ㎘ → μL, mL, kL
  • ㎟, ㎠, ㎡, ㎢ → mm², cm², m², km²

Don’t use the alphabet ‘x’ as multiplication sign ×

1x2=2 → 1 × 2 = 2


Insert a thin space between numbers and measure units instead of the normal one.

No space, a thin space, a space
Compare between normal and thin space

Italicizing the words

There are a lot more things to think about when italics should be applied.

  • germs, gypsum, fungus, parasite’s scientific name : Chlamydia pneumoniae, Escherichia coli(E. coli), and so on…
  • foreign (esp. Latin) words : in vivo, in vitro, in situ, …
  • probability value : p = 0.98
  • misc : S-Adenosyl-L-homocysteine

Using subscript and superscript

  • (FEV|PGE|PDE|PGD|LTB|LTC|LTD|LTE|TXA)₁₋₉, β₂, … and so on.
  • Na⁺, K⁺, Cl⁻, … and so on.

Do text wrangling by using the regular expressions

You can analyze the texts by python and the other NLP tools.

1. Finding out all the characters to choose right fonts

You can choose the right font by extracting all the characters. If the analyzed characters are Latin-based languages, you don’t have to buy or use OpenType Pro fonts.

text = open(filename, 'r', encoding='utf-8').read()uniqueChars = list(set(text))
print(f'There are {len(uniqueChars)} unique characters.')

This method is not recommended unless the method above is particularly difficult. You just place all the text in InDesign, and run the script to see if there are missing glyphs(but it have to all the texts in InDesign).

2. Find the errors by using regex

You can find many errors by searching with the regular expression. I suggest that you have to learn some regex syntax, try to learn to convert what you see into the patterns.

  • special meaning
    <space> = a normal space
    <thinSpace> = a thin space
    <empty> = leave a value blank
    (?i) = match case
    <sp></sp> = superscript
    <sb></sb> = subscript
1. e.g to e.g.
Find : \b(e\.g)([^.])
Replace: $1.$2
2. 0ml, 0 ml, 0ML, 0 ML, 0mL, 0dl, 0 dl, 0DL, 0dL, 0dl → 0 mL or 0 dL
: (?i)(?<=[0-9])[ ]*[dm]l
Replace : <thinSpace>mL
3. Fake Ligature
Find : fi
Replace : fi
Find : fl
Replace : fl
4. Don’t use the alphabet ‘x’ as multiplication sign ×
Find : ([0-9])[ ]*x[ ]*([0-9])
Replace : \1 × \2
5. Don’t use a pre-styled single character
Find : [ß𝛽]
Replace in InDesign : β
6. Replace similar characters with the designated character.
Find : (…|\. *\. *\.|᠁)
Replace : ⋯
7. Replace Normal Case with superscript or subscript
Find : \b5\-HT[ ]*([13467]|1A|1B|1D|1E|1F|2A|2B|2C|5A)\b
Replace : 5-HT<sb>\1</sb>



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store