diff --git a/collects/racket/draw/private/contract.rkt b/collects/racket/draw/private/contract.rkt index f23c382516..59b25424ac 100644 --- a/collects/racket/draw/private/contract.rkt +++ b/collects/racket/draw/private/contract.rkt @@ -78,8 +78,11 @@ (or/c 'default 'decorative 'roman 'script 'swiss 'modern 'symbol 'system)) -(define font-weight/c (or/c 'normal 'bold 'light)) -(define font-style/c (or/c 'normal 'italic 'slant)) +(define font-weight/c (or/c 'normal 'bold 'light)) +(define font-style/c (or/c 'normal 'italic 'slant)) +(define font-smoothing/c (or/c 'default 'partly-smoothed + 'smoothed 'unsmoothed)) +(define font-hinting/c (or/c 'aligned 'unaligned)) (define transformation-vector/c (vector/c (vector/c real? real? real? real? real? real?) @@ -135,17 +138,15 @@ (define font%/c (class/c (get-face (->m (or/c string? #f))) - (get-family (->m (or/c 'default 'decorative 'roman 'script - 'swiss 'modern 'symbol 'system))) + (get-family (->m font-family/c)) (get-font-id (->m exact-integer?)) - (get-hinting (->m (or/c 'aligned 'unaligned))) + (get-hinting (->m font-hinting/c)) (get-point-size (->m (integer-in 1 255))) (get-size-in-pixels (->m boolean?)) - (get-smoothing (->m (or/c 'default 'partly-smoothed - 'smoothed 'unsmoothed))) - (get-style (->m (or/c 'normal 'italic 'slant))) + (get-smoothing (->m font-smoothing/c)) + (get-style (->m font-style/c)) (get-underlined (->m boolean?)) - (get-weight (->m (or/c 'normal 'bold 'light))) + (get-weight (->m font-weight/c)) (screen-glyph-exists? (->*m (char?) (any/c) boolean?)))) (define pen%/c