You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
560 B
Racket
21 lines
560 B
Racket
#lang racket/base
|
|
(require
|
|
racket/class
|
|
"standard-font.rkt"
|
|
"font.rkt"
|
|
fontland
|
|
"embedded.rkt")
|
|
(provide PDFFont-open)
|
|
|
|
(define (PDFFont-open src family id)
|
|
(cond
|
|
[(and (string? src) (standard-font? src)) (make-object StandardFont src id)]
|
|
[else
|
|
(define font
|
|
(cond
|
|
[(string? src) (open-font src)]
|
|
[(path? src) (open-font (path->string src))]
|
|
;; todo: other font-loading cases
|
|
[else (raise-argument-error 'PDFFont-open "loadable font thingy" src)]))
|
|
(make-object EmbeddedFont font id)]))
|