We use 1/8" for basic text height for dimensions & annotations on steel shop & erection dwgs, which are typically Arch D (24x36).
For check prints, these are plotted reduced to Arch C (18x24), which makes text on check prints (2/3)(1/8") = 0.0833" , just slightly smaller than 3/32" - very easy to read text on check prints.
Typical scales for shop dwgs are:
1 1/2" = 1' (1:8 )
1" = 1' (1:12)
3/4" = 1' (1:16)
1/2" = 1' (1:24)
Typical scales for erection dwgs are:
1/2" = 1' (1:24)
1/4" = 1' (1:48)
3/16" = 1' (1:64)
1/8" = 1' (1:96)
etc.
So, it is easy to calculate the standard text height as an integer representing the inverse of the scale.
For example, the text height for 1" = 1' is 12 eighths, 12/8, or 1 1/2"
I never actually need to calculate the text height, because I wrote a LISP routine to calculate it for me many years ago, based on this scaling function:
;-------------------------------------------------------------------
;;--------------------- tktn_getscl--------------------------------------
;; Purpose: calculate scale factor
;; Uses: nothing
;; Returns: sf
;;-----------------------------------------------------------------
(defun tktn_getscl( )
(cond ((= 1 (getvar "TILEMODE")) (getvar "DIMSCALE"));tiled space
((= 1 (getvar "CVPORT")) 1.0);in paper space
;; in a viewport
(T
(last (trans '(0 0 1.0) 3 2));calc scale factor
)
);cond
);end tktn_getscl
The basic text height is calculated as:
(* (tktn_getscl) (getvar "DIMTXT"))
and larger or smaller "standard" sizes are calculated from values in a user-defined list:
;;initialize NTEXTSCALES (global)
(setq NTEXTSCALES (list '(JUMBO . 2.0) '(BIG . 1.5) '(MEDIUM . 1.25) '(NORMAL . 1.0)
'(SMALL . 0.75) '(TINY . 0.5)))
NTEXT is available free at my website:
www.tktn.com