[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Problem mit Script: Leere Bildrahmen im entfernen

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

Problem mit Script: Leere Bildrahmen im entfernen

Schgr
Beiträge gesamt: 4

5. Jul 2020, 09:18
Beitrag # 1 von 9
Bewertung:
(11095 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo!

Ich möchte leere Bildrahmen im Indesign entfernen und habe auch ein passendes Script gefunden. Leider löscht das Script auch Rahmen, in den ein Rahmen mit Inhalt plaziert ist (z.B. wenn eine Grafik o.ä. in einem Container-Rahmen verschachtelt ist).

Code
var allFrames = app.activeDocument.allPageItems;  
for (var n=allFrames.length-1; n>=0; n--) {
if (allFrames[n].constructor.name == "Rectangle" ) {
if (allFrames[n].graphics.length < 1) {
if (allFrames[n].fillColor.name == "None" && allFrames[n].strokeColor.name == "None") {
allFrames[n].remove();
}
}
}
}


Habe versucht das Problem zu lösen, bin leider keine Korypäe
in Javascript.

Das Script sollte in InDesign CC und CS6 funktionieren.

Für eine Lösung wäre ich sehr dankbar.

Vielen Dank im Voraus.
Grit
X

Problem mit Script: Leere Bildrahmen im entfernen

Uwe Laubender
Beiträge gesamt: 5314

6. Jul 2020, 13:19
Beitrag # 2 von 9
Beitrag ID: #576000
Bewertung:
(10978 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Grit,
Du könntest nach dem allGraphics Array fragen, das alle, auch verschachtelte, Grafiken und Bilder seines Elter enthält.

Anstatt:
Code
if (allFrames[n].graphics.length < 1) { 


beispielsweise:
Code
if( allFrames[n].allGraphics.length == 0 ) { 



als Antwort auf: [#575994]

Problem mit Script: Leere Bildrahmen im entfernen

Schgr
Beiträge gesamt: 4

6. Jul 2020, 19:23
Beitrag # 3 von 9
Beitrag ID: #576005
Bewertung:
(10949 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Uwe,
danke für Deine Antwort.

Habe es gerade getestet, klappt leider nicht.
Der Container-Rahmen mit dem Inhalt wird weiterhin gelöscht.

Vielen Dank
Grit


als Antwort auf: [#576000]

Problem mit Script: Leere Bildrahmen im entfernen

Uwe Laubender
Beiträge gesamt: 5314

6. Jul 2020, 20:18
Beitrag # 4 von 9
Beitrag ID: #576006
Bewertung:
(10941 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Grit,
dann lass Dir mal per $.writeln() den Wert für length von allGraphics für jedes untersuchtes frame in der Schleife ausgeben. Vielleicht kommst Du dann dahinter, weshalb der Test entweder nichts taugt oder woran es sonst noch liegen könnte.

Davon abgesehen:
Poste mal eine Beispieldatei, die das Problem zeigt.
Dropbox oder ein ähnlicher Service.
Einfach den Link hier reinstellen.


als Antwort auf: [#576005]

Problem mit Script: Leere Bildrahmen im entfernen

Schgr
Beiträge gesamt: 4

6. Jul 2020, 23:23
Beitrag # 5 von 9
Beitrag ID: #576009
Bewertung:
(10910 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Uwe,

hier der gewünschte Link:
https://www.amazon.de/clouddrive/share/J1vom3J4x6KLf5mjDLBJ0FRbyktbPVfhE8wMxJGaJjX
Ich hoffe es ist verständlich und der Link funktioniert, wenn nicht dann melde Dich noch einmal.
LG
Grit


als Antwort auf: [#576006]

Problem mit Script: Leere Bildrahmen im entfernen

Uwe Laubender
Beiträge gesamt: 5314

7. Jul 2020, 10:44
Beitrag # 6 von 9
Beitrag ID: #576018
Bewertung:
(10807 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Grit,
kann es sein, dass der Link unvollständig ist?
Ich bekomme nur ein Google-Suchergebnis.

Probier's doch bitte mal mit Dropbox und ersetze die letzte 0 im Link mit einer 1, sodass der Download sofort starten kann. Danke!


als Antwort auf: [#576009]

Problem mit Script: Leere Bildrahmen im entfernen

MarioF
Beiträge gesamt: 389

7. Jul 2020, 11:03
Beitrag # 7 von 9
Beitrag ID: #576020
Bewertung:
(10791 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: kann es sein, dass der Link unvollständig ist?

Versuche mal diesen Link: https://www.amazon.de/...tries%2A=0&mgh=1
Ich vermute mal, dass die betreffenden Rahmen Pfade enthalten bzw. weitere, leere Grafikrahmen.


als Antwort auf: [#576018]

Problem mit Script: Leere Bildrahmen im entfernen

Uwe Laubender
Beiträge gesamt: 5314

7. Jul 2020, 12:27
Beitrag # 8 von 9
Beitrag ID: #576022
Bewertung:
(10777 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Grit,
der Rahmen, der fälschlicherweise entfernt wird, enthält keine Grafik im Sinne von allGraphics oder der Eigenschaft graphics.

Der enthält einfach ein Pfadobjekt aus InDesign, einen Rahmen gewissermaßen.
Und das zählt nicht als "Grafik" oder "Bild".

So wie ich die Sache sehe, möchtest Du also keine Rahmen entfernen, wenn diese irgendetwas enthalten. Sei es eine "Grafik" oder eben ein anderer Rahmen.

Also frage allgemeiner nach:

Code
if( allFrames[n].pageItems.length == 0 ) { 



als Antwort auf: [#575994]

Problem mit Script: Leere Bildrahmen im entfernen

Schgr
Beiträge gesamt: 4

7. Jul 2020, 20:02
Beitrag # 9 von 9
Beitrag ID: #576044
Bewertung:
(10700 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Uwe,

entschuldige das der Link nicht richtig funktionierte, ich hatte ihn eigentlich getestet.

Aber nun zum Ergebnis:
Das Script läuft jetzt perfekt.

Vielen, vielen Dank.
Grit


als Antwort auf: [#576022]
X