[GastForen Programmierung/Entwicklung AppleScript InDesign CS 6 - selektierten Textrahmen in Tagged Text exportieren

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

InDesign CS 6 - selektierten Textrahmen in Tagged Text exportieren

Andreas78m
Beiträge gesamt: 33

8. Okt 2013, 10:05
Beitrag # 1 von 6
Bewertung:
(4061 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo erst mal,

suche aktuell nach einer guten Lösung, um aus InDesign CS 6 einen Textrahmen zu exportieren und formatiert wieder neu zu importieren.

Vor dem Import tauschen sich natürlich noch spezielle Informationen und bisher funktionierte der Workflow über XPress mit tagged Text recht gut. Scheinbar kann man nur leider im InDesign nicht direkt eine Box auswählen, im Programm direkt wandeln und über die Zwischenablage hin und her tauschen.

Aktuell setzen wir auch schon zur generierung der Seiten ein Textdokument als "Cache" ein. Hier wir einen Tagged Text aus Filemaker (die Quelle der Daten) in ein Text Dokument geschrieben und dies in einem bestimmten Rahmen per ID in InDesign platziert.

Jetzt sollen diese Produkte aktualisiert werden und sich nur bestimmte Inhalte tauschen (z.B. ein Bestellblock) und die Formatierungen (unterschiedliche Absatz- und Zeichenformate) natürlich erhalten bleiben.

In folgenden Beitrag wird das Thema generell schon mal aufgegriffen (Export zu Tagged Text):
http://www.hilfdirselbst.ch/...;;page=unread#unread

Gibt es eine Alternative zum "Ping, Pong Spiel" zwischen InDesign <-> Filemaker inkl. einer zusätzlichen "Cache Text Datei"?

Beste Grüße,
Andreas
X

InDesign CS 6 - selektierten Textrahmen in Tagged Text exportieren

Hans Haesler
  
Beiträge gesamt: 5826

8. Okt 2013, 10:58
Beitrag # 2 von 6
Beitrag ID: #518218
Bewertung:
(4042 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Andreas,

auch mit QuarkXPress ist ein direktes Umwandeln nicht möglich. Der Export muss in eine temporäre Datei erfolgen. Beim Importieren der XPress-Tags - und dass diese sichtbar werden - genügt eine Änderung im Code.

Mit InDesign ist das nicht möglich. Aber ein Griff in die Trickkiste könnte die Lösung sein.

Allerdings scheint mir eine direktere Lösung einfacher zu sein: Export in die Datei, welche in FileMaker importiert wird. Dort die Änderungen vornehmen, in eine Datei schreiben und wieder in der Original-Rahmen importieren.

Ich bin jetzt gerade unterwegs. Einen ersten Lösungsversuch kann ich erst im Laufe des Abends machen.

Gruss, Hans


als Antwort auf: [#518216]

InDesign CS 6 - selektierten Textrahmen in Tagged Text exportieren

Andreas78m
Beiträge gesamt: 33

8. Okt 2013, 11:27
Beitrag # 3 von 6
Beitrag ID: #518222
Bewertung:
(4023 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

wir haben schon fast mit diesem Weg gerechnet (oder ihn befürchtet). ;-)

Den Weg vom Filemaker -> InDesign steht schon und wird aktuell im Filemaker per AppleScript gesteuert.

Wir machen uns gerade Gedanken, wie wir das mit den Timings hin bekommen und welches der Scripte das führende wird.

Danke auf jeden Fall schon mal für das (wie immer) sehr flotte Feedback und wir sind auf die Trickkiste gespannt.

Beste Grüße,
Andreas


als Antwort auf: [#518218]

InDesign CS 6 - selektierten Textrahmen in Tagged Text exportieren

Hans Haesler
  
Beiträge gesamt: 5826

9. Okt 2013, 08:40
Beitrag # 4 von 6
Beitrag ID: #518243
Bewertung:
(3948 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Andreas,

hier der erste Versuch. Der Code ist unkommentiert, weil eigentlich selbsterklärend. :-)

Der Text des ausgewählten Rahmens wird im Format "tagged text" in die temporäre Textdatei auf dem Schreibtisch exportiert.

Und dann kommt der erwähnte Griff in die Trickkiste: Der Inhalt der Textdatei wird in eine Variable eingelesen:

Code
set tmpText to read file tmpFilePath from 2 to eof 

Das 'from 2 to eof' bedeutet: Ab dem zweiten Zeichen bis zum 'end of file'. Gleich darauf wird diese Textkette wieder in die Textdatei geschrieben.

Wenn nun dieser Text importiert wird, erkennt InDesign nicht mehr, dass er InDesign Tags enthält. Ganz einfach, weil der öffnende Haken fehlt.
Dieser wird nachträglich in den Textrahmen eingefügt:

Code
set contents of insertion point 1 to "<" 

Und jetzt das Script:

Code
set tmpFilePath to (path to desktop as Unicode text) & "TmpFile.txt" 

tell application "Adobe InDesign CS6"
activate
set character set of tagged text export preferences to ansi
set curSel to selection
set nSel to (count of curSel)
if nSel is 1 then
try
if content type of selection is text type then
tell parent story of selection
export format tagged text to tmpFilePath
end tell
set curFlag to my modText(tmpFilePath)
if curFlag is 1 then
place alias tmpFilePath on selection
tell parent story of selection
set contents of insertion point 1 to "<"
end tell
else
display dialog "Hat nicht geklappt." buttons "OK" default button 1 with icon 2
end if
else
display dialog "Einen Textrahmen auswählen." buttons "OK" default button 1 with icon 0
error number -128
end if
end try
else
display dialog "Einen Textrahmen auswählen." buttons "OK" default button 1 with icon 0
error number -128
end if
end tell

on modText(tmpFilePath)
set tmpText to read file tmpFilePath from 2 to eof
try
set fRef to open for access file tmpFilePath with write permission
set eof fRef to 0
write tmpText to fRef
close access fRef
return 1
on error
try
close access fRef
end try
return 0
end try
end modText

Doch wie schon erwähnt, könnte doch die exportierte Datei ohne den Umweg zurück in InDesign geöffnet und verändert werden.

Noch etwas: Mit dem 'character set ASCII' werden bei mir die Umlaute zerlegt. "ä" wird zu "<0x00E4>". Deshalb habe ich das 'character set ansi' gewählt.

Gruss, Hans


als Antwort auf: [#518222]

InDesign CS 6 - selektierten Textrahmen in Tagged Text exportieren

Andreas78m
Beiträge gesamt: 33

11. Okt 2013, 15:18
Beitrag # 5 von 6
Beitrag ID: #518346
Bewertung:
(3898 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

funktioniert soweit alles einwandfrei und ich denke durch das direkte exportieren und danach wieder importieren dürfte es auch keine Probleme im Timing geben (zumindestens solange Filemaker hinterher kommt).

Ist es möglich direkt als Unicode zu exportieren:
Code
set character set of tagged text export preferences to unicode 


Und danach das Text File Dokument direkt als Unicode (UTF-16, no BOM) zu encodieren? Dann schaut im Text Wrangler der Code sauber aus und wenn als UFT-16 Little-Endian gespeichert wird... lässt es sich auch direkt wieder im InDesign platzieren.

Mit ANSI versteht er leider solche Dinge wie die Sonderzeichen (z.B. kein Zeilenumbruch) von InDesign nicht mehr.

Danke schon mal im voraus und schönes Wochenende!

Beste Grüße,
Andreas


als Antwort auf: [#518243]

InDesign CS 6 - selektierten Textrahmen in Tagged Text exportieren

Hans Haesler
  
Beiträge gesamt: 5826

11. Okt 2013, 16:46
Beitrag # 6 von 6
Beitrag ID: #518347
Bewertung:
(3882 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Andreas,

mit dem character set unicode hatte ich auch einen Versuch gemacht. Aber weil die Umlaute zerlegt werden, fand ich ansi praktischer.

Ich bin gerade unterwegs und kann nichts Brauchbares beitragen. Aber wie lautet schon der Spruch? Ach ja: Probieren geht über Studieren! :-)

Gruss, Hans


als Antwort auf: [#518346]
X