- (let* ((name-symbol (string->symbol name))
- (args-filename-offset
- (cons file-name (ly:get-cff-offset file-name font-index)))
- (found-filename-offset (assq name-symbol font-list)))
- (if found-filename-offset
- (begin
- (if (equal? args-filename-offset (cdr found-filename-offset))
- (ly:debug
- (_ "CFF font `~a' already embedded, skipping.")
- name)
- (ly:warning
- (_ "Different CFF fonts which have the same name `~a' has been detected. The font cannot be embedded.")
- name))
- "")
- (begin
- (ly:debug
- (_ "Embedding CFF font `~a'")
- name)
- (set! font-list
- (acons name-symbol args-filename-offset font-list))
- (ps-embed-cff (ly:otf->cff file-name font-index) name 0)))))))
+ (if name
+ (let* ((name-symbol (string->symbol name))
+ (args-filename-offset
+ (cons file-name (ly:get-cff-offset file-name font-index)))
+ (found-filename-offset (assq name-symbol font-list)))
+ (if found-filename-offset
+ (begin
+ (if (equal? args-filename-offset (cdr found-filename-offset))
+ (ly:debug
+ (_ "CFF font `~a' already embedded, skipping.")
+ name)
+ (ly:warning
+ (_ "Different CFF fonts which have the same name `~a' has been detected. The font cannot be embedded.")
+ name))
+ "")
+ (begin
+ (ly:debug (_ "Embedding CFF font `~a'.") name)
+ (set! font-list
+ (acons name-symbol args-filename-offset font-list))
+ (ps-embed-cff (ly:otf->cff file-name font-index) name 0))))
+ (begin
+ (ly:debug (_ "Initializing embedded CFF font list."))
+ (set! font-list '()))))))
+
+(define (initialize-font-embedding)
+ (check-conflict-and-embed-cff #f #f #f))