[GastForen Programme Print/Bildbearbeitung Adobe InDesign Seiten von Textrahem aus Indesign per script auslesen

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

Seiten von Textrahem aus Indesign per script auslesen

boris12345
Beiträge gesamt: 2

11. Okt 2006, 18:26
Beitrag # 1 von 5
Bewertung:
(2531 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

ich nutze indesign CS auf PC.

Problem: Ich habe auf 290 Seiten Text und Bildrahmen in Indesign verküpft. Nun möchte ich in eine Tabelle verschiedene Informationen über die Links auslesen, insbesondere die Seitenzahl. Bei Bilderlinks klappt das wunderbar, nur leider nicht bei Textramen, die mir viel wichtiger sind.

Mein Code (VBA) sieht folgendermassen aus:

myInDesign.Activate
Set myDocument = myInDesign.ActiveDocument

For i = 1 To myDocument.Links.Count

id = myDocument.Links(i).id
type1 = myDocument.Links(i).LinkType
name1 = myDocument.Links(i).name

If type1 = "InDesign Tagged Text" Then
page = myDocument.Links(i).Parent.Parent.Parent.name ' falsch !!
Else
page = myDocument.Links(i).Parent.Parent.Parent.name 'läuft
End If

Next i


Ich habe schon einiges probiert. Leider scheinen dieTextrahmen in der Satzdatei eine andere Nummerierung als die Links zu haben.
Hat schon mal jemand so ein Problem gehabt ?

Danke !

Gruß
Boris
X

Seiten von Textrahem aus Indesign per script auslesen

Martin Fischer
  
Beiträge gesamt: 12774

11. Okt 2006, 19:11
Beitrag # 2 von 5
Beitrag ID: #255920
Bewertung:
(2521 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Boris,

auf Deine konkrete Frage mit dem VBA-Code habe ich keine Antwort.

Vielleicht hift Dir aber das LinkExport-Skript von Yves weiter: http://www.hilfdirselbst.ch/..._P235983.html#235983

Insbesondere über die Funktion getPage() sollte auch bei Inline-Bildern in Textrahmen die jeweilige Seitenzahl festgestellt und exportiert werden.


als Antwort auf: [#255915]
(Dieser Beitrag wurde von Martin Fischer am 11. Okt 2006, 19:14 geändert)

Seiten von Textrahem aus Indesign per script auslesen

boris12345
Beiträge gesamt: 2

11. Okt 2006, 20:16
Beitrag # 3 von 5
Beitrag ID: #255932
Bewertung:
(2513 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi Martin,

danke erst einmal. Es handelt sich aber nicht um Bilder in Textrahmen, sonder um einfache Textrahmen, die nur (Tagget)-Texte aus einer Datenbank enthalten.

Gruß
Boris


als Antwort auf: [#255920]

Seiten von Textrahem aus Indesign per script auslesen

Martin Fischer
  
Beiträge gesamt: 12774

11. Okt 2006, 21:03
Beitrag # 4 von 5
Beitrag ID: #255940
Bewertung:
(2503 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Boris,

oh, da habe ich nicht genau gelesen, bzw. während dem Lesen für mich stillschweigend korrigiert.

> Nun möchte ich in eine Tabelle verschiedene Informationen über die Links auslesen,
> insbesondere die Seitenzahl. Bei Bilderlinks klappt das wunderbar, nur leider nicht
> bei Textramen, die mir viel wichtiger sind.

Es gibt keine Links zu Textrahmen, genausowenig wie es Links zu Bildrahmen gibt.
Es gibt Links zu Bildern, die in Bildrahmen stecken und ggf. zu Textdateien, die in Textrahmen stecken. Möglicherweise ersteckt sich die platzierte Textdatei als Textfluß/Textabschnitt über mehrere Textrahmen. Dann müßte präzisiert werden, wessen Seite der mehreren möglichen Textrahmen ausgegeben werden soll: die des ersten Textrahmens des Textflusses, des letzten oder eines TR zwischendrin.

parent des Links zur Textdatei ist der Textfluß (= story).
Und von dort solltest Du z.B. über den ersten Textrahmen (in JS textFrames[0]) zur Seite, auf welcher dieser sich befindet, kommen.

Beispiel:
Wenn sich der erste Textrahmen, in welcher sich die erste (Text-)Verknüpfung befindet, direkt auf einer Dokumentseite oder der Montagefläche befindet (also nicht als InlineFrame in einem anderen Textrahmen steckt), dann lautet der Weg zur Seitenzahl:
Code
myPage = app.documents[0].links[0].parent.textFrames[0].parent 


Bei Verschachtelungen müßtest Du auf eine rekursive Funktion wie z.B. getPage() zurückgreifen.


als Antwort auf: [#255932]
(Dieser Beitrag wurde von Martin Fischer am 11. Okt 2006, 21:05 geändert)

Seiten von Textrahem aus Indesign per script auslesen

Martin Fischer
  
Beiträge gesamt: 12774

12. Okt 2006, 04:51
Beitrag # 5 von 5
Beitrag ID: #255967
Bewertung:
(2474 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Übrigens: Hast Du herausgefunden, was Deine Zeile "page = myDocument.Links(i).Parent.Parent.Parent.name" liefert?

Probier mal (vorausgesetzt der erste Link geht auf einen erknüpften Text)
Code
alert(app.documents[0].links[0].parent.parent.parent.name) 



als Antwort auf: [#255940]
X