;; Book catalog stylesheet for Japanese reader ;; Jon Bosak 1998.05.09 (define %japanese-font% "MS Mincho") (define %english-font% "Garamond") (define %label-font-name% %japanese-font%) (define %body-font-size% 18pt) (define %head-size% 36pt) (define %line-space-factor% 1.5) (define %label-field-width% 17pica) (define %label-spacer% " ") (define %head-vspace-above% (* %head-size% 0.5)) (define %head-vspace-below% (* %head-size% 0.4)) (define %body-vspace% (* %body-size% 0.5)) (element 書籍カタログ (make simple-page-sequence font-weight: 'medium font-posture: 'upright font-size: %body-font-size% line-spacing: (* %body-font-size% %line-space-factor%) top-margin: 6pica bottom-margin: 8pica left-margin: 6pica right-margin: 6pica page-width: 8.5in page-height: 11in quadding: 'start (process-children))) (define (FONTNAME) (case (inherited-attribute-string "xml:lang") (("JP") %japanese-font%) (("EN") %english-font%) (else %japanese-font%))) (define (FONTSIZE-FACTOR) (case (inherited-attribute-string "xml:lang") (("JP") 1.0) (("EN") 0.75) (else 1.0))) (define (FONTWEIGHT) (case (inherited-attribute-string "xml:lang") (("JP") 'bold) (("EN") 'bold) (else 'medium))) (define (CURRENCY-SYMBOL) (case (inherited-attribute-string "xml:lang") (("JP") "円") (("EN") "ドル") (else "円"))) (element 書籍 (make display-group space-before: %head-vspace-above% space-after: %head-vspace-above%)) (element 書名 (make paragraph space-before: %head-vspace-above% space-after: %head-vspace-below% font-family-name: (FONTNAME) font-weight: (FONTWEIGHT) font-size: (* %head-size% (FONTSIZE-FACTOR)) line-spacing: (* %head-size% %line-space-factor% (FONTSIZE-FACTOR)) quadding: 'center)) (define ($catalog-entry$ label) (make paragraph space-before: 6pt space-after: 6pt (sosofo-append (make line-field field-width: %label-field-width% field-align: 'end font-weight: 'bold font-family-name: %label-font-name% (literal (string-append label %label-spacer%))) (make sequence font-family-name: (FONTNAME) (process-children))))) (element 著者 ($catalog-entry$ "著者")) (element 出版社 ($catalog-entry$ "出版社")) (define ($price-entry$ label) (make paragraph space-before: 6pt space-after: 6pt (sosofo-append (make line-field field-width: %label-field-width% field-align: 'end font-weight: 'bold font-family-name: %label-font-name% (literal (string-append label %label-spacer%))) (make sequence font-family-name: (FONTNAME) (process-children) (literal (CURRENCY-SYMBOL)))))) (element 定価 ($price-entry$ "定価")) (element 在庫数 ($price-entry$ "在庫数"))