omit missing metadata

main
Matthew Butterick 4 years ago
parent 7c3d71704a
commit c9b8c4d8bf

@ -195,17 +195,18 @@
(or (debug-column-gap) (quad-ref (car qs) :column-gap default-column-gap))) (or (debug-column-gap) (quad-ref (car qs) :column-gap default-column-gap)))
(define (setup-pdf-metadata! qs pdf) (define (setup-pdf-metadata! qs pdf)
(define kvs (define kv-dict
(apply append (cons
(for/list ([(k pdf-k) (in-dict (list (cons :pdf-title 'Title) (cons 'Creator (format "Racket ~a [Quad library]" (version)))
(cons :pdf-author 'Author) (for*/list ([(k pdf-k) (in-dict (list (cons :pdf-title 'Title)
(cons :pdf-subject 'Subject) (cons :pdf-author 'Author)
(cons :pdf-keywords 'Keywords)))]) (cons :pdf-subject 'Subject)
(define str (or (match qs (cons :pdf-keywords 'Keywords)))]
[(cons q _) (quad-ref q k)] [str (in-value (and (pair? qs) (quad-ref (car qs) k)))]
[_ #false]) "")) ; default val is empty string #:when str)
(list pdf-k str)))) (cons pdf-k str))))
(apply hash-set*! (pdf-info pdf) 'Creator (format "Racket ~a [Quad library]" (version)) kvs)) (for ([(k v) (in-dict kv-dict)])
(hash-set! (pdf-info pdf) k v)))
(define (footnote-flow? q) (equal? (quad-ref q 'flow) "footnote")) (define (footnote-flow? q) (equal? (quad-ref q 'flow) "footnote"))

Loading…
Cancel
Save