[GastForen Programmierung/Entwicklung AppleScript Indesign_taggedtextexport_Absatz

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

Indesign_taggedtextexport_Absatz

Anonym
Beiträge gesamt: 22827

13. Sep 2006, 13:51
Beitrag # 1 von 10
Bewertung:
(2506 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo liebe Skripter,

möchte zusammenhängende Absätze die alle das gleiche Absatzformat besitzen exportieren.
Habe schon etwas zusammengepfriemelt, schön dass keine Fehlermeldung kommt, weniger schön ist das unerhoffte (nicht vorhandene) Ergebnis.

tell application "Adobe InDesign CS2"
set aFile to ((path to desktop folder as string) & "test.txt")
tell front document
  tell story 5
tell (every paragraph whose name of applied paragraph style is "Literatur-h")
export format tagged text to aFile
end tell
end tell
  end tell
end tell

Hab schon alles mögliche probiert auch mit "select"" komme ich nicht weiter.
Hilfeee!


Gruß
Jürgen
X

Indesign_taggedtextexport_Absatz

TMA
Beiträge gesamt: 399

14. Sep 2006, 05:40
Beitrag # 2 von 10
Beitrag ID: #421147
Bewertung:
(2505 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hallo jürgen,
kann dein problem leider nicht nachvollziehen. hab ein neues dokument erstellt mit einer textbox und a bisl text mit deinem absatzformat erstellt.
hab dein script übernommen und nur den:
tell story 5 durch tell story 1 ersetzt.
bei mir wird folgendes exportiert:

Code
<ASCII-MAC> 
<Version:4><FeatureSet:InDesign-Roman><ColorTable:=<Black:COLOR:CMYK:Process:0,0,0,1>>
<DefineParaStyle:NormalParagraphStyle=<Nextstyle:NormalParagraphStyle>>
<DefineParaStyle:Literatur-h=<BasedOn:NormalParagraphStyle><Nextstyle:Literatur-h>>
<ParaStyle:Literatur-h>das ist ein test


gruß
TMA


als Antwort auf: [#421146]

Indesign_taggedtextexport_Absatz

Anonym
Beiträge gesamt: 22827

14. Sep 2006, 06:57
Beitrag # 3 von 10
Beitrag ID: #421148
Bewertung:
(2505 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo TMA,

habe jetzt mal eine klitzekleine Testdatei bestehend aus 5 Zeilen manuell exportiert

<ASCII-MAC>
<vsn:4><fset:InDesign-Roman><ctable:=<Black:COLOR:CMYK:Process:0,0,0,1>>
<dps:NormalParagraphStyle=<Nextstyle:NormalParagraphStyle>>
<dps:Literatur-h=<BasedOn:NormalParagraphStyle><Nextstyle:Literatur-h><clig:0><cf:Times New Roman PS>>
<dps:Stumpf=<BasedOn:Literatur-h><Nextstyle:Stumpf>>
<pstyle:Stumpf>Sumpf
<pstyle:Literatur-h>Dies is ein text.
<pstyle:Literatur-h>Dies ist <ct:Italic>ein<ct:> anderer Text.
<pstyle:Literatur-h>Dies ist doch was ganz anderes.
<pstyle:Stumpf>Sumpf

Per script Exportiert wird:

<ASCII-MAC>
<vsn:4><fset:InDesign-Roman><ctable:=<Black:COLOR:CMYK:Process:0,0,0,1>>
<dps:NormalParagraphStyle=<Nextstyle:NormalParagraphStyle>>
<dps:Literatur-h=<BasedOn:NormalParagraphStyle><Nextstyle:Literatur-h><clig:0><cf:Times New Roman PS>>
<dps:Stumpf=<BasedOn:Literatur-h><Nextstyle:Stumpf>>
<pstyle:Literatur-h>Dies ist doch was ganz anderes.

Ok ist, dass er die anderen Formate nicht mitnimmt, er lässt aber die ersten beiden Absätz aus. Komisch ne?

gruß
jürgen

P.S.: Weißt Du ob Hans in Urlaub ist?


als Antwort auf: [#421146]

Indesign_taggedtextexport_Absatz

TMA
Beiträge gesamt: 399

14. Sep 2006, 07:12
Beitrag # 4 von 10
Beitrag ID: #421149
Bewertung:
(2505 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hi jürgen,
ich vermute das der fehler irgendwo hier liegt.
Code
tell (every paragraph whose name of applied paragraph style is "Literatur-h") 

hatte mit xpress mal so ähnliche probleme wenn man versucht mit einer zeile mehrere paragraphen anzusprechen.
versuchs doch mal mit durchrepeaten der paragraphen.

keine ahnung ob hans urlaub hat. kann sein, oder er hat viel zu tun. sonst hätte er bestimmt auf mein xpress schriften problem geantwortet. :-)

gruß
TMA


als Antwort auf: [#421146]

Indesign_taggedtextexport_Absatz

Hans Haesler
  
Beiträge gesamt: 5826

17. Sep 2006, 09:05
Beitrag # 5 von 10
Beitrag ID: #421150
Bewertung:
(2505 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jürgen, hallo TMA,

ja, ich war im Urlaub. :-)

Soeben habe ich versucht, die Voraussetzungen für das Problem nachzustellen.
Das Ergebnis ist aber etwas anders, denn es wird nur der letzte Absatz
exportiert, welchem "Literatur-h" zugewiesen ist.

Ich nehme an, dass InDesign intern wohl alle betreffenden Absätze "exportiert".
Aber weil dies nicht auf einen Schlag geschieht, sondern der Reihe nach, steht
im Ergebnis nur das letzte Vorkommen.

Eine mögliche Lösung wäre, die gesamte Story zu exportieren. Und dann in der
Datei die Absätze zu entfernen, welche nicht mit dem gewünschten Format beginnen.

Etwas einfacher ist das Exportieren in einzelne Dateien:
---
tell application "Adobe InDesign CS2"
  tell document 1
      tell story 5
        repeat with i from 1 to count of paragraphs
            tell paragraph i
              if name of applied paragraph style is "Literatur-h" then
                  set aFile to ((path to desktop folder as string) & "test_" & i & ".txt")
                  export format tagged text to aFile
              end if
            end tell
        end repeat
      end tell
  end tell
end tell
---
Hier wird zum Numerieren der Dateien der automatische Zähler i verwendet.
Man könnte auch einen eigenen Zähler initialisieren ( set ctr to 1 ) und diesen
anstelle von i einsetzen: ... & "test_" & ctr & ".txt") und bei jedem Vorkommen
inkrementieren: set ctr to ctr + 1

Gruss, Hans


als Antwort auf: [#421146]

Indesign_taggedtextexport_Absatz

Anonym
Beiträge gesamt: 22827

18. Sep 2006, 08:18
Beitrag # 6 von 10
Beitrag ID: #421151
Bewertung:
(2505 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

danke für Deine Unterstützung, bin nur gerade schon wieder am "Klotzen", schade dass es seitens Indesign nur über Umwege möglich ist gezielt bestimmte Absätze als tagged text zu extrahieren.
Hatte einen anderen tryout mit einer selection, wobei stets die ganze story, statt der selection exportiert wurde.
Das Problem ist weiterhin aktuell, da ich eine geschickte Methode benötige z.B. um nachträglich ca. 200 Indesign-Dateien automatisch zu indizieren.
Leider scheint es ebenso problematisch zu sein ein Buch um ein oder mehrere Bücher zu erweitern ohne die ganzen Dateien manuell hinzuzufügen.

Nochmal danke, bis denn


Gruß Jürgen


als Antwort auf: [#421146]

Indesign_taggedtextexport_Absatz

Hans Haesler
  
Beiträge gesamt: 5826

18. Sep 2006, 10:18
Beitrag # 7 von 10
Beitrag ID: #421152
Bewertung:
(2505 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jürgen,

wenn ich in einem Text ein Wort auswähle und folgendes Script abspiele ...
---
set aFile to ((path to desktop folder as Unicode text) & "test.txt")
tell document 1 of application "Adobe InDesign CS2"
  tell selection
      export format tagged text to aFile
  end tell
end tell
---
... dann enthält die Datei nebst den unsichtbaren Codes nur das ausgewählte
Wort (und nicht die ganze Story).

Eine Variante, um nur den Text zu exportieren:
---
set aFile to ((path to desktop folder as Unicode text) & "test.txt")
tell document 1 of application "Adobe InDesign CS2"
  tell selection
      export format text type to aFile
  end tell
end tell
---
Jetzt enthält die Datei nur das ausgewählte Wort. Gefolgt von zwei ASCII-Null-Zeichen.

Man könnte auch den Inhalt der Datei einer Variablen zuweisen und einen
Handler aufrufen, welcher die Textkette in die Datei schreibt.
Mit set eof of file aFile to 0 wird der bisherige Inhalt der Datei gelöscht.
Code
set aFile to ((path to desktop folder as Unicode text) & "test.txt") 
tell document 1 of application "Adobe InDesign CS2"
  set aString to (contents of selection) as string
  my writeString(aFile, aString)
end tell

on writeString(aFile, aString)
  try
    open for access file aFile with write permission
    set eof of file aFile to 0
    write aString to file aFile
    close access file aFile
  on error
    try
      close access file aFile
    end try
  end try
end writeString

Und mit dem Zusatz starting at eof wird der aktuelle "Export"
an den Inhalt gehängt:
Code
set aFile to ((path to desktop folder as Unicode text) & "test.txt") 
tell document 1 of application "Adobe InDesign CS2"
  set aString to ((contents of selection) as string) & return
  my writeString(aFile, aString)
end tell

on writeString(aFile, aString)
  try
    open for access file aFile with write permission
    write aString to file aFile starting at eof
    close access file aFile
  on error
    try
      close access file aFile
    end try
  end try
end writeString


Gruss, Hans


als Antwort auf: [#421146]

Indesign_taggedtextexport_Absatz

Anonym
Beiträge gesamt: 22827

18. Sep 2006, 20:11
Beitrag # 8 von 10
Beitrag ID: #421153
Bewertung:
(2505 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

du gibst mir viel Futter zum Testen, vieelen Dank.
Habe gerade einiges in Arbeit und kann leider erst frühesten nächste Woche zu diesem Problem zurückkehren.
Seit heute morgen habe ich eine dringlichere Aufgabe auf dem Tisch - Register über ca. 200 Indd.-Dateien.
Weißt Du ob es möglich ist ein Indesign-Buch per AppleScript zusammenzustellen. Habe (wieder mal) im InDesign CS2 Scripting Guide nix gefunden...

Gruß
Jürgen


als Antwort auf: [#421146]

Indesign_taggedtextexport_Absatz

Hans Haesler
  
Beiträge gesamt: 5826

18. Sep 2006, 20:53
Beitrag # 9 von 10
Beitrag ID: #421154
Bewertung:
(2505 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jürgen,

im InDesign-Script-Verzeichnis gibt es zwar eine "Book Suite". Diese dient aber anscheinend
nur zum Behandeln von bestehenden Büchern.

Aber das manuelle Zusammenfassen von Dokumenten zu einem Buch geht doch recht fix:
Über das Menü ein neues Buch erstellen, dann das Icon zum Hinzufügen von Dokumenten
betätigen und im Dialogfenster die Dokumente auswählen: Klick auf das erste, Umschalt-
taste drücken, Klick auf das letzte, "Öffnen" klicken und InDesign besorgt den Rest.

Bestehende Bücher können nicht in einem neuen Buch zusammengefasst werden. Da würde
ich sämtliche Dokumente "befreien" (in der Palette alle auswählen und auf das Minus-Icon
klicken). Und dann ein neues Buch erstellen und die Dokumente einladen.

Gruss, Hans


als Antwort auf: [#421146]

Indesign_taggedtextexport_Absatz

Anonym
Beiträge gesamt: 22827

19. Sep 2006, 13:42
Beitrag # 10 von 10
Beitrag ID: #421155
Bewertung:
(2505 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

danke für deinen Tip. Ja ginge schon schnell, wenn meine Ordnerstruktur von vornherein eine Mehrfachauswahl der Indesigndokumente möglich machen würde, ;-) So wie jetzt sind es halt ein paar hundert Dateien jeweils in separaten Ordnern. Dann werde ich eben eine umorganisierte Kopie erstellen, dann klappts auch mit den Büchern.

Merci und tschüss

Jürgen


als Antwort auf: [#421146]
X