Autor Thema: Eingebundene .eps Dateien auf einer Höhe bringen  (Gelesen 3106 mal)

marian

  • Member
Eingebundene .eps Dateien auf einer Höhe bringen
« am: Samstag, 3. April 2010, 11:21 »
Guten Tag,
ich soll eine Auflistung der Griffe für die Klarinette erstellen. Alles soll auf einer DIN A4 passen. Das ist mir gelungen aber es ist noch eine Kleinigkeit die mich stört.
Die eingebundene Grafiken "wandern" nach oben je höher die Note ist. Sogar die Vorzeichen ändern die Höhe der eingebunde Grafik (was ich eigentlich verstehe).
Gäbe es aber eine Möglichkeit dass alle eingebundene .eps Dateien doch auf der Gleiche Höhe zu bringen (netterweise immer systemabhängig)?
Ich habe hier unten einen Ausschnit und den gehörigen Code:
% zweigestrichenes fis
fis^\markup {
\hspace #-2.0
\combine
\epsfile #X #5 #"./zweigestrichenes-fis.eps"
\with-dimensions #'(0 . 0) #'(0 . 0)
\postscript #""
}

% zweigestrichenes g
g^\markup {
\hspace #-2.0
\combine
\epsfile #X #5 #"./zweigestrichenes-g.eps"
\with-dimensions #'(0 . 0) #'(0 . 0)
\postscript #""
}

% zweigestrichenes gis
gis^\markup {
\hspace #-2.0
\combine
\epsfile #X #5 #"./zweigestrichenes-gis.eps"
\with-dimensions #'(0 . 0) #'(0 . 0)
\postscript #""
}

% zweigestrichenes a
a^\markup {
\hspace #-2.0
\combine
\epsfile #X #5 #"./zweigestrichenes-a.eps"
\with-dimensions #'(0 . 0) #'(0 . 0)
\postscript #""
}

% zweigestrichenes ais-4
<ais-4>^\markup {
\hspace #-2.0
\combine
\epsfile #X #5 #"./zweigestrichenes-ais-4.eps"
\with-dimensions #'(0 . 0) #'(0 . 0)
\postscript #""
}

Ich danke und wünsche euch Frohe Ostern!

ding-dong

  • Member
Re:Eingebundene .eps Dateien auf einer Höhe bringen
« Antwort #1 am: Samstag, 3. April 2010, 11:47 »
hilft dir \override TextScript #'staff-padding = #'5 ?

marian

  • Member
Re:Eingebundene .eps Dateien auf einer Höhe bringen
« Antwort #2 am: Samstag, 3. April 2010, 14:55 »
hilft dir \override TextScript #'staff-padding = #'5 ?
Ich danke!
Es hat mir geholfen. Allerdings nicht ganz.
Es gibt wohl bei der Klarinette (ich bin selber kein Klarinettist) ein "Fingersatz" der mit "d" bezeichnet wird (wohl der Fingersatz womit man bezeichnet dass das dreigestrichenes f genauso gegriffen wird wie das zweigestrichenes d). Ich habe die Fingersätze als <f-5> (z.B) notiert. Für dieses d allerdings habe ich ein markup henommen: f-\markup { \normalsize d }. Jetzt wird durch \override TextScript auch der d Buchstabe nach unten verschoben so dass einmal der Buchstabe "aus der Reihe tanzt" und zweitens ein größeres \override TextScript kann ich nicht mehr für diese Reihe einstellen weil sie dann zur Hälfte auf die nächste Seite verschoben wird.
\override TextScript #'staff-padding = #'6
% dreigestrichenes e
e^\markup {
\hspace #-2.0
\combine
\epsfile #X #5 #"./dreigestrichenes-e.eps"
\with-dimensions #'(0 . 0) #'(0 . 0)
\postscript #""
}

% dreigestrichenes e-0
<e-0>^\markup {
\hspace #-2.0
\combine
\epsfile #X #5 #"./dreigestrichenes-e-0.eps"
\with-dimensions #'(0 . 0) #'(0 . 0)
\postscript #""
}

% dreigestrichenes f-d
f-\markup { \normalsize d }^\markup {
\hspace #-2.0
\combine
\epsfile #X #5 #"./dreigestrichenes-f-d.eps"
\with-dimensions #'(0 . 0) #'(0 . 0)
\postscript #""
}

% dreigestrichenes f-5
<f-5>^\markup {
\hspace #-2.0
\combine
\epsfile #X #5 #"./dreigestrichenes-f-5.eps"
\with-dimensions #'(0 . 0) #'(0 . 0)
\postscript #""
}

Ich danke für die Unterstützung, und Frohe Ostern!

ding-dong

  • Member
Re:Eingebundene .eps Dateien auf einer Höhe bringen
« Antwort #3 am: Samstag, 3. April 2010, 15:26 »
vielleicht hilft da eine temporäre zusatzstimme, welche dann automatisch die default attribute hat:

% zweigestrichenes fis
\relative c' {
  \context Voice = "1" {
    \override TextScript #'staff-padding = #'5
    \textLengthOn
   
    \override TextScript #'staff-padding = #'6
    % dreigestrichenes e
    e^\markup {
      \hspace #-2.0
      \combine
      \epsfile #X #5 #"./copyleft.eps"
      \with-dimensions #'(0 . 0) #'(0 . 0)
      \postscript #""
    }
   
    % dreigestrichenes e-0
    <e-0>^\markup {
      \hspace #-2.0
      \combine
      \epsfile #X #5 #"./copyleft.eps"
      \with-dimensions #'(0 . 0) #'(0 . 0)
      \postscript #""
    }
   
    % dreigestrichenes f-d
    <<
      \context Voice = "1" {
        f^\markup {
          \hspace #-2.0
          \combine
          \epsfile #X #5 #"./copyleft.eps"
          \with-dimensions #'(0 . 0) #'(0 . 0)
          \postscript #""
        }
      }
      \\
      s_ \markup { \normalsize d }
    >>
   
    % dreigestrichenes f-5
    <f-5>^\markup {
      \hspace #-2.0
      \combine
      \epsfile #X #5 #"./copyleft.eps"
      \with-dimensions #'(0 . 0) #'(0 . 0)
      \postscript #""
    }
  }
}

comper

  • Member
Re:Eingebundene .eps Dateien auf einer Höhe bringen
« Antwort #4 am: Samstag, 3. April 2010, 17:21 »
Die Fingersatz-Ziffern gehen bis 9.
Folgender Ersatz für fingering::calc-text macht aus 6 bis 9 etwas anderes.

#(define (mein-fingersatz grob)
  (let*
    ((event (event-cause grob))
      (digit (ly:event-property event 'digit)))
    (case digit
      (( 6 ) (markup #:text #:bold #:fontsize 2 "
d"))
      (( 7 ) (markup #:text #:bold #:fontsize 2 "
e"))
      (( 8 ) (markup #:text #:bold #:fontsize 2 "
f"))
      (( 9 ) (markup #:text #:bold #:fontsize 2 "
g"))
    (else (number->string digit 10)))
    ))


Dann anwenden wie
\override Fingering #'text = #mein-fingersatz
<f-
6>
und dann ist d TextScript-frei.

Gruss

P.S. Oder falls wenig oft:
\once \override Fingering #'text = \markup \text \bold \fontsize #2 "d"
« Letzte Änderung: Samstag, 3. April 2010, 17:26 von comper »

marian

  • Member
Re:Eingebundene .eps Dateien auf einer Höhe bringen
« Antwort #5 am: Samstag, 3. April 2010, 17:38 »
Ich danke euch beiden.

Es ist schade dass das Ergebnis gar nicht verrät was dahinter ist. Und ich kann mich jetzt nicht entscheiden welche Lösung ich benutzen werde. Wahrscheinlich morgen nach einem Glas Wein werde ich eine Münze werfen :)

Frohe Ostern!

ding-dong

  • Member
Re:Eingebundene .eps Dateien auf einer Höhe bringen
« Antwort #6 am: Sonntag, 4. April 2010, 00:09 »
Zitat
Frohe Ostern!
ebenso + prost!

wenn du diese eps bilder häufiger zu gebrauchen gedenkst, würde ich compers lösung voziehen und sein scheme-schnipsel automatisch bei jeder kompilation einbauen - das erspart dir dann die etwas mühselige konstruktion von hilfsstimmen für rein darstellerische zwecke!

ps: leider hast du es verpasst, die eps dateien mit den klarinettgriffen mitzuliefern, so dass ich auf mein einfaches copyleft.eps ausweichen musste!