Das Plugin stellt die beiden Werkzeuge Nägel und Magnete zur Verfügung:

Mit Nägeln werden die Abstände von Rahmen zu den Seitenkanten festgelegt. Magnete bestimmen die Abstände von Rahmen zueinander. Nägel und Magnete werden in zwei Situationen angewendet:

Das Dokument beschäftigt sich mit Nägeln und Magneten bei Seitenadaptionen.

Nägel und Magnete können nur an Rahmen verwendet werden. Nägel und Magnete an Linien können zum Absturz von InDesign® führen!

Nägel und Magnete sind standardmäßig unsichtbar. Zum Sichtbarmachen öffnen Sie mit Rechtsklick ins Dokument das Kontextmenü und wählen dort den Eintrag Nägel und Magneten -> Zeigen. Im Vorschau-Modus, in PDFs und im Druck bleiben Nägel und Magnete immer unsichtbar.

Hinweise zum Nagel-Werkzeug finden Sie auch in der Palette Fenster -> Hilfsprogramme -> Werkzeughinweise.

Beachten Sie bitte auch die Einschränkungen zu gedrehten Rahmen.

Nägel können an jedem Anfaßpunkt eines Rahmens gesetzt werden. Der Rahmen muss dazu selektiert sein.

Nägel in den Rahmenseiten bestimmen den Abstand einer Rahmenseite zur nächstliegenden Kante der Dokumentseite. Abstände können fix oder relativ sein. Sind zwei gegenüberliegende Rahmenkanten genagelt, verändert sich damit bei Änderungen der Seitengröße auch die Rahmengröße. Größenänderungen durch Nägel führen in der Regel zu nicht-proportionalen Größenänderungen der Rahmen. Für proportionale Größenanpassungen können Sie Ecknägel setzen.

Hier zwei Screenshots. Der rote Rahmen ist, in der Verkleinerung kaum erkennbar, links und rechts genagelt. Im zweiten Bild sehen Sie, dass der Rahmen auf der jetzt viel schmaleren Seite ebenfalls viel schmaler ist:


   ⇒ 

Mit dem blauen Nagel wird eine Rahmenseite exakt im gleichen Abstand zur Kante der Dokumentseite festgehalten. Oben und links genagelte Kanten behalten ihre Position (was In InDesign® bei normalen Seitengrößenänderungen ohne Adaption durchaus nicht selbstverständlich ist). Untere und rechte Kante werden wie folgt verschoben:

posneu = posalt + pagesizeneu - pagesizealt

Achtung bei Seitenverkleinerungen: Ist ein Rahmen beidseitig genagelt und wird die Dokumentseite mehr verkleinert als der Rahmen groß ist, würde der Rahmen eine Größe ≤ 0 bekommen. Diese Situation erkennt die Seitenadaption, läßt die Rahmengröße unverändert und markiert den Rahmen als fehlerhaft adaptiert.

Relative (rote) Nägel verschieben die Rahmenkante in Abhängigkeit zur Veränderung der Seitengröße. Die neue Lage der Seite berechnet sich wie folgt:

posneu = pagesizeneu / pagesizealt * posalt

Eine Rahmenkante auf 3/4 der Seite wird also bei jeder Seitengröße wieder auf 3/4 der Seite erscheinen.

sizealt  = 100
posalt   = 75
sizeneu  = 200

posneu   = 200 / 100 * 75 = 150

Links fixierte Rahmen über mehrere Seiten eines Druckbogens benötigen Ihre besondere Aufmerksamkeit: Sie müssen festlegen, ob sich die linke Rahmenkante an der linken Seitenkante der linken oder der rechten Seite orientieren soll. Default ist die linke Kante der Eltern-Seite.

Linke Nägel orientieren sich gewöhnlich an der linken Seite der Eltern-Seite. Wie Sie in den folgenden Screenshots sehen, gibt es für eine andere Entscheidung aber gute Gründe. Hier die Ausgangssituation:

Nach einer Änderung der Seitengröße soll :

Mit den Defaulteinstellungen erhalten Sie aber folgendes Ergebnis:

Gelber und schwarzer Rahmen sind richtig. Der blaue Rahmen hat sich aber zusammen mit der rechten Seite nach rechts bewegt. Das liegt daran, dass der blaue Rahmen der rechten Seite des Druckbogens "gehört" und sich daher auch an den Kanten der rechten Seite orientiert. 

Rahmen, die von der rechten Seite eines Druckbogens in die linke Druckbogen-Seite hineinragen brauchen also eine Festlegung, an welcher Dokumentseite sich ihre linke Rahmnekante orientieren soll.

Die Eltern-Seite eines Rahmen ist wie folgt definiert:

Die Eltern-Seite eines Rahmens ist die Dokumentseite, auf der der Schnittpunkt der Diagonalen der Boundingbox des Rahmens liegt. Liegt Schnittpunkt der Diagonalen genau auf einer Seitengrenze, wird die rechte Seite verwendet.

Oder in anderen Worten: Ziehen Sie ein othogonales Rechteck um das wie auch immer gestaltete Objekt. Die Dokumentseite, auf der der größte Teil dieses Rechteckes liegt, ist die Eltern-Seite. Haben zwei Dokumentseiten den gleichen Flächenanteil, wird die rechte Seite als Eltern-Seite verwendet.

Das ist nicht immer leicht zu erkennen. Rahmen über mehrere Seiten werden deshalb bei sichtbaren Nägeln und Magneten mit einem auf der Eltern-Seite markiert.

Rahmen, die vollständig auf einer Seite liegen, bekommen keine Markierung.

Um die linke Rahmenseite eines Rahmens an die linke Seite eines Druckbogens zu binden, gehe Sie wie folgt vor:

  1. Setzen Sie einen Nagel in den mittleren Anfasspunkt der linken Rahmenkante.
  2. Mit gehaltener SHIFT-Taste in den Nagel (entweder direkt am Rahmen oder in der Palette priint:adjust) können Sie die Seitenbindung ändern. Lehnt sich der Nagel an die linke Seite an, erhält der Nagel einen kleinen Linkspfeil als Zusatz:

Ist die linke Seite des blauen Rahmen an der linke Dokumentseite fixiert, erhalten wir das gewünschte Ergebnis:

Ecknägel werden zur proportionalen Skalierung von Rahmen in Abhängigkeit von der Seitengrößenänderung verwendet. Die Skalierung kann fest oder relativ zur Änderung der Seitengröße gewählt werden. Seiten können nicht-proportional verändert werden. Als Basis zur Berechnung der neuen Rahmengröße wird der Wert verwendet, in dessen Richtung sich die Seitengröße weniger ändert. Werden die Seiten in eine Richtung verkleinert und eine vergrößert, wird der Wert der Verkleinerung verwendet. Der Ecknagel ist mit einem kleinen Thermometer versehen mit 'niedriger Temperatur' versehen (). Um die größere Seitenänderung für die Rahmenanpassung zu verwenden, setzen Sie den Nagel mit gehaltener Shifttaste ().

Ecknägel fixieren die Rahmenseiten nicht! Soll der Rahmen an einer oder mehrerer Seiten fixiert werden, müssen zusätzlich Nägel and den Rahmenseiten gesetzt werden. (Es ist also egal, an welcher Ecke Sie den Ecknagel setzen.)

Ecknägel verwenden die absoluten Seitengrößenänderungen zur Anpassung des Rahmens: Die Rahmengröße wird in der Richtung der kleineren Seitengrößenänderung um genau diesen Betrag verändert. Die andere Dimension wird so skaliert, dass die ursprünglichen Proportionen erhalten bleiben:

δw   = pagewidthneu - pagewidthalt
δh   = pageheightneu - pageheightalt

Wenn |δw| < |δh|                           // > bei Maximum-Nägeln
    fWneu  = fWalt + δw                      // Breitenänderung addieren
    fHneu  = fHalt * fWneu / fWalt            // Proportionen erhalten
sonst
    fHneu  = fHalt + δh                      // Höhenänderung addieren
    fWneu  = fWalt * fHneu / fHalt             // Proportionen erhalten

Achtung bei Seitenverkleinerungen: Ist ein Rahmen kleiner als die Seitengrößenänderung, würde der Rahmen eine Größe ≤ 0 bekommen. Diese Situation erkennt die Seitenadaption, läßt die Rahmengröße unverändert und markiert den Rahmen als fehlerhaft adapiert.

Relative Ecknägel wählen die Grundlage zur Berechnung der neuen Größe auf die gleiche Art aus wie normale Ecknägel. Aber als Größenänderung wird nicht der Absolutbetrag der Seitengrößenänderung verwendet, sondern die Seitengrößenänderung in Bezug zur alten Rahmengröße:

δw   = pagewidthneu / pagewidthalt * fWalt    // fW : Rahmenbreite
δh   = pageheightneu - pageheightalt * fHalt  // fH : Rahmenhöhe

Wenn δw < δh                               // > bei Maximum-Nägeln
    fWneu  = fWalt + δw                      // Breitenänderung addieren
    fHneu  = fHalt * fWneu / fWalt             // Proportionen erhalten
sonst
    fHneu  = fHalt + δh                      // Höhenänderung addieren
    fWneu  = fWalt * fHneu / fHalt             // Proportionen erhalten

Magneten legen den Abstand zwischen Rahmen fest. Verändert ein Rahmen bei der Adaption seine Größe oder Position, werden alle Rahmen, zu denen eine Magnetverbindung zeigt, so verschoben, dass der alte Rahmenabstand wiederhergestellt ist. Haben die so verschobenen Rahmen weitere Magnetverbindungen, werden auch die wiederhergestellt usw. .

Es gibt vier Arten von Magneten:

  1. Absoluter Rahmenmagnet
  2. Relativer Rahmenmagnet
  3. Alternative Magneten
  4. Magnetischer Bildpunkt
  5. Bildpunkt-Magnet

So setzen Sie Magneten:

  1. Magnet-Werkzeug aktivieren
  2. Startrahmen durch Klick auswählen
  3. Über den mittleren Anfasspunkten der Seiten dreht sich der Cursor in die Zielrichtung des Magneten.
  4. Klicken Sie die gewünschte Startseite.
  5. Wählen Sie jetzt den Zielrahmen aus. Über den mittleren Anfaßpunkten der horizontalen bzw. vertikalen Seiten des Zielrahmens ändert der Mauszeiger sich jetzt zu einem Kettensymbol und mit Mausklick werden die beiden Rahmen miteinander verbunden.
  6. Um den Vorgang abzubrechen, wählen Sie einfach ein anderes Werkzeug oder noch einmal das Magnetwerkzeug.
  7. Setzen Sie das Magnet-Ende mit einem weiteren Mausklick. Sind die Nägel und Magnete im Dokument sichtbar (Kontextmenü Nägel und Magneten -> Zeigen) wird jetzt eine Verbindung zwischen beiden Rahmen gezeigt, an der der aktuelle Abstand der Rahmen zueinander zu sehen ist. Der Wellensymbol dieser Linie ist der Nähe des Zielrahmens sichtbar und zeigt mit seiner Wellenseite auf den Zielrahmen.
  8. Mit gehaltener ALT-Taste über Magnet-Enden ändert sich der Mauszeiger in eine Schere. Damit können Magnete wieder entfernt werden.

Die aktuellen Magnetabstände werden in den betroffenen Rahmen hinterlegt und jedesmal aktualisiert, wenn die Geometriedaten einer der Rahmen außerhalb einer Adaption geändert werden.

Beachten Sie bitte folgendes:

Absolute Magnetabstände werden von der Adaption genauso wieder hergestellt, wie sie waren.

Bei relativen Magnetabständen werden die Magnetabstände im Verhältnis zur alten Seitengröße wiederhergestellt:

distneu   = distalt * pagesizeneu / pagesizealt

Alternative Magneten werden verwendet, wenn die Position eines Rahmens von der Größe mehrerer Rahmen abhängt. Alternative Magnete können auf Kanten zeigen, die bereits einen normalen Magneten haben. Beim Auswählen der Zielkante halten Sie zusätzlich die Alt-Taste gedrückt. Alternative Magneten werden durch eine gestrichelte Linie gekennzeichnet. Sie können bis zu 8 Alternativen setzen.

Die Wirkung alternativer Magnete ist wie folgt :

  1. Ändert einer der Elternrahmen bei einer Adaption seine Position und/oder Größe werden alle anderen Elternrahmen ebenfalls nach ihrer aktuellen Position befragt. Zeigen die Magneten auf die obere Kante, werden die unteren Kanten der Elternrahmen verwendet, zeigen sie auf die untere Kante, werden die oberen Kanten der Elternrahmen verwendet (analog links/rechts). Der Rahmen E1, der am weitesten in die geprüfte Richtung zeigt, wird als Referenzrahmen verwendet.
  2. Von allen Elternrahmen werden die ursprünglichen Abstände ermittelt. Der minimale Abstand a1 wird verwendet.
  3. Der Zielrahmen wird so platziert, dass er in der angegeben Richtung die Entfernung a1 von E1 bekommt.

Die gelben Rahmen sollen bei der Seitenadaption an ihren Inhalt angepa§t werden. Der grüne Rahmen soll aber immer den gleichen Abstand von 15 mm zum größten der drei gelben Rahmen haben. Sie benötigen jeweils einen Magneten zwischen den gelben und dem grünen Rahmen (erstes Bild).

Im zweiten Bild sehen Sie das Ergebnis der Adaption: Der erste gelbe Rahmen wird am höchsten und die alternativen Magneten verschieben den grŸnen Rahmen so, dass er 15mm unter diesem Rahmen liegt.



 ⇒ 

Magnetische Bildpunkte ziehen bei Größenänderungen einen anderen Rahmen hinter sich her: Der Rahmen bleibt immer am gleichen Bildpunkt stehen, egal wie Bildrahmen oder Bild verschoben oder skaliert werden. Rahmen und Bilder dürfen gedreht sein, nur die Bilddrehung darf sich während der Adaption nicht ändern. In einem Bild können mehrere magnetische Bildpunkte definiert werden.

Magnetische Bildpunkte können nur an Bildrahmen festgelegt werden. Bildpunkte sind erst dann magnetisch, wenn Sie in beiden Dimensionen einen Bildmagneten gesetzt haben.

Beispiel

Die Bilder zeigen zwei unterschiedliche und unterschiedlich große Ausschnitte einer Küche. Die Spüle wird dabei jeweils mit einem roten Kreis hervorgehoben. Der Kreis ist nicht Teil des Bildes. Der Bildrahmen wird mit Seitennägeln an die Dokumentgröße angepasst und der Bildinhalt wird an die neue Rahmengröße angepasst. Das Beispieldokument finden Sie hier.

    ⇒    

So gehen Sie dafür vor:

  1. Legen Sie Rahmen an, der dem Bildpunkt folgen soll. Im Screenshot ist das der blaue Rahmen. Legen Sie diesen Rahmen und den roten Kreis so neben das Bild, dass beide leicht ausgewählt werden können.

  2. Wählen Sie das normale Magnet-Werkzeug.

  3. Klicken Sie die linke (oder rechte) Seite des Bildes.

  4. Klicken Sie mit gehaltener Shift-Taste die gleiche Seite des blauen Rahmens.

  5. Wiederholen Sie das Gleiche für die oberen bzw. unteren Kanten. In der Ecke der beiden Kanten erscheint jetzt ein dicker Pfeil mit dem markiert wird, welche Ecke des Rahmens magnetisch ist.

  6. Damit wären Sie (eigentlich) fertig. Aber sicher ist Ihnen aufgefallen, dass nur die Eckpunkte des beweglichen Rahmens (hier des blauen Rahmens) magnetisiert werden können. Im Beispiel soll aber der Mittelpunkt eines Rahmens (hier der rote Kreis) platziert werden. Und da Größenänderungen auch die Skalierung des Bildes ändern werden, hilft es leider nicht, den magnetischen Rahmen mittig auf den Wunschpunkt im Bild zu setzen.

    Die Lösung ist ein denkbar einfacher Trick: Setzen Sie den roten Ring mit seiner Mitte genau auf die linke obere Ecke des blaue Rahmens. Damit der Ring dem blauen Rahmen folgen wird, setzen Sie zwei normale Magneten vom blauen Rahmen zum roten Ring. Im Screenshot sind die beiden Magneten grün markiert und der roten Ring ist zur besseren Handhabung noch nicht genau platziert:

  7. Zum Schluß platzieren Sie beide Rahmen den Wunschpunkt im Bild: den blauen Rahmen mit der Ecke des Pfeiles und den roten mittig. Da der blaue Rahmen hier nur der Hilfsrahmen ist, können Sie ihn (für dieses Beispiel) jetzt unsichtbar machen. Verwenden Sie dazu die Ebenen-Palette, 0%-Durchsichtigkeit oder legen Sie den Rahmen einfach hinter das Bild.


Der Bildpunkt-Magnet ist das Gegenstück zum magnetischen Bildpunkt. Hier zieht nicht das Bild einen Rahmen hinterher, sondern ein Rahmen zieht das Bild: Der Bildpunkt-Magnet platziert das Bild so, dass ein festgelegter Bildpunkt immer an der gleichen relativen Stelle der Seite liegt.

Voraussetzung für den Bildpunkt-Magneten ist ein Bezugsrahmen. Der Rahmen darf unsichtbar sein.

Beispiel

Ein Bildpunkt (hier der Wasserhahn der Spüle) soll immer im gleichen Abstand zur linke oberen Ecke des Dokumentes gezeigt werden und mit einem roten Kreis - der nicht zum Bild gehört - hervorgehoben werden. Das Bild selbst passt sich mit vier Seitennägeln immer an die Dokumentgröße an. Das enthaltene Bild wird dabei entsprechend skaliert. Das Beispieldokument finden Sie hier. Hier zwei Screenshots:

    ⇒    

So gehen Sie dafür vor:

  1. Als erstes legen Sie einen Hilfsrahmen an. Dieser Rahmen zieht später das Bild an die richtige Stelle. Legen Sie diesen Rahmen und den roten Kreis so neben das Bild, dass beide leicht ausgewählt werden können.

  2. Damit der Hilfsrahmen immer den gleichen Abstand zur linken oberen Ecke des Dokumentes hat bekommt er oben und links jeweils einen blauen Nagel.

  3. Wählen Sie das Werkzeug Roter Magnet.

  4. Klicken Sie die linke Seite des Bildes.

  5. Shift-Klicken Sie die linke Seite des blauen Rahmens.

  6. Wiederholen Sie das jeweils mit den oberen Kanten. Im Rahmen zeigt jetzt ein dicker Pfeil in die linke obere Ecke und die roten Magnetmarkierungen zeigen auf die linke und obere Kante des Bildinhaltes:

  7. Damit wären Sie (eigentlich) fertig. Aber sicher ist Ihnen aufgefallen, dass nur die linke obere Ecke des blauen Rahmens als Fixpunkt ausgewählt werden kann. Im Beispiel soll aber der Mittelpunkt eines Rahmens (hier der rote Kreis) platziert werden. Und da Größenänderungen auch die Skalierung des Bildes ändern werden, hilft es leider nicht, den Hilfsrahmen einfach Rahmen mittig auf den Wunschpunkt im Bild zu setzen.

    Die Lösung ist ein denkbar einfacher Trick: Setzen Sie den roten Ring mit seiner Mitte genau auf die linke obere Ecke des blaue Rahmens. Damit der Ring dem blauen Rahmen folgen wird, setzen Sie zwei normale Magneten vom blauen Rahmen zum roten Ring. Im Screenshot sind die beiden Magneten grün markiert und der roten Ring ist zur besseren Handhabung noch nicht genau platziert:

  8. Jetzt noch das Fine-Tuning: Platzieren Sie blauen und roten Rahmen an die gewünschte Bildposition. Achten Sie darauf, dass der rotre Ring mit seiner Mitte auf der linken oberen Ecke des blauen Rahmens liegt. Den blauen Rahmen können Sie danach unsichtbar machen (Ebene-Palette, 0% Durchsichtkeit oder einfach hinter das Bild.)

Aufgabe der Adaption ist geometrisch richtige Anordnung der Seitenrahmen gemäß den gesetzten Nägeln und Magneten. Rahmen können dabei Position und Größe ändern. Die dadurch nötigen Inhaltsanpassungen der Rahmen können über Regeln, die den Rahmen zugeordnet sind, festgelegt werden. Alle verfügbaren Inhaltsregeln werden im Regel-Popup der Palette priint:adjust gezeigt:

Die Regeln zur Bearbeitung von Rahmeninhalten sind nicht Bestandteil von priint:adjust. Sie können aber auf Anfrage vorkonfigurierte Lösungen von WERK II bekommen. Wenden Sie sich dazu bitte an unseren Support. Hier finden Sie Hinweise zum Erstellen eigener Regeln.

Skripte können in folgenden Situationen ausgeführt werden :

Jedem Rahmen können beliebig viele Regeln zugeordnet werden. Wählen Sie dazu die gewünschte Regel und den Zeitpunkt der Ausführung aus und klicken Sie dann das + links neben den beiden Popup-Menüs. Die Regeln werden während der Adaption automatisch in den angegebenen Situationen ausgeführt. Die Reihenfolge der Bearbeitung entspricht der Reihenfolge in der Liste. Mit den Pfeilen links neben der Liste kann die Reihenfolge geändert werden.

Wird einem Rahmen eine Inhaltsregel hinzugefügt, werden die ID und der vollständige Skripttext der Regel im Dokumentrahmen hinterlegt. Bei der Anwendung einer Regel ist der ursprüngliche Datenpool also nicht mehr nötig. Adaptionen können später auch dann richtig ausgeführt werden, wenn die ursprüngliche Konfigurationsquelle nicht mehr verfügbar ist. (Die priint:adjust Plugins müssen aber natürlich trotzdem installiert sein.)

Werden Regeln in der Konfiguration geändert, hat das keine Auswirkung auf in Rahmen hinterlegte Skripte. Mit dem Update-Button der Palette priint:adjust können die Regeln aus der Konfiguration neu übernommen werden. Alle im Dokument hinterlegten Regeln, die auch in der Konfiguration definiert sind, werden dann mit ihrem neuen Inhalt überschrieben. Die Zuordnung erfolgt über die IDs der Regeln. Manuelle Änderungen an den Regeln im Dokument gehen dabei verloren.

Regeln können deaktiviert und aktiviert werden. Standardmässig sind Regeln aktiviert. Zu Testzwecken ist es aber manchmal hilfreich, Regeln auch abschalten zu können. Klicken Sie das Statusfeld vor dem Skriptnamen, der Eintrag wird dann deaktiviert und grau dargestellt:

Mit einer Comet-Partnerlizenz können die Skripte von Regeln editiert werden. Doppelklicken Sie dazu den Namen der Regel in der Liste der Regeln des Rahmens. Im erscheinenden Fenster können Sie das Skript editieren. Mit dem "Sichern"-Button des Editors werden die Änderungen ins Dokument übernommen. Es wird nur dieses eine Skript und nur im Dokument geändert. Änderungen in den Konfigurationsdaten werden dabei nicht gemacht. Die Änderungen können mit Undo rückgängig gemacht werden.

Adapter-Regeln werden als cScript-Skripte in der Datei/Datenbanktabelle actions definiert und bekommen dort die TypID 35. Alle Aktionen mit diesem Typ werden beim Login automatisch in das Regel-Popup der Palette priint:adjust geladen. Um einen Eintrag im Popup Popupmenüs zu deaktivieren, geben Sie dem entsprechenden Eintrag in actions die classid -1.

In den Skripten kann auf alle Skriptfunktionen zugegriffen werden. Sie haben also die gesamte Bandbreite von cScript zur Verfügung. In den Skripten der Seitenadaption sind zusätzliche zu gFrame, gDocument, ... eine Reihe weiterer globaler Variablen zur Adaptionsunterstützung definiert. Die folgende Tabelle beschreibt diese Variablen. Die Skripte sollten alle den folgenden Include bekommen :

#include "internal/types.h"

Name Typ Beschreibung
gScriptType int In welcher Situation wird das Skript gerufen?

kActionBefore
kActionAfterMove
kActionAfterResize
kActionAfter

Achten Sie darauf, diese Abfragen am Anfang des Skriptes zu machen.

gPageWidthOrg
gPageHeightOrg
float Originalgröße der Seite des Rahmens gFrame in Punkten
gPageWidthNew
gPageHeightNew
float Neue Größe der Seite des Rahmens gFrame in Punkten
gResizeX
gResizeY
float Faktor der aktuellen Größenänderung in Prozent (1.0 entspricht 100%). Der Wert ist nur im kActionAfterResize Skript definiert. Sonst ist er 0.0.
gPage int Aktuelle Seitenzahl (1 basiert)
gOrgFrame ItemRef Die Variable ist nur aus Gründen der Rückwärtskompatibilität noch definiert. Sie ist immer 0. Verwenden Sie für die Grössenangaben des Originalrahmens die Varaiblen gOrgFrameLeft, ... .
gOrgFrameLeft float Koordinaten (in Punkten) des Rahmens gFrame vor der Adaption des Dokumentes
gOrgFrameTop
gOrgFrameRight
gOrgFrameBottom
gLastFrameLeft float Koordinaten (in Punkten) des Rahmens gFrame vor der Adaption des Rahmens (die zum Aufruf dieses Skriptes führte)
gLastFrameTop
gLastFrameRight
gLastFrameBottom
gOrgImageLeft float Koordinaten (in Punkten) des Bildes im Rahmen gFrame vor der Adaption des Dokumentes. Zu den Angaben gibt es nicht wie bei den Rahmen die analogen gLast~-Variabalen, da die Adaption selbst die Bildrahmen unberürht lässt.
gOrgImageTop
gOrgImageRight
gOrgImageBottom
gLastResizeX float Veränderung der Rahmengröße zum letzten Schritt der Adaption in Prozent (1.0 entspricht 100%)
gLastResizeY
gOrgResizeX Veränderung der Rahmengröße zum Original vor der Adaption in Prozent (1.0 entspricht 100%)
gOrgResizeY
gParam1
gParam2
gParam3
gParam4
char*

Jedem Skript können bis zu vier zusätzliche Parameter mitgegeben werden, die in der Palette angegeben werden können. Die Werte werden im Rahmen für jede Regel hinterlegt. Über die Konfiguration der Beschriftung siehe unten.

Die Skriptvariablen enthalten jeweils die hier angegebenen Werte :

gParam1 den Wert des ersten Feldes als String usw.. In den ~Int-Werten steht der gleiche Wert als Ganzzahl (soweit das möglich ist), und in den ~Float-Werten die entsprechende Kommazahl.

gParamInt1
gParamInt2
gParamInt3
gParamInt4
int
gParamFloat1
gParamFloat2
gParamFloat3
gParamFloat4
float

Das folgende Beispiel zeigt ein Skript, das die Schriftgröße eines Textrahmens gemäß den Größenänderungen der Adaption anpasst. Dabei können vom Benutzer in den Parametern 1 und 2 Unter- und Obergrenze der Schriftgröße angegeben werden. Im Parameter 3 kann das Wort integer stehen, in diesem Fall stellt das Skript sicher, dass die Schriftgröße ganzzahlig ist, also nicht etwa 14,1.

#include "internal/types.h"

int main ()
{
    float   resx  = gResizeX;
    float   sz    = 0.0;
    int     isz   = 0;
	
    if (gScriptType != kActionAfterResize || gResizeX == 1.0) return 0;
	
    sz = textmodel::get_fontsize (gFrame, 0);
    if (sz <= 0.0) return 0; // Error
	
    // Soll die Fontgrösse ganzzahlig sein?
    // Dann muss in Parameter 3 das Wort "integer" stehen    
    if (strcmp (gParam3, "integer") == 0)
    {
        isz	= toint (sz * resx);
        resx	= tofloat (isz) / sz;
    }
	
    // Die Parameter 1 und 2 enthalten Minimum und Maximum
    // der gewünschten Schriftgrösse.
    // ACHTUNG : Die Angabe können LEER SEIN!    
    if (gParamFloat1 > 0.0 && (sz * resx) < gParamFloat1) resx = gParamFloat1 / sz;
    if (gParamFloat2 > 0.0 && (sz * resx) > gParamFloat2) resx = gParamFloat2 / sz;

    // Skaliere auf neue Schriftgröße
    wlog ("", "# Scaling to new font size %f\n", sz * resx);
    textmodel::scale_font (gFrame, 0, -1, resx);
	
    return 0;
}

Im Screenshot sehen Sie die Regel Text an Rahmen anpassen mit ihren Parametern.

Rot : Die rote Schrift der Parameter Limits und anpassen signalisiert, dass die Parameter einer bereits einem Rahmen zugeordneten Regel angezeigt werden und Änderungen der Parameterwerte auch ins Dokument übernommen werden.

Schwarz : Sind die Parameternamen schwarz, werden lediglich die Definition der Regel und ihre Hilfetexte aus der Konfiguration angezeigt.

Die Namen der vier Parameterfelder werden im Feld outputdocumentation von actions jeweils durch ## getrennt angegeben. Ist ein Name leer (####) oder fehlt, wird auch kein Parametername angezeigt. Ein zusätzliches # vor dem Parameternamen bewirkt, dass das Eingabefeld dieses Parameters deaktiviert wird. Alle Parameternamen werden, wenn möglich, in die aktuelle InDesign®-Sprache übersetzt.

Hier ein sehr einfaches Beispiel, das die letzten beiden Parameter deaktiviert.

<outputdocumentation>Value 1##Value 1######</outputdocumentation>

Eine Reihe von Parametern benötigen eine feste Liste von Eingabewerten. Diese Werte können als Popupmenüs gezeigt werden. Die Werteliste wird dem jeweiligen Parameternamen dabei durch einen Zeilentrenner (\n, \n\r, \r, &#xA;, &#xD;) getrennt mitgegeben. Die Einträge der Liste werden ebenfalls durch Zeilentrenner getrennt. Ein ! am Beginn eines Eintrages markiert den Eintrag als Default-Eintrag. Ein Minus (-) erzeugt einen Trenner im Popup. Paramentername und -werte werden getrimmt (alle Whitspaces davor und dahinter werden entfernt).

Als Parameterwert wird der im Popup ausgewählte Text weitergegeben. Werte in Popup-Menüs werden daher aus naheliegenden Gründen nicht übersetzt.

Hier die Definition für die Regel aus dem obigen Screenshot:

<outputdocumentation>
    limits
    ##fit
        grow
        shrink
        !fit
    ###
    ###</outputdocumentation>

Im Feld inputdocumentation von actions können (optionale) Hilfetexte zur Beschreibung der Funktions und deren Parameter definiert werden.

Aus historischen Gründen muß die Beschreibung mit dem Vorspann unused##0## beginnen. Danach folgen, jeweils durch ## getrennt, die Hilfetexte der Funktion und ihrer vier Parameter. Fehlende Angaben werden ignoriert. Alle Hilfetexte werden, wenn möglich, in die aktuelle InDesign®-Sprache übersetzt.

Hier ein Beispiel.

<inputdocumentation>unused##0##fits the text content to the frame.
    ##Grenzen für die Textgröße, z.B. 10-40
    ##Unterstütze Verfahren
</inputdocumentation>

Bitte beachten Sie: Damit Adaptionsregeln auch ohne die aktuelle Datenkonfiguration verfügbar sind, werden Skripttexte, Parameternamen und Hilfetexte direkt ins Dokument eingefügt. Parameternamen und Hilfetexte werden dabei in der aktuellen Übersetzung übernommen und auch in anderen Sprachvarianten von InDesign® in dieser Sprache angezeigt werden.

Mit dem - Button der Palette können Sie Mehrfach-Adaptionen der aktuellen Datei erstellen. Sie werden dazu zuerst nach einer Steuerdatei gefragt. Diese Steuerdatei enthält Angaben über Zielordner, Dateinamen und die gewünschten Zielformate. Die Steuerdatei wird als XML-Datei erwartet. Hier ein Beispiel für drei Adaptionen:

<?xml version="1.0" encoding="utf-8"?>
<adaptions
	basename = ""
	folder = "$DESKTOP/adapt/ok"
	errfolder = "$DESKTOP/adapt/err">
	<adaption>
		<format>A5</format>
		<width></width>
		<height></height>
		<name></name>
   </adaption>
   <adaption>
		<format>A4</format>
		<width></width>
		<height></height>
		<name></name>
	</adaption>
	<adaption>
		<format>A3</format>
		<width></width>
		<height></height>
		<name></name>
	</adaption>
</adaptions>

Die Dateinamen werden aus basename (wenn nicht leer), dem Namen des aktuellen Dokumentes und der Seitengröße zusammengesetzt. Die Seitengröße der Zieldokumente kann als Formatname oder in Punkten erfolgen. Ist ein Formatname gegeben, werden width und height ignoriert. Erlaubt sind folgende Formatnamen mit den folgenden Größen:

Name Breite x Höhe in Punkten
US-Letter 612.0 x 792.0
US-Long 612.0 x 1008.0
US-Letter Half 396.0 x 612.0
US-Long Half 504.0 x 612.0
Tabloid 792.0 x 1224.0
A3 841.89 x 1190.551
A4 595.276 x 841.89
A5 419.528 x 595.276
B5 498.898 x 708.661
CD 340.0 x 342.0

cScript bietet eine Reihe von Funktionen zur Unterstützung vo Seitenadaption und Nägeln und Magneten:

Hier ein Beispiel-Javascript

var originalDoc = "/Users/paul/Desktop/aaa.indd";
var newWidth    = 595.276 * 1.5;
var newHeight   = 841.89 * 1.2;

var doc      = app.open(File(originalDoc));
doc.adapt (newWidth, newHeight);

doc.close (SaveOptions.YES);

Treten bei der Adaption Fehler auf, wird die Bearbeitung in aller Regel abgebrochen. Weitere Beschreibungen zu den Fehler finden Sie im Logfile. Das Logfile aktivieren Sie mit Hilfe des Menüs Plug-ins -> Logfile schreiben ... (Zusatzmodule statt Plug-ins in Versionen vor InDesign® 2025). Die folgenden logischen Fehler werden von der Adaption erkannt und führen nicht zum Abbruch. Die fehlerverursachenden Rahmen werden im Dokument hervorgehoben.

Fehlermarkierungen werden vor der nächsten Adaption oder mit dem Flyout-Menü Fehlermarkierungen zurücksetzen der Palette priint:adjust aus dem Dokument entfernt. Um die Fehlermarkierungen anzuzeigen, aktivieren Sie im Kontextmenü der Dokumentseiten den Eintrag Nägel und Magneten -> Fehlermarkierungen zeigen.

Größenfehler treten auf, wenn Rahmen kleiner sind als die aktuelle Seitenverkleinerung oder durch Seitenverkleinerungen eine Größe < 0 bekommen würden. In diesen Fällen bleiben die Rahmen unverändert und werden mit einem hellen Dreieck in der unteren rechten Rahmenhälfte markiert:

Änderungen der Rahmenüberlappungen sind die häufigsten Fehler bei Formatadaptionen. Es werden beide Änderungen geprüft : Sind neue Überlappungen entstanden und sind bisherige Überlappungen verloren gegangen. Bei Überlappungsfehlern werden jeweils beide beteiligten Rahmen mit einem 2x2-Raster markiert:

   ⇒  

Die Überprüfung der Überlappungen kann in der Palette priint:adjust für das aktuelle Dokument deaktiviert werden. Achtung : Diese Einstellung ist eine Dokument-Eigenschaft, keine Programm-Voreinstellung.

Bei gedrehten Rahmen wird zur Überprüfung der Überlappungen die BoundingBox um den Rahmen verwendet. Die ist natürlich größer als der eigentliche Rahmen. Dadurch werden teilweise falsche Überlappungen berechnet. Dieser kleine Fehler wird in einer der nächsten Programmversionen behoben sein.

Größenänderungen an gedrehten Rahmen können zu nicht-rechtwinkligen Verzerrungen der Rahmen führen.

Den Effekt können Sie ohne Nägel und Magnete einfach mit InDesign®-Bordmitteln nachstellen:

  1. Legen Sie ein beliebigen Rahmen an und drehen Sie diesen Rahmen etwas.
  2. Legen Sie einen zweiten Rahmen so an, dass er den ersten umschließt.
  3. Gruppieren Sie beide Rahmen.
  4. Verändern Sie jetzt die Breite de Gruppenrahmens mit der Maus.

   ⇒ 

Sieht lustig aus, ist aber erklärbar: Das Problem ist, dass bei einer Verbreiterung der Gruppe eigentlich auch deren Höhe wachsen müsste - weil sich die rechte untere Ecke des blauen Rahmens nicht ur nach rechts, sondern auch nach unten bewegen müsste.. Sie haben aber einen seitlichen Anfaßpunkt gewählt. Und damit haben Sie die Höhe festgelegt. Keine weiteren Freiheitsgrade! Also versucht sich InDesign® irgendwie zu helfen.

Hinweis : Um einen solchen Rahmen wieder zu einem Recheckrahmen zu machen, verwenden Sie das InDesign®-Menü Objekt -> Form konvertieren -> Rechteck.

Das selbe Problem tritt bei Seitenadaptionen immer dann auf, wenn ein gedrehter Rahmen in beiden Richtungen durch Nägel und/oder Magneten in seiner Größe angepasst werden soll. In allen anderen Fällen haben wir das Problem trickreich und algebraisch gelöst, aber In diesem Fall verweigert die Adaption eine Rahmenanpassung und markiert den Rahmen mit einem weißen Kreis:

Dieser Fehler tritt nur im Zusammenhang mit dem Update-Button der Palette auf. Der Fehler wird als Kurztext über den Rahmen geschrieben.