[GastForen Programmierung/Entwicklung AppleScript Leere Textblöcke in InDesign löschen

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

Leere Textblöcke in InDesign löschen

Anonym
Beiträge gesamt: 22827

13. Feb 2006, 20:21
Beitrag # 1 von 8
Bewertung:
(1336 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,
hast du vielleicht noch ein Script in der Tasche, wie man leere Textboxen in Indesign CS2 löscht?

Beim Konvertieren ist mir aufgefallen, dass auf manchen Seiten leere Textboxen von der Musterseite kopiert werden.
Damit ich nicht eine übersehe wollte ich dass gerne per Script lösen.
X

Leere Textblöcke in InDesign löschen

Hans Haesler
  
Beiträge gesamt: 5826

13. Feb 2006, 21:32
Beitrag # 2 von 8
Beitrag ID: #420778
Bewertung:
(1335 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo schnurgly,

sowas habe ich eigentlich nicht einfach so in der Tasche ... Die meisten derartigen
Scripts werden "nach Mass" angefertigt.

Wie "fühlen" sich den diese Textrahmen an? Wenn Du sie manuell löschest, musst Du
zuerst den Bezug zur Musterseite aufheben? (Mit Befehl-Umschalt-Klick.) Oder kannst
Du sie ohne weiteres – durch einfaches Anklicken – auswählen?

Würdest Du mir bitte ein Musterdokument "zum üben" zustellen?

Gruss, Hans


als Antwort auf: [#420777]

Leere Textblöcke in InDesign löschen

Hans Haesler
  
Beiträge gesamt: 5826

13. Feb 2006, 22:23
Beitrag # 3 von 8
Beitrag ID: #420779
Bewertung:
(1335 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo schnurgly,

okay, versuch's mal mit diesem Script:
---
tell application "Adobe InDesign CS2"
   activate
   tell document 1
      repeat with i from (count of text frames) to 1 by -1
         if (count of characters of parent story of text frame i) is 0 then
            try
               delete text frame i
            end try
         end if
      end repeat
   end tell
   set active spread of active window to spread 1 of document 1
   display dialog "Fertig." buttons "OK" default button 1 with icon 1 giving up after 1
end tell

---
Die drittletzte Zeile (set active spread ...) dient zum Auffrischen der Bildschirmanzeige.
Sonst würde es den Anschein machen, als ob sich nichts getan hätte.

Gruss, Hans


als Antwort auf: [#420777]

Leere Textblöcke in InDesign löschen

Anonym
Beiträge gesamt: 22827

14. Feb 2006, 01:00
Beitrag # 4 von 8
Beitrag ID: #420780
Bewertung:
(1335 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Code
tell application "Adobe InDesign CS2" 
  set bla to every text frame of document 1 whose (length of parent story = 0)
  delete bla
end tell



als Antwort auf: [#420777]

Leere Textblöcke in InDesign löschen

Hans Haesler
  
Beiträge gesamt: 5826

14. Feb 2006, 09:37
Beitrag # 5 von 8
Beitrag ID: #420781
Bewertung:
(1335 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Karsten,

danke für Deinen Einwurf. Aber sollte die Variable nicht myBlah heissen? ;-)

Spass beiseite: Deine Lösung ist gut doppelt so schnell als meine Wiederholungsschleife.
Eigentlich erstaunlich, weil ja zuerst eine Liste zusammengestellt werden muss.

Gruss, Hans


als Antwort auf: [#420777]

Leere Textblöcke in InDesign löschen

Anonym
Beiträge gesamt: 22827

16. Feb 2006, 02:57
Beitrag # 6 von 8
Beitrag ID: #420782
Bewertung:
(1335 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Danke für die beiden Scripts. Die funzen prima.

>sowas habe ich eigentlich nicht einfach so in der Tasche ... Die meisten >derartigen Scripts werden "nach Mass" angefertigt.

Das glaube ich Dir auch. Ich bin immer wieder überrascht, wie schnell du auf Beiträge hier im Forum reagierst.

Nachdem Scripthändling in Indesign Spaß macht, bekommt man Lust auf mehr.

Wie heißen denn die "Zauberworte" für Absatz und Zeichenformat. Kann ich einfach diese Wörter gegen "swatch" beim Farben-Löschen-Script austauschen?

gruss schnurgly


als Antwort auf: [#420777]

Leere Textblöcke in InDesign löschen

Anonym
Beiträge gesamt: 22827

16. Feb 2006, 05:47
Beitrag # 7 von 8
Beitrag ID: #420783
Bewertung:
(1335 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hi karsten
vielen dank für bla (lol)
funzt prima.

lg
daniel


als Antwort auf: [#420777]

Leere Textblöcke in InDesign löschen

Hans Haesler
  
Beiträge gesamt: 5826

16. Feb 2006, 08:54
Beitrag # 8 von 8
Beitrag ID: #420784
Bewertung:
(1335 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo schnurgly,

bitteschön. Wie schon erwähnt, Karsten's Script funzt besser. Aber Du solltest es mit einem 'try'-Wickel
ausstatten (damit es keine Fehlermeldung gibt, wenn mal keine leere Rahmen vorhanden sind) und auch das
Auffrischen des Bildschirms ist kein Luxus (sonst sieht man die entfernten Rahmen immer noch). Die Meldung
am Ende würde ich auch beibehalten (weil es bei einer grossen Anzahl von Rahmen doch etwas dauert).
---
tell application "Adobe InDesign CS2"
   activate
   try
      set myBlah to every text frame of document 1 whose (length of parent story = 0)
      delete myBlah
      set active spread of active window to spread 1 of document 1
   end try
   display dialog "Fertig." buttons "OK" default button 1 with icon 1 giving up after 1
end tell

---

Die Zauberworte für Absatz- und Zeichenformat heissen paragraph style und character style
Aber weil diesen das Attribut unused nicht zugeordnet ist, kann man nicht gezielt die unbenutzten löschen
(wie schon hier http://www.page-online.de/page/forum/viewthread/2905 erklärt). Das folgende Script löscht
alle Absatzformate, ob in Gebrauch oder nicht.
---
tell application "Adobe InDesign CS2"
   activate
   try
      delete paragraph styles of document 1
   end try
end tell

---
Also nicht ganz alle. "Kein Stil" und "Standard" können nicht gelöscht werden. Ersterer ist mit CS2 unsichtbar.

Gruss, Hans


als Antwort auf: [#420777]
X