# Rohformatierer

Autor: Peter Becker
Script: rohformatierer.py

### Dieses Skript übernimmt nach einem einstimmigen Stimmenauszug bzw nach einem Import von Capella-Scan die ersten grundlegenden Formatierungsarbeiten

Für mehrstimmige Partituren ist dieses Skript weniger gut geeignet

Allgemeine Funktionen

- Nicht benötigte Zeilen werden aus dem Partiturlayout entfernen
- Stimmenbezeichnungen werden entfernen
- Falls als Stimmenbezeichnung Partitur oder Direktion eingetragen ist, wird die Stimmenbezeichnung der Zeile dort eingetragen. Diese Änderung wird in allen Einfachtext Elementen vorgenommen.
- Klammern werden entfernt

Pausen Funktionen

- Pausen zusammenfassen als Kirchenpausen oder Balkenpausen
- Ziffernposition bei Kirchen- oder Balkenpausen wählbare
- Unsichtbare Pausen sichtbar machen
- viele weitere Optionen im Zusammenhang mit der Pausenzusammenfassung

Noten Funktionen

- Halsrichtung korrigieren
  - nicht ausrichten : Einzelne Notenhälse behalten Ihre manuell gesetzte Ausrichtung, für die Stimme werden die Hälse
  auf Hauptrichtung gesetzt
  - ausrichten : Manuell gesetzte Ausrichtungen für einzelne Notenhälse werden zurückgesetzt, für die Stimme werden die Hälse
  auf Hauptrichtung gesetzt.
  - unverändert : Es werden keine Änderungen an der Halsrichtung vorgenommen. Das ist sinnvoll wenn mehrere Stimmen in
  einer Notenzeile stehen

- Halslängen und Steigung von Achtelbalken korrigieren ( scriptintern, nicht abwählbar )
- Darstellung der Doppelganzen wählbar ( Brevis oder modern )

Seiten- und Zeilenfunktionen

- Linker Zeilenrand auf 0, erste Zeile eingerückt (wählbar)
- Seitenränder anpassen (wählbar)
- Notenlinien Abstände anpassen (wählbar)
- Zeilenabstände anpassen (wählbar)
- zusätzliche Zeilenabstände entfernen ( sehr sinnvoll nach Import aus Capella Scan )
- Umschalten zwischen Hoch- und Querformat (wird zur Zeit nur wirksam nach speichern und neu laden der Capella Datei (Bug in Capella XML)
- Seitentexte positionieren ( siehe anhängende Beschreibung )

Taktnummern Funktionen

- Taktnummern überarbeiten
- entfernen, hinzufügen, verändern analog zum Capella Taktnummern Dialog. Taktnummern die mit dem
  Script Taktnummern erzeugt wurden sind nicht betroffen.
- Taktnummernkorrekturen auf Zeilenbasis entfernen ( sehr sinnvoll nach Import aus Capella Scan )
- Die hier getroffenen Definitionen überschreiben die Definitionen der Partitur bzw des Stimmenauszuges !

Hinweis zur Anwendung:

- Stimmenauszug erzeugen
- Rohformatierer aufrufen
- In Capella Extras / Partituraufteilung aufrufen
- Noch mal den Rohformatierer aufrufen
- Eventuell weitere Skripts von Paul Villiger wie z.B. Grafische Mehrtaktpausen

Seitentexte positionieren ( erst ab Capella 2008 Stepup-11 möglich )

Überschriften, Komponist usw sind in Capella einfache, nicht näher spezifizierte Texte. Da diese Texte auch nach einem Stimmauszug in jeder Stimme vorhanden sein sollten, werden sie an der ersten Seite verankert. Sie befinden sich also nach einem Stimmenauszug an der selben Position wie in der Partitur und müssen jedesmal von Hand korrigiert werden.

Schöner wäre es natürlich diese Arbeit durch den Rohformatierer durchführen zu lassen. Dazu muss den Seitentexten zuerst eine eindeutige Bezeichnung zugewiesen werden. Capella kann das ( zur Zeit ! ) nicht. Diese Aufgabe übernimmt das Script Textzuweisung. Dieses Script wird in der Partitur aufgerufen.

Wenn Capella einmal die Zuweisung beim Erstellen des Textobjektes beherrscht, ist das Script Textzuweisung nicht mehr erforderlich. Der Rohformatierer kann dann die benötigten Informationen direkt aus dem Textobjekt erkennen.

Folgende Objekte werden berücksichtigt :

- Einfachtext
  - x/y Koordinaten
  - Schriftart
  - Schriftgröße
  - Schnitt
  - Farbe
  - Ausrichtung
- Textfelder
  - x/y Koordinaten
  - Feldbreite
- Metafiles
  - x/y Koordinaten
  - Feldbreite
  - Feldhöhe

Vorgehensweise

- Die Partitur und die zukünftigen Partiturauszüge müssen sich in dem selben Unterordner befinden. Unterschiedliche Titel dürfen sich nicht in dem selben Unterordner befinden ( was ja auch, schon wegen der Übersicht, sinnvoll ist ).

- In der Partitur das Script Textzuweisung aufrufen. Damit werden die an der Seite verankerten Objekte eindeutig markiert.

- Den ersten Stimmenauszug aus der Partitur erstellen

- Den Rohformatierer zum ersten mal aufrufen und die allgemeinen Einstellungen für Noten, Pausen, Abstände usw einstellen.
  Seitentext nicht anpassen auswählen.

- Jetzt manuell die gewünschten Veränderungen an den Textobjekten durchführen ( Größe, Schriftart, Farbe, Position usw )

- Rohformatierer noch einmal aufrufen, diesesmal mit der Auswahl Seitentexte/Vorgaben speichern.

- Jetzt werden die neuen Parameter der Seitentexte ( Achtung: nur die zugewiesenen Objekte ! ) in der Datei textzuweisung.shl im selben Unterordner gespeichert, in dem sich auch dieser Stimmauszug und die Partitur befinden.

- Eventuell weitere Scripts um den Stimmenauszug fertigzustellen und abspeichern

- Den nächsten Stimmenauszug erstellen und den Rohformatierer aufrufen. Da jetzt alle Parameter, einschließlich der neuen Textpositionen bekannt sind, dieses mal Seitentexte/lt. Vorgaben anpassen auswählen. Die nach dem ersten Stimmenauszug manuell korrigierten Parameter werden nun automatisch übernommen.