[GastForen Programme Print/Bildbearbeitung Adobe InDesign Register «automatisieren»

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

Register «automatisieren»

Freeday
Beiträge gesamt: 5712

9. Jun 2011, 16:25
Beitrag # 1 von 31
Bewertung:
(6724 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Forum

Wir bedrucken 5-teilige Registerblätter (223x297mm) für Ordner mit
individuellen Texten. Bisher gebe ich die Texte manuell ein – eine Frickelarbeit…

Gibt es eine Möglichkeit, Texte über mehrere Seiten hinweg zu importieren?
Dabei müssten die Texte immer um 1/5 der Seitenhöhe verschoben werden
und nach 5 Seiten wieder zuoberst anfangen. Zum besseren Verständnis habe
ich einen Screenshot angehängt.

Die Tabs sehen am Schluss in etwa so aus:
http://ecx.images-amazon.com/...es/I/21pO-mriJJL.jpg

InDesign ist doch high-tech – ist sowas möglich und wenn ja – wie?

Gruss Stefan

(Dieser Beitrag wurde von Freeday am 9. Jun 2011, 16:28 geändert)

Anhang:
Bild 1.jpg (19.5 KB)
X

Register «automatisieren»

Martin Fischer
  
Beiträge gesamt: 12732

9. Jun 2011, 16:50
Beitrag # 2 von 31
Beitrag ID: #473395
Bewertung:
(6705 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Stefan,

ich vermute, dass die Aufgabe komplizierter ist, als spontan wahrgenommen.

Was passiert nach den angegebenen 5 Seiten?
Ist dort das Dokument zu Ende oder geht es da wieder von vorne los?


Wie liegen die Texte vor?
a. Alle Registereinträge in einer Datei, jeweils durch Absatzmarke getrennt?
b. Je Registereintrag eine Datei?

Neben einer Skriptlösung könnte ich mir etwa folgendes Vorgehen vorstellen:

1. Ziehe auf der ersten Seite des Dokuments einen Textrahmen mit der endgültigen Breite und über die gesamte Höhe auf (je nach Textstand ggf. vorher in 90°-Schritten drehen und im Kopf Höhe und Breite vertauschen);
2. Teile im Transformieren-Feld die Höhe (gedreht ggf. Breite) durch die Zahl der Register (5).
3. /Bearbeiten/Duplizieren und versetzt einfügen (Anzahl: Registerzahl-1; horizontal: 0; vertikal: Höhe des Textrahmens);
4. Vervielfache die Seite mit dem Textrahmen (Anzahl der Register);
5. Lösche auf den einzelnen Seiten die überflüssigen Textrahmen;
6. Verbinde die Textrahmen von S. 1 bis S. 5 (letzte Registerseite);
7. sichere das Template;
8. platziere den Registertext im ersten Textrahmen (Absatzumbruchoption: Beginn nächster Rahmen).

Falls sich nach den 5 Seiten die Serie wiederholen soll, in der Seitenpalette die Seiten auswählen und duplizieren (vervielfachen); anschließend jeweils den letzten Textrahmen der einen Serie mit dem ersten Textrahmen der nächsten Serie verbinden.

Arbeite konsequent mit Absatzformaten und Objektstilen, um nachträgliche Änderungen in Typographie und Stand schnell und global vornehmen zu können.

Kommt das öfters und mit variablen Höhen bzw. variabler Zahl an Tabs/Registerblättern vor, empfiehlt sich eine Automatisierung per Skript.

Zumindest wäre eine Masterdatei (Template) je Registerzahl für unterschiedliche Projekte angesagt.


als Antwort auf: [#473392]
(Dieser Beitrag wurde von Martin Fischer am 9. Jun 2011, 18:06 geändert)

Register «automatisieren»

Be.eM
Beiträge gesamt: 3329

9. Jun 2011, 18:05
Beitrag # 3 von 31
Beitrag ID: #473397
Bewertung:
(6669 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf [ Martin Fischer ] ich vermute, dass die Aufgabe komplizierter ist, als spontan wahrgenommen.…


…und vermutlich deshalb viele verschiedene Lösungsansätze bietet :-)

Was mir einfällt: Wenn man z.B. 5 verschiedene rechtsbündige Absatzformate hat, jeweils mit unterschiedlichem Einzug rechts, und diese sequentiell einander aufrufen lässt (Format nächster Absatz), dann könnte man das evtl. mit einem einzigen Textrahmen über die gesamte Höhe erledigen. Wo ich mir gerade nicht sicher bin, ist: klappt das mit der AF-Umschaltung auch bei importierten Texten? Müsste man mal rumspielen…

Grüße,
Bernd


als Antwort auf: [#473395]

Register «automatisieren»

Martin Fischer
  
Beiträge gesamt: 12732

9. Jun 2011, 18:09
Beitrag # 4 von 31
Beitrag ID: #473398
Bewertung:
(6668 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Bernd,

Deine Idee ist genial, weil einfach und schnell!

Antwort auf: Wo ich mir gerade nicht sicher bin, ist: klappt das mit der AF-Umschaltung auch bei importierten Texten?


Wohl nicht beim Importiervorgang.
Aber wenn ohnehin alles in einem Textabschnitt ist, kann die AF-Sequenz schnell zugewiesen werden.


als Antwort auf: [#473397]

Register «automatisieren»

Freeday
Beiträge gesamt: 5712

9. Jun 2011, 19:35
Beitrag # 5 von 31
Beitrag ID: #473405
Bewertung:
(6635 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
 
Hi there!

Wow, danke für all die Feedbacks! Die Register gehen nach 5 natürlich wieder
bei 1 los, je nach Umfang... Die Ursprungsdatei ist eigentlich von mir frei
wählbar. Excel CSV, TextEdit, whatever fits best.

Könntet Ihr mir die AF-Idee mal näherbringen? Klappt das auch mit zweizeiligen
Texten? (Textrahmen, linksbündig und 90° gedreht…)

Danke & Gruss
Stefan


als Antwort auf: [#473398]

Register «automatisieren»

Uwe Laubender
Beiträge gesamt: 5299

9. Jun 2011, 20:08
Beitrag # 6 von 31
Beitrag ID: #473406
Bewertung:
(6614 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, zusammen!
Per Script könnte ich mir das auch vorstellen. Anbei das Script und eine 13seitige Demodatei, vor und nach der Anwendung.

Wichtig (falls das jemand von euch nachbauen will): die Textrahmen von UNTEN nach OBEN nacheinander erzeugen wegen der Indexreihenfolge auf der Seite. Neben den Reitern dürfen KEINE Textrahmen auf den Seiten vorhanden sein.

Hier das Script:

Code
//TextrahmenInhalt_Modulo5.jsx 
//Uwe Laubender

//Siehe folgende Diskusion auf HDS:
//http://www.hilfdirselbst.ch/gforum/gforum.cgi?do=bookmark_set;post=473392;

var textFramesPerPage = 5;
var d = app.activeDocument;
var p = d.pages;

//Inhalt für die Reiter (Array-Länge = Seitenanzahl = benötigte Reiteranzahl).
//Könnte auch ein zusammenhängender Textblock auf dem Pasteboard sein und wir nehmen die einzelnen Absätze (myContents[n]=myPage[n]=myText.paragraphs[n]).
var myContents = [
"Reiter 1","Reiter 2","Reiter 3","Reiter 4","Reiter 5","Reiter 6","Reiter 7","Reiter 8","Reiter 9","Reiter 10","Reiter 11","Reiter 12","Reiter 13"
];



for(n=0;n<p.length;n++){
//Beispiel: n modulo 5
//Bei jedem Schleifendurchgang wird diese Zahlenfolge erzeugt: 0,1,2,3,4,0,1,2,3,4 (...)
//Durch geschickten Seitenaufbau werden abwechselnd alle Textrahmen (Reiter) angewählt.
//Geschickter Seitenaufbau = Textrahmen von UNTEN nach OBEN nacheinander erzeugen wg. der Indexreihenfolge der Textrahmen.

//optische Kontrolle. Füllfarbe "Gelb" wird zugewiesen:
p[n].textFrames[n%textFramesPerPage].fillColor = "Yellow";
//Zuweisung des Inhalts:
p[n].textFrames[n%textFramesPerPage].contents = myContents[n];
};


Anbei noch die Demodateien.

MacBook Pro 2.4GHz | OS X 10.5.8 | Adobe CS3/CS4/CS5/CS5.5 Design Premium


als Antwort auf: [#473398]
Anhang:
TextrahmenInhalt_Modulo5_VOR_SCRIPT.idml (83.7 KB)   TextrahmenInhalt_Modulo5_NACH_SCRIPT.idml (84.7 KB)

Register «automatisieren»

Martin Fischer
  
Beiträge gesamt: 12732

9. Jun 2011, 20:51
Beitrag # 7 von 31
Beitrag ID: #473408
Bewertung:
(6600 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Stefan,

Antwort auf: Könntet Ihr mir die AF-Idee mal näherbringen? Klappt das auch mit zweizeiligen
Texten? (Textrahmen, linksbündig und 90° gedreht…)


Im Anhang ein Beispiel für die AF-Idee.

Die gelbe Unterlegung mit der Absatzlinie oben ist hier nur zu Illustrationszwecken (wäre so für zweizeiligen Text nicht zu gebrauchen).

Die Ausrichtung der Absätze (hier zentriert) kann nach Belieben angepasst werden. Bearbeite für Änderungen, die alle Absatzformate betreffen sollen, das Absatzformat '1', auf dem die anderen der Reihe nach basieren.

Die Absatzformate 1-5 basieren aufeinander und verweisen jeweils auf das nächste Format:
nächstes Format von 1 ist 2,
nächstes Format von 2 ist 3,
nächstes Format von 3 ist 4,
nächstes Format von 4 ist 5,
nächstes Format von 5 ist 1.

Der gedrehte Textrahmen ist auf der Musterseite vorbereitet.
Text einfließen lassen mit geladenem Cursor und Shift-Klick auf den auf der ersten Seite durchscheinenden Mustertextrahmen.


als Antwort auf: [#473405]
(Dieser Beitrag wurde von Martin Fischer am 9. Jun 2011, 21:00 geändert)

Anhang:
Register.idml (67.2 KB)

Register «automatisieren»

Uwe Laubender
Beiträge gesamt: 5299

9. Jun 2011, 21:09
Beitrag # 8 von 31
Beitrag ID: #473409
Bewertung:
(6583 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hier die Scriptvariante mit der AUSWAHL.

Textrahmen auf dem Pasteboard mit den korrekt formatierten Inhalten auswählen und Script laufen lassen.

Voraussetzungen:
1. Die Textrahmen müssen von UNTEN nach OBEN nacheinander aufgebaut worden sein.
2. Die Anzahl der Absätze in der Auswahl muß der Anzahl der Seiten entsprechen.

Script:
Code
//TextrahmenInhalt_Modulo5_SELECTION.jsx 
//Uwe Laubender

var textFramesPerPage = 5;
var d = app.activeDocument;
var p = d.pages;

//Auswahl eines Textrahmens auf dem PasteBoard:
//Inhalt korrekt formatiert wird auf die Reiter übertragen:
var myContents = app.selection[0];

if(myContents.paragraphs.length == p.length){

for(n=0;n<p.length;n++){
myContents.paragraphs[n].duplicate(LocationOptions.AFTER, p[n].textFrames[n%textFramesPerPage].insertionPoints[0]);
};

};


Angehängt noch die Testdateien.

MacBook Pro 2.4GHz | OS X 10.5.8 | Adobe CS3/CS4/CS5/CS5.5 Design Premium


als Antwort auf: [#473406]
Anhang:
TextrahmenInhalt_Modulo5_SELECTION_VOR_SCRIPT.idml (84.6 KB)   TextrahmenInhalt_Modulo5_SELECTION_NACH_SCRIPT.idml (85.5 KB)

Register «automatisieren»

Freeday
Beiträge gesamt: 5712

10. Jun 2011, 02:06
Beitrag # 9 von 31
Beitrag ID: #473416
Bewertung:
(6526 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf [ Uwe Laubender ] Hier die Scriptvariante mit der AUSWAHL.


Hallo Uwe

Ich sitz auf dem Schlauch – die Absatzformat-Version klappt soweit recht gut,
egal woher ich die Texte reinkopiere. Sobald ein Zeilenumbruch vorhanden ist
wechselt der Tab. Die Formatanpassungen erfolgen in den einzelnen AF…

Was ich aber nicht zum laufen bringe ist die Scriptversion. Liegt aber wohl
daran, dass sich meine Scriptkenntisse in engen Grenzen halten. Ich habe
absolut keine Ahnung wie das Script funktioniert (woher es den Text holt,
wie es die Textrahmen im Musterdok. erstellt und woher es den Inahlt
übernimmt…)

Gruss Stefan - schlaflos


als Antwort auf: [#473409]

Register «automatisieren»

Uwe Laubender
Beiträge gesamt: 5299

10. Jun 2011, 07:15
Beitrag # 10 von 31
Beitrag ID: #473420
Bewertung:
(6504 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Morgen, Stefan!

Tut mir leid. Das hätte ich vielleicht noch ausführlicher beschreiben sollen.
Das Script ist halbautomatisch.
Es geht davon aus, daß die Seiten mit den Textrahmen bereits existieren. D.h., die mußt Du anlegen, bevor Du das Script ausführst. Ebenso den einen Textrahmen außerhalb der Seiten mit den passenden Registerinhalten.

Deshalb habe ich ja die beiden idml-Dateien beigefügt. Die eine hat den Zusatz im Namen "VOR_SCRIPT", das ist die Ausgangssituation, die andere den Zusatz "NACH_SCRIPT", so sieht sie aus, nachdem das Script drübergelaufen ist.

Wichtig bei der Erstellung der Grundlagendatei ist nur eines: die Textrahmen müssen in einer bestimmten Abfolge hergestellt werden: nämlich von UNTEN nach OBEN. Somit entsteht eine Schichtung der Textrahmen.

Im Scripting-Jargon sagt man, der Index des obersten Textrahmens der Seite ist der Index 0, das nächstunterste hat den Index 1, bis wir auf das (in unserem Beispiel) unterste stoßen, das den Index 4 besitzt.

Diese Situation wiederholt sich bei den Seiten von Seite zu Seite. Und das nutze ich auch aus, da ich eine Schleife über alle Seiten laufen lasse, die eine Zahlenreihe erzeugt:
0,1,2,3,4,0,1,2,3,4,0,1,2,3 u.s.w. Also genau die Zahlenreihe, die auch in der benötigten Abfolge des Index der Textrahmen vorkommt.

Nun ist es ein Einfaches die Textrahmen über duplicate() einen korrekten Inhalt zukommen zu lassen.

Dieser Inhalt ist die AUSWAHL, die Du vor Ablauf des Scripts machen mußt: ein Textrahmen mit exakt soviel Absätzen an Inhalt wie Seiten in der Datei. Die Formatierung der Absätze sollte bereits der endgültigen entsprechen. Das Script überträgt nun diesen Inhalt Absatz für Absatz (von oben bis unten) auf die entsprechenden Textrahmen (die mit den von der Schleife erzeugten Indexzahlen).

WICHTIG: der Textrahmen mit dem benötigten Inhalt darf sicherheitshalber nur AUSSERHALB der Seiten stehen, da sonst die Gefahr bestünde, daß er beim Durchzählen der Schleife miteinbezogen wird. Nämlich dann, wenn er versehentlich eine Indexzahl von 0-4 trägt.

Ich hoffe, daß das jetzt klarer ist.

Noch etwas:

Die Zeile mit "var textFramesPerPage = 5;" am Anfang des Scripts stimmt mit der Anzahl der Textrahmen pro Seite überein.

Hättest Du eine Reiteranzahl von 6, müßtest Du hier die 6 anstatt der 5 eintragen. Noch mal (auch wenn's vielleicht nervt): die Indexreihenfolge der Textrahmen auf der Seite ist wichtig. Werden die Textrahmen von UNTEN nach OBEN aufgebaut, dann ist die korrekte Reihenfolge gegeben.

MacBook Pro 2.4GHz | OS X 10.5.8 | Adobe CS3/CS4/CS5/CS5.5 Design Premium


als Antwort auf: [#473416]

Register «automatisieren»

Freeday
Beiträge gesamt: 5712

23. Jun 2011, 09:47
Beitrag # 11 von 31
Beitrag ID: #474304
Bewertung:
(6305 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Forum!

Das Thema ist zum Glück nicht in der Versenkung verschwunden und ich habe die
Absatzformate so gut ich es konnte an meine Bedürftnisse angepasst.

Nun scheint aber das mit der "Nächstes Format" Zuweisung nicht zu funktionieren.
Es übernimmt einfach für alles das Format der ersten Seite.

Alles in allem konnte ich die Gedankengänge mit den Formaten gut nachvollziehen,
jetzt hapert es nur noch auf der Zielgeraden. Beiliegend findet ihr mein Template,
gezippt und im InDesign Austauschformat.

Den Inhalt (Register-Texte) erstelle ich in TextEdit. Übernommen wird danach
per copy-paste. Da steckt wahrscheinlich der (Denk-)Fehler…

Gruss Stefan


p.s. Die Einzüge links und rechts sind jeweils 279÷5 (59.4, 118.8, 178.2, 237.6, 297)
plus je 3mm links und rechts, deshalb die «unlogischen» Werte.



als Antwort auf: [#473420]
Anhang:
Resultat.inx.zip (37.4 KB)

Register «automatisieren»

Martin Fischer
  
Beiträge gesamt: 12732

23. Jun 2011, 10:07
Beitrag # 12 von 31
Beitrag ID: #474307
Bewertung:
(6293 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Stefan,

wähle den gesamten Textabschnitt der Registermarken aus.

Klicke in der Absatzformatpalette mit der rechten Maustaste auf das erste anzuwendende Absatzformat und wähle im Kontextmenü 'xxx und dann Nächstes Format anwenden'

Siehe auch die Hilfe ' Anwenden von aufeinander folgenden Formaten auf mehrere Absätze'.


als Antwort auf: [#474304]

Register «automatisieren»

Freeday
Beiträge gesamt: 5712

23. Jun 2011, 10:19
Beitrag # 13 von 31
Beitrag ID: #474308
Bewertung:
(6285 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin

Vielen Dank! Das war der entscheidende Hinweis! Jetzt mache ich mich ans
Automatisieren des Text-Imports – mal schauen was da noch machbar ist.

Ich bin doch immer wieder begeistert…

Gruss Stefan


als Antwort auf: [#474307]

Register «automatisieren»

Freeday
Beiträge gesamt: 5712

28. Jun 2011, 15:21
Beitrag # 14 von 31
Beitrag ID: #474619
Bewertung:
(6155 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf [ Freeday ] Jetzt mache ich mich ans Automatisieren des Text-Imports –
mal schauen was da noch machbar ist

Für mich anscheinend gar nichts… Skriptsprache spreche ich nicht mal in Ansätzen…

Wie kriege ich folgendes hin:
Script startet mit Aufforderung, ein Textfile auszuwählen
Text wird platziert im fertigen Tabs-Dokument
Text wird markiert und Absatzformat «1, dann nächstes Format zuweisen» zugewiesen

Der Text ist wie gesagt ein simples TextEdit Dokument…

Gruss Stefan


als Antwort auf: [#474308]

Register «automatisieren»

Kai Rübsamen
  
Beiträge gesamt: 4679

28. Jun 2011, 16:53
Beitrag # 15 von 31
Beitrag ID: #474637
Bewertung:
(6134 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Freitag,

versuch mal testweise folgendes:

Code
#target InDesign 

var _myFile = File(Folder.desktop + "/MeineDatei.csv");
_myFile.open("r");
var _myString = _myFile.readln();
while (!_myFile.eof) {
_myString += "\r" + _myFile.readln();
}

var _doc = app.documents[0];
var _styleName = "1"
var _firstStyle = _doc.paragraphStyles.item(_styleName);

if (app.documents.length > 0 && _firstStyle.isValid) {
var _sFrame = _doc.pages[0].textFrames[0];
_sFrame.contents = _myString;
var _p = _sFrame.parentStory.paragraphs;
_p[0].appliedParagraphStyle = _firstStyle;

if (_p.length > 1) {
for (n = 1; n < _p.length; n++) {
_p[n].appliedParagraphStyle = _p[n-1].appliedParagraphStyle.nextStyle;
}
}
} else {
alert ("Es ist entweder kein Dokument geöffnet oder das erste Format ist nicht vorhanden!")
}


Edit: Ich hab die Skriptversion um 17.18 Uhr ausgetauscht, weil ich nicht den Textabschnitt angesprochen habe.

In der ersten Zeile musst du noch den Pfad der CSV-Datei anpassen. Ich hab für meinen Test Martins Dokument genommen und gehe davon aus, dass dort auf der ersten Seite nur der eine Textrahmen liegt.

Edit 2: Wenn du deine Datei lieber per Dialog auswählen willst, tausche
Code
var _myFile = File(Folder.desktop + "/MeineDatei.csv"); 


gegen:
Code
var _myFile = File.openDialog("Wähle deine CSV-Datei"); 


Funktioniert das?

Gruß vom Skriptazubi ;-)


als Antwort auf: [#474619]
(Dieser Beitrag wurde von Kai Rübsamen am 28. Jun 2011, 17:39 geändert)

Anhang:
RegisterBeschriften.jsx (0.80 KB)
X

Neuste Foreneinträge


Kein Grep auf Satzzeichen am Ende einer URL

Logo � Strich- Farbkombination wie anzulegen?

DokumentAufsplitten: neue Versionen des JavaScripts

Cookie-Overload??

Adobe InDesign CC - Windows (x64) GPU-Unterst�tzung �ber NVIDIA Control Panel

Text und QR Code in PDF einf�gen per PitStop Aktion statt InDesign

Bildschirmflackern beim Markieren von Texten

N�chstes Treffen der IDUG Stuttgart

Automatische Sicherung

PDF �ffnen via Script UI?