lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Need to get white text for fret diagrams


From: Carl D. Sorensen
Subject: Need to get white text for fret diagrams
Date: Fri, 18 Jun 2004 12:15:40 -0600

As part of my work on fret diagrams (or chord diagrams, if you prefer),
I need to label dots that are placed on the strings.  For white dots, I
can draw a filled, outlined, white dot, then put a test stencil on top
of it to get a labeled dot.  For black dots, however, I've been unable
to get white text into the stencil so I can have a white number on a
black dot.

I've tried using ps commands to make white text.  When I do so, I get
_very_ large characters that are not centered on the current location,
but appear to be centered on a corner of the page.

I've also tried to include the color package from TeX, and put a
reference to the color package in the output-tex.scm file.  When I do
so, I get the following:

lilypond: error: LaTeX failed on the output file.
lilypond: error: The error log is as follows:

! Undefined control sequence.
<argument> ...utputscale \magfontUICPomOLo \color
                                                  {white} \hbox {1}
\color {...
l.315 }
       %
The control sequence
LATEX output to `fret-diagram-test.latex'...
TEX output to `fret-diagram-test.tex'...


Here is some sample code of my efforts.  You can see from the commented
lines some of the things I've tried.

>From scm/stencil.scm
(define-public (fontify-text-white font-metric text)
  "Set TEXT with font FONT-METRIC, in color white, returning a stencil."
  (let* ((b  (ly:text-dimension font-metric text))
         (c  (ly:fontify-atom font-metric `(white-text ,text))))
         (display "WHITE TEXT ") (display c) (newline)
    (ly:make-stencil c  (car b) (cdr b))))

>From scm/output-tex.scm

(define (white-text s)
  (begin 
   (display "white-text in output-tex ") (display s) (newline)
  ;(string-append "\\hbox{" (embedded-ps (list 'white-text s)) "}")))
  ;(embedded-ps (string-append "0 0 moveto .5 setgray (" (ps-encoding s)
") show"))))
  ;(embedded-ps (string-append "0 0 moveto .5 setgray (" s ") show 0
setgray"))))
  (string-append "\\color{white} \\hbox{" (output-tex-string s) "}
\\color{black}")))
  ;(string-append "\\hbox{ \\color{white} " (output-tex-string s) "
\\color{black} }")))



Can anybody help me with this?  I'd really like to get a white font for
the fret diagrams.

Thanks,

Carl Sorensen




reply via email to

[Prev in Thread] Current Thread [Next in Thread]