[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Textrahmen nur auf einer bestimmten Ebene ändern

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

Textrahmen nur auf einer bestimmten Ebene ändern

MarkusD
Beiträge gesamt: 23

6. Okt 2014, 19:23
Beitrag # 1 von 3
Bewertung:
(1116 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo!

ich habe in einem CS5 Dokument (PC) mehrere Ebenen mit Textrahmen. Jetzt müssen auf einer Ebene Rahmen mit einer bestimmten Höhe vergrößert werden. Auf allen anderen Ebenen darf aber nichts geändert werden.
Ich habe mir ein Script von waldviertler angepasst. Dieses sucht allerdings auf allen Ebenen und wenn man die anderen Ebenen sperrt, kommt nur die Fehlernummer 11274: Objekt ist gesperrt.
Leider gelingt es mir nicht eine Definition der zu durchsuchenden Ebene einzubauen oder in den gefundenen Ergebnissen ein Abgleich "Gesperrt = Überspringen und weiter".
Hier das Script:
Code
#target InDesign  

var doc = app.activeDocument;

doc.viewPreferences.rulerOrigin = RulerOrigin.PAGE_ORIGIN;
doc.viewPreferences.horizontalMeasurementUnits = MeasurementUnits.MILLIMETERS;
doc.viewPreferences.verticalMeasurementUnits = MeasurementUnits.MILLIMETERS;
function resizePageFrames(page)
{
var tFrames = doc.textFrames;
for (var n = tFrames.length-1; n >= 0 ; n--)
{
var gb = tFrames[n].geometricBounds;
var w = gb[3]-gb[1];
var h = gb[2]-gb[0];
//Ohne Rundungsprobleme genauen Wert eingeben
// if (h == 6 && w == 26)
//Bei Rundungsproblemen Bereich angeben
// if (h > 5.9 && h < 6.1 && w > 25 && w < 27)
//Nur nach Höhe suchen
if (h > 5.9 && h < 6.1)
{
tFrames[n].geometricBounds = [gb[0]+3.5, gb[1], gb[2], gb[3]];
}
}
}
for(var i=0;i<doc.pages.length;i++)
{
resizePageFrames(doc.pages[i]);
}


Hat jemand eine Idee?
Markus Dollenbacher
X

Textrahmen nur auf einer bestimmten Ebene ändern

Kai Rübsamen
Beiträge gesamt: 4659

6. Okt 2014, 22:30
Beitrag # 2 von 3
Beitrag ID: #532719
Bewertung:
(1068 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo!

Da gibt es versch. Möglichkeiten. Du kannst alle Textrahmen durchlaufen und den Namen der Ebene prüfen. Wenn du nur Textrahmen auf nicht gesperrten Ebenen ändern willst, hat ein Textrahmen eine Eigenschaft "itemLayer", die wiederum eine Eigenschaft "locked", die true oder false sein kann.

Code
#target InDesign   

var doc = app.activeDocument;

doc.viewPreferences.rulerOrigin = RulerOrigin.PAGE_ORIGIN;
doc.viewPreferences.horizontalMeasurementUnits = MeasurementUnits.MILLIMETERS;
doc.viewPreferences.verticalMeasurementUnits = MeasurementUnits.MILLIMETERS;

function resizePageFrames(page) {
var tFrames = doc.textFrames;
for (var n = tFrames.length-1; n >= 0 ; n--) {
var curFrame = tFrames[n];
if (curFrame.itemLayer.locked == false) {
var gb = curFrame.geometricBounds;
var w = gb[3]-gb[1];
var h = gb[2]-gb[0];
//Nur nach Höhe suchen
if (h > 5.9 && h < 6.1) {
curFrame.geometricBounds = [gb[0]+3.5, gb[1], gb[2], gb[3]];
}
}
}
}

for(var i = 0; i<doc.pages.length; i++) {
resizePageFrames(doc.pages[i]);
}


Gruß Kai Rübsamen


als Antwort auf: [#532716]

Textrahmen nur auf einer bestimmten Ebene ändern

MarkusD
Beiträge gesamt: 23

7. Okt 2014, 11:12
Beitrag # 3 von 3
Beitrag ID: #532726
Bewertung:
(1007 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Kai,

vielen Dank für deine Erklärung und das angepasste Script. Es funktioniert jetzt so wie gewünscht. "itemLayer.locked == false" hatte ich zwar schon zusammenbekommen, aber nicht verstanden wie ich es einbinden kann.

Das spart mir viel Zeit.

Gruß Markus


als Antwort auf: [#532719]

Aktuell

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
21.01.2021 - 22.01.2021

Digicomp Academy AG, Bern oder Basel
Donnerstag, 21. Jan. 2021, 08.30 Uhr - Freitag, 22. Jan. 2021, 17.00 Uhr

Kurs

Dieser Basic-Kurs ist der perfekte Einstieg in die Welt von InDesign, dem vielseitigen Layout-Programm. Sie lernen, wie InDesign aufgebaut ist, wie saubere Dokumente erstellt werden und wie man korrekt mit gelieferten InDesign-Projekten umgeht.

Dauer: 2 Tage
Preis: CHF 1'400.–

Ja

Organisator: Digicomp Academy AG

Kontaktinformation: Kundenberater-Team, E-Mailkundenberatung AT digicomp DOT ch

digicomp.ch/d/INDEM1

Veranstaltungen
21.01.2021

Illustrator - das unbekannte Wesen

Online
Donnerstag, 21. Jan. 2021, 19.00 Uhr

Vortrag

Millionen Funktionen, und immer kommen neue dazu! Monika Gause ist jeden Januar aufs Neue ein gern gesehener Gast bei der IDUG Stuttgart. - Sie bringt alle Neuerungen mit, die 2020 dazukamen und jede Menge Tipps und Tricks. - Zudem wird sie uns informieren, was wir in Illustrator beachten müssen, wenn wir Daten fürs Web erstellen bzw. aufbereiten. - Wichtig zu wissen: "Dos and Don'ts" in Illustrator. Welche Fehler sollte man dringend vermeiden und was muss man unbedingt tun, damit es Spaß macht mit Illustrator zu arbeiten. - Dieses Jahr hast Du zusätzlich die Möglichkeit Monika im Voraus Fragen zu stellen. Fülle dieses Formular mit deinen Fragen; auch Beispieldateien sind anfügbar: https://forms.gle/fJmF8C6MjbDoEhED8

Nein

Organisator: InDesign Usergroup Stuttgart

Kontaktinformation: Christoph Steffens, E-Mailidug AT satzkiste DOT de

https://idugs67.eventbrite.de/

IDUGS #67 Illustrator mit Monika Gause

Neuste Foreneinträge


CC 2020: Problem mit Textumfluss mit verankerten Objekten

Abrisse im Druck

Farbmanagement bei Fotoabzügen

Dokument einrichten per Javascript [AI24.3, WIN10]

Problem mit arabischer Schrift: Wie von rechts nach links setzen?

Affinity Photo od. Designer -Bildecke einrollen

Suchen u. Ersetzen von Strings mit bestimmter horizontaler Skalierung [INDD15.1.1 WIN10]

Netzwerklaufwerke verbinden -> Bei nicht verfügbar Fehlermeldung unterdrücken

Fortlaufende Nummerierung der Druckbogen

Verschiedene Netzwerke Handeln
medienjobs