[GastForen Programme Print/Bildbearbeitung Adobe InDesign CS2: Nummerierung auf mehr als einer Ebene

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

CS2: Nummerierung auf mehr als einer Ebene

Christoph29
Beiträge gesamt: 5

12. Aug 2006, 17:11
Beitrag # 1 von 9
Bewertung:
(3366 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen,

Wie kann man in InDesign CS2 Ueberschriften-Nummerierungen mit mehr als einer Ebene anlegen?

Zum Beispiel: 1.1, 1.2, oder 1.2.1.1 usw.

Ich habe ueberall gesucht, aber immer nur die erste Ebene gefunden.

Danke fuer Eure Hilfe!
Christoph


Platform: Windows XP, InDesign CS2 4.0
X

CS2: Nummerierung auf mehr als einer Ebene

Martin Fischer
  
Beiträge gesamt: 12623

12. Aug 2006, 17:50
Beitrag # 2 von 9
Beitrag ID: #244353
Bewertung:
(3362 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Nein.
Geht nur per Hand oder Skript.
Ein fertiges Skript kenne ich allerdings noch nicht.

Viele Grüße
Martin




als Antwort auf: [#244348]

CS2: Nummerierung auf mehr als einer Ebene

MSchmitz
Beiträge gesamt: 545

12. Aug 2006, 20:40
Beitrag # 3 von 9
Beitrag ID: #244371
Bewertung:
(3345 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
schau mal hier rein:
http://share.studio.adobe.com/...%3D54%26rppsel1%3D50
ist aber kostenpflichtig nach ablauf der demo-zeit.

markus schmitz


als Antwort auf: [#244348]

CS2: Nummerierung auf mehr als einer Ebene

Gerald Singelmann
  
Beiträge gesamt: 6259

12. Aug 2006, 21:49
Beitrag # 4 von 9
Beitrag ID: #244378
Bewertung:
(3342 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Robert Tkaczyck schreibt auch im amerikanischen InDesign Forum. Meistens nicht viel mehr als den Satz "You can try my tool (10 days trial)".

Da ich das so ausgesprochen unsympatisch finde, hier ein AppleScript Ansatz. Das hilft dem OP zwar nicht, aber vielleicht hat Martin morgen ja Langeweile und haut das mal eben nach JavaScript rum (hint... hint... ;)

Das Skript ist noch nicht hübsch, eine Menge Code geht dafür drauf, dass sehr viele Absatzformate vorhanden sein können.

Angenommen ich habe diesen Text:

3 Ich bin titel1

3.1 ich bin subtitel

ich bin ein langweiliges format

3.2 ich bin wieder subtitel

schon wieder ein langweiliges format

3.3 ich bin zwischentitel

ich bin eine kapitelüberschrift

4 ich bin mal wieder ein titel

4.1 ich bin ein zwischentitel

Dann müssen für die Absatzformate folgende Werte eingegeben werden
Anfangen bei 3
kapitel -1
langweiligesFormat 0
subtitel 2
titel 1
zwischentitel 2

Wenn sich was ändert, einfach das Skript noch mal starten. Man muss allerdings die Zahlen noch mal eingeben. Das ändert sich in der nächsten Version, sobald ich kapiert habe, wie man dem Dokument einen privaten Label verpasst (das war keine Aufforderung, im Moment will ich das gar nicht wissen ;)

Ich benutze es seit einigen Wochen erfolgreich, aber wie immer kann keine Garantie gegen Überraschungen gegeben werden. Ihr benutzt es auf eigene Gefahr.


Code
set lZiffern to {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"} 
set sInternSeparator to "."
set sLastSeparator to " "

tell application "Adobe InDesign CS2"
set aSel to selection
set aDoc to active document
if aSel = {} then return
set thisStory to item 1 of aSel
if class of thisStory is text frame then
set thisStory to parent story of thisStory
else
repeat until (class of thisStory is story)
set thisStory to parent of thisStory
end repeat
end if
set allStyles to every paragraph style of aDoc
set nStyles to count allStyles

activate

set myDialog to make dialog with properties {name:"Hierarchie bestimmen"}
tell myDialog
tell (make dialog column)
tell (make dialog row)
make static text with properties {static label:"Anfangen bei:"}
set startValueField to make integer editbox with properties {edit value:1}
end tell
make static text with properties {static label:"Oberste Ebene = 1; zweite = 2; etc. ;"}
make static text with properties {static label:"Absätze ohne Nr = 0 / -1 für Neustart 1. Level"}
set lHFields to {}
if nStyles > 10 then
set nHalfOfIt to nStyles div 2 + 2
else
set nHalfOfIt to nStyles
end if
tell (make dialog row)
tell (make dialog column)
repeat with n from 3 to nHalfOfIt
tell (make dialog row)
set aSTmp to (name of (item n of allStyles))
set lHFields to lHFields & (make integer editbox ¬
with properties ¬
{edit value:0, small nudge:1, minimum value:(-1 * nStyles), maximum value:(nStyles - 2)})
make static text with properties {static label:aSTmp}
end tell
end repeat
end tell
if nStyles > 10 then
tell (make dialog column)
repeat with n from (nHalfOfIt + 1) to nStyles
tell (make dialog row)
set aSTmp to (name of (item n of allStyles))
set lHFields to lHFields & (make integer editbox ¬
with properties ¬
{edit value:0, small nudge:1, minimum value:(-1 * nStyles), maximum value:(nStyles - 2)})
make static text with properties {static label:aSTmp}
end tell
end repeat
end tell
end if

end tell
end tell
end tell

set nu to show myDialog

if nu is true then
set startValue to edit value of startValueField as integer
set lStyleHierarchy to {}
set lBreakStyles to {}
set lBreakLevel to {}
repeat with m from 1 to (nStyles - 2) -- minus 2, weil wir [keins] und [basis] nicht berücksichtigen
repeat with n from 3 to nStyles
set aux to edit value of (item (n - 2) of lHFields)
if aux = (-1 * m) then
copy (item n of allStyles) to end of lBreakStyles
copy m to end of lBreakLevel
else if aux = m then
copy (item n of allStyles) to end of lStyleHierarchy
-- set lStyleHierarchy to lStyleHierarchy & (item n of allStyles)
end if
end repeat
end repeat
set nHeadStyles to count lStyleHierarchy
set nBreakStyles to count lBreakStyles
set lCounters to {(startValue - 1)}
repeat with n from 2 to nHeadStyles
set lCounters to lCounters & 0
end repeat

repeat with nPara from 1 to (count paragraphs in thisStory)
set aPara to (a reference to (paragraph nPara in thisStory))
set aStyle to applied paragraph style of aPara
try
set c1 to first character in aPara
set weiter to true
on error
set weiter to false
end try

if weiter then -- leere Absätze werden ignoriert
if aStyle is in lStyleHierarchy then -- Anfangsziffern löschen, wenn Format in Liste
if c1 is in lZiffern then
set c2 to second character in aPara
set c3 to third character in aPara -- Wir können nicht weiter als bis 99 zählen
if (c2 is sInternSeparator) or (c3 is sInternSeparator) or (c2 is sLastSeparator) or (c3 is sLastSeparator) then
repeat until first character of aPara is sLastSeparator
set contents of first character of aPara to ""
end repeat
set contents of first character of aPara to "" -- der last separator ist noch da
end if
end if
end if

if aStyle is in lStyleHierarchy then -- kleinere Level auf 0 setzen
repeat with i from 1 to nHeadStyles
if item i of lStyleHierarchy = aStyle then set thisIndex to i
end repeat
set aufNull to true
else if aStyle is in lBreakStyles then
repeat with i from 1 to nBreakStyles
if item i of lBreakStyles = aStyle then set thisIndex to (item i of lBreakLevel) - 1
end repeat
set aufNull to true
else
set aufNull to false
end if
if aufNull then
repeat with i from (thisIndex + 1) to nHeadStyles
set item i of lCounters to 0
end repeat
end if

if aStyle is in lStyleHierarchy then
set tempCounter to (item thisIndex of lCounters) + 1
set item thisIndex of lCounters to tempCounter
set tempIndex to index of first character of aPara
set hey to first character in aPara
repeat with n from thisIndex to 1 by -1
if n = thisIndex then
set contents of insertion point tempIndex of thisStory to (((item n of lCounters) as string) & sLastSeparator)
else
set contents of insertion point tempIndex of thisStory to (((item n of lCounters) as string) & sInternSeparator)
end if
end repeat
end if
end if
end repeat

else
--destroy dialog
return
end if
end tell



als Antwort auf: [#244371]

CS2: Nummerierung auf mehr als einer Ebene

Martin Fischer
  
Beiträge gesamt: 12623

12. Aug 2006, 22:57
Beitrag # 5 von 9
Beitrag ID: #244383
Bewertung:
(3337 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Lieber Gerald,

> "You can try my tool (10 days trial)".
Robert kommt aus Polen und beherrscht die englische Sprache nur begrenzt.
Außerdem glänzen ihm eben die Dollars in den Augen.
Allerdings sind seine Skripte pfiffig. Da würde ich gerne öfters mal in den Code reinschauen. Aber den weiß er gut zu verbergen. :-(

> aber vielleicht hat Martin morgen ja Langeweile und haut das mal eben nach JavaScript rum

Ich habe morgen bestimmt keine Langeweile, weil mir das Los zugekommen ist, für meinen Schwager einen Win XP Rechner neu einzurichten. Da werde ich morgen wohl ziemlich viel am Schimpfen sein und mir das ESTK herwünschen. ;-)

Im Moment bin ich ziemlich beansprucht und kann's keinem recht machen.
Aber vielleicht bekomme ich nächste Woche mal etwas Luft.

Dank für Deine AS-Vorlage.
Dieser Code haut mich fast um.
Da muß einiges drin stecken.
Ich druck mir das aus und studiere Deine Ausführung morgen während der Formatierung.

Viele Grüße
Martin




als Antwort auf: [#244378]
(Dieser Beitrag wurde von Martin Fischer am 12. Aug 2006, 23:46 geändert)

CS2: Nummerierung auf mehr als einer Ebene

Christoph29
Beiträge gesamt: 5

13. Aug 2006, 13:38
Beitrag # 6 von 9
Beitrag ID: #244404
Bewertung:
(3313 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi Gerald,

Danke, das Skript sieht ja echt nach viel Arbeit aus! Dann müssen wir ja jetzt "nur noch" warten, bis es jemand in JS umsetzt :-)

Gruß,
Christoph.


als Antwort auf: [#244378]

CS2: Nummerierung auf mehr als einer Ebene

Martin Fischer
  
Beiträge gesamt: 12623

13. Aug 2006, 14:32
Beitrag # 7 von 9
Beitrag ID: #244407
Bewertung:
(3307 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
> das Skript sieht ja echt nach viel Arbeit aus!

Das kann ich - zwischenrein - nur bestäigen.
Das ist ein goldiges Ei, was Du, Gerald, uns da gelegt hast.
Allein der Aufbau des Dialogs.
Ich weiß gar nicht, ob ich das in JS auf die Schnelle so hinbekommen würde.

> Dann müssen wir ja jetzt "nur noch" warten, bis es jemand in JS umsetzt

Bei mir dauert's tatsächlich ne Weile (frühestens Mitte bis Ende dieser Woche), bis ich wieder Zeit für so ein Skript habe.
Deswegen lasse ich diesmal gerne den anderen JavaScriptern den Vortritt.

Viele Grüße
Martin




als Antwort auf: [#244404]

CS2: Nummerierung auf mehr als einer Ebene

Martin Fischer
  
Beiträge gesamt: 12623

20. Aug 2006, 22:02
Beitrag # 8 von 9
Beitrag ID: #245756
Bewertung:
(3215 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Auf folgender Seite wird das Problem auch diskutiert und im Diskussionsverlauf ist ein Link auf ein VBS-Skript angegeben: Funktion Kapitel-Nummerierung?

Link zum Skript: Heading_V1_2.vbs

Zitat von Michael Kohler Hab das script mittlerweile auf meine homepage geladen:
http://www.kunstgebaeude.de/webdesign/Heading_V1_2.vbs

Das Script unter
Adobe Indesign CS2/Presets/Scripts
speichern und über Indesign dann mal laufen lassen.
(Fenster/Automatisieren/Scripten)

Ein Tutorium hab ich nicht dazu. Allerdings gibt es ein paar Dinge, die zu beachten sind:
* Die Überschriften müssen als Absatzformate gespeichert sein
* Textfelder sollten sich nicht überschneiden (bzw. der Text der beiden Textfelder)
* Das Script unterstützt keine Bücher, sondern nur einzelne Dokumente
* Die Nummerierung beginnt immer bei 1 (Man kann also nicht ein Dokument zB. ab der Überschrift
"3 Einführung" nummerieren lassen)

*Um das Script zu starten muß zuerst irgendein Textfeld markiert sein

* Das script startet mit einem Dialogfenster
* Jede zu nummerierende Überschrift (Hier: Heading) muß dem richtigen Absatzformat zugewiesen sein
* Der Haken vor Heading 1, Heading 2 usw. bedeutet das diese nummeriert werden soll
* "Split with" nennt das Zeichen, dass zur Trennung verwendet werden soll (zB 1.2 oder 1/2)
* Zweimal auf OK klicken um das Script zu starten
* Das Dokument wird zur Sicherheit erst gespeichert bevor die Nummerierung beginnt
* Durch "Datei/Zurück zur letzten Version" kann die Nummerierung rückgängig gemacht werden

Ach noch was: Das Script ist recht groß und benötigt etwas Zeit!

Hoffe das reicht erst mal


Erfahrungsberichte erwünscht.

Viele Grüße
Martin




als Antwort auf: [#244378]

CS2: Nummerierung auf mehr als einer Ebene

Heike Burch
Beiträge gesamt: 1241

13. Sep 2006, 21:03
Beitrag # 9 von 9
Beitrag ID: #250687
Bewertung:
(3018 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Genau das hab ich immer schonmal gesucht.
Aber kann mir jemand den Haken unten erklären:
"Heading 1 as Section marker" ???

Bei mir passiert kein Unterschied.
Viele Grüße,
Heike

• • • Der Publishing-Podcast: https://www.publishing-podcast.ch/ (Hörenswertes aus unserer Branche auf die Ohren!)
• • • MOLIRI-Newsletter: http://www.moliri.ch/newsletter/


als Antwort auf: [#245756]
X

Aktuell

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
29.09.2022

IDUGS#85 Press2id

Zoom Meeting
Donnerstag, 29. Sept. 2022, 19.00 - 21.00 Uhr

Vortrag

Kennst du WordPress? Vielleicht. Verwendest du WordPress? Ja, klar! WordPress ist das am weitesten verbreitete System für die Erstellung von Webseiten. Um Webseitenbau soll es auf dieser IDUG aber nicht gehen. Gregor zeigt press2id (github.com/grefel/press2id). Seine Open-Source-Lösung für die Verbindung von Web und InDesign. Richtig gelesen: InDesign liest mithilfe von press2id die Inhalte der WordPress-Webseiten und generiert daraus Zeitschriften, Kataloge, Programmhefte oder Bierdeckel (das zeigen wir natürlich auch!). So wird die „Content First“ Theorie zu einer konkret anwendbaren Praxis, ohne gleich die ganz großen Räder zu drehen. Versprochen: Jeder kann nach der IDUG innerhalb kürzester Zeit Daten von WordPress nach InDesign importieren. Aber Achtung: Prinzipiell kann press2id aus jeder Website, oder besser Contentmanagementsystem (CMS) Daten auslesen und nach InDesign importieren! Spannend, oder? Danach geht es in die Praxis: Stefan hat die Webseite des Parktheater Iserlohn (parktheater-iserlohn.de) gestaltet. Die gedruckten Spielpläne (parktheater-iserlohn.de/interaktive-spielplaene) werden mit press2id realisiert. Wir schauen in den Maschinenraum und zeigen, wie die Lösung des Projekts realisiert wurde.

Nein

Organisator: InDesign Usergroup Stuttgart

Kontaktinformation: Christoph Steffens, E-Mailidug AT satzkiste DOT de

https://idugs85.eventbrite.de/

Von Wordpress nach InDesign
Veranstaltungen
08.11.2022

Frankfurt, Fraport Conference Center
Dienstag, 08. Nov. 2022, 13.30 - 18.00 Uhr

Seminar

Auf der Enfocus World Tour stellen wir Ihnen gemeinsam mit Enfocus die aktuellen Highlights von Enfocus Switch und dem Impressed Workflow Server (IWS) vor. Wir präsentieren Ihnen anhand typischer Aufgabenstellungen in einem modernen Produktionsbetrieb die Möglichkeiten, die Enfocus Switch für die Automatisierung und Standardisierung von Abläufen bietet. Wir haben sowohl für Produktionsverantwortliche als auch technisch Interessierte ein spannendes Programm vorbereitet, bei dem Sie sicherlich viel Neues erfahren werden, welches Sie in Ihrem eigenen Betrieb umsetzen können. Die Veranstaltung bietet darüber hinaus eine hervorragende Möglichkeit, sich mit anderen Anwendern und Workflow-Spezialisten auszutauschen und Antworten auf konkrete Aufgabenstellungen zu erhalten, welche Sie mit Hilfe von Enfocus Switch/IWS umsetzen möchten.

Wir sind jeweils an 2 Tagen in Frankfurt, Hamburg und München vor Ort. Der erste (halbe) Tag richtet sich in erster Linie an Betriebsleiter und Produktionsverantwortliche in Druckereien - ist also weniger technisch orientiert - sondern gibt einen Überblick zu den heutigen Möglichkeiten einer automatisierten Produktion.

Der zweite Tag (Switch Anwender-Treffen) richtet sich an bestehende Switch-Anwender und Administratoren.

Anmeldung und weitere Infos: https://www.impressed.de/schulung.php?c=sDetail&sid=310

Ja

Organisator: Enfocus/Impressed

Kontaktinformation: Silvia Noack, E-Mailsnoack AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=310

Enfocus World Tour 2022