[GastForen Programme Print/Bildbearbeitung Adobe InDesign Mit Skript Textrahmen erstellen

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

Mit Skript Textrahmen erstellen

deavy
Beiträge gesamt: 25

12. Feb 2007, 15:14
Beitrag # 1 von 11
Bewertung:
(3767 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen,

überall wird ja gelobt, dass man mit Skripts in ID all das erreichen kann, was man auch so manuell machen kann.

Nun meine Frage:
1.a) Ist es möglich mit einem Skript (ich müsste JS) ein Textfeld zu erstellen?
1.b) Ist es dann auch möglich die X und Y Koordinate, Höhe und Breite und auch Absatzformate dem Textfeld zuzuordnen?

Bin dankbar für jede Antwort!

Viele Grüße
Michael
X

Mit Skript Textrahmen erstellen

Martin Fischer
  
Beiträge gesamt: 12494

12. Feb 2007, 15:40
Beitrag # 2 von 11
Beitrag ID: #275834
Bewertung:
(3756 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Michael,

> überall wird ja gelobt, dass man mit Skripts in ID all das erreichen kann,
> was man auch so manuell machen kann.

Das halte ich für eine Untertreibung. ;-)

> 1.a) Ist es möglich mit einem Skript (ich müsste JS) ein Textfeld zu erstellen?

Du meinst einen Textrahmen?
Ja, das kann man.
Zum Beispiel auf einer Seite oder einem Druckbogen.

> 1.b) Ist es dann auch möglich die X und Y Koordinate,
> Höhe und Breite und auch Absatzformate dem Textfeld zuzuordnen?

Du kannst die Koordinate der linken oberen Ecke und der rechten unteren Ecke definieren.
Über die Differenz der entsprechenden Koordinaten kannst Du Höhe und Breite errechnen.
Oder falls nur die Koordinaten der linken oberen Ecke und Höhe und Breite bekannt sind, kannst Du daraus die Koordinaten für die rechte untere Ecke berechnen.

Beispiel:
Code
// Koordinaten und Angaben zu Höhe und Breite 
var linkeObereEcke = [5, 10]; // y1, x1
var meineHoehe = 20;
var meineBreite = 100;

// aktive Seite
var meineSeite = app.layoutWindows[0].activePage;

// Textrahmen auf der aktiven Seite erstellen
var meinTextRahmen = meineSeite.textFrames.add();

// Textrahmen Position, Breite und Höhe zuweisen
meinTextRahmen.geometricBounds = [linkeObereEcke[0], linkeObereEcke[1], linkeObereEcke[0] + meineHoehe, linkeObereEcke[1] + meineBreite]; // y1, x1, y, x2


Bitte beachte:
Die Koordinaten werden nicht wie aus der Schule bekannt erst mit dem x- und dann mit dem y-Wert notiert, sondern umgekehrt: erst der y-Wert und dann der x-Wert.

Viele Grüße
Martin




als Antwort auf: [#275825]

Mit Skript Textrahmen erstellen

Gerald Singelmann
  
Beiträge gesamt: 6249

12. Feb 2007, 15:57
Beitrag # 3 von 11
Beitrag ID: #275842
Bewertung:
(3753 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Zitat Die Koordinaten werden nicht wie aus der Schule bekannt erst mit dem x- und dann mit dem y-Wert notiert, sondern umgekehrt: erst der y-Wert und dann der x-Wert.


Das konnte ich mir erst merken, als ich kapierte, dass das einfach gegen den Uhrzeigersinn geht:
Top
Left
Bottom
Right


als Antwort auf: [#275834]

Mit Skript Textrahmen erstellen

Martin Fischer
  
Beiträge gesamt: 12494

12. Feb 2007, 16:16
Beitrag # 4 von 11
Beitrag ID: #275851
Bewertung:
(3747 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hej Gerald,

das ist eine gute Eselsbrücke.
Was mußte ich mir bisher immer das Hirn verrencken.

Beim move()-Befehl muß die Koordinate wieder Richtung Mathe-Lehrer gedreht werden:
die erste Koordinate bezeichnet die Richtung auf der x-Achse, die zweite auf der y-Achse.

Viele Grüße
Martin




als Antwort auf: [#275842]
(Dieser Beitrag wurde von Martin Fischer am 12. Feb 2007, 17:09 geändert)

Mit Skript Textrahmen erstellen

deavy
Beiträge gesamt: 25

13. Feb 2007, 07:52
Beitrag # 5 von 11
Beitrag ID: #275930
Bewertung:
(3707 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Guten Morgen,

vielen Dank für die schnelle Hilfe und auch der Eselsbrücke.

So habe ich mir das vorgestellt, dass das gehen könnte.

Aber sind auch Absatzformate möglich oder bspw. Tags zuordenbar? Oder kann ich den Textrahmen gleich mit Inhalt füllen?

Viele Grüße
Michael


als Antwort auf: [#275834]

Mit Skript Textrahmen erstellen

Martin Fischer
  
Beiträge gesamt: 12494

13. Feb 2007, 08:10
Beitrag # 6 von 11
Beitrag ID: #275934
Bewertung:
(3704 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
> Aber sind auch Absatzformate möglich oder bspw. Tags zuordenbar?

Freilich sind auch Absatzformate möglich.
Aus dem Stichwort "Tags" schließe ich, daß es um einen speziellen, hier bislang nicht näher dokumentierten XML-Workflow geht. So kann ich auch nur bröckchenweise antworten. Und ich bezweifle, daß Dir diese Einzelteile mehr bieten als das Gefühl "irgendwie geht das also schon."

Aber Du hast auch wieder recht, wenn Du annimmst, daß der Nachbau Deines XML-Workflows zu aufwendig und die Antwort zu komplex ausfallen würde.

> Oder kann ich den Textrahmen gleich mit Inhalt füllen?

Hier noch ein paar Happen als Ergänzung zum Einstieg oben:
Code
// Festlegung Absatzformat, hier das letzte Absatzformat in der Liste 
meinAbsatzformat = app.activeDocument.paragraphStyles[app.activeDocument.paragraphStyles.length-1];

// Befüllung mit Inhalt
meinTextRahmen.contents = 'Hello world!\rWos homm’s gsogd?';

// Zuweisen des Absatzformats an den gesamten Text des Textrahmens
meinTextRahmen.texts[0].appliedParagraphStyle = meinAbsatzformat;


Viele Grüße
Martin




als Antwort auf: [#275930]

Mit Skript Textrahmen erstellen

deavy
Beiträge gesamt: 25

13. Feb 2007, 08:40
Beitrag # 7 von 11
Beitrag ID: #275944
Bewertung:
(3698 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ja, genau!

Du hast es richtig erkannt.Es handelt sich teilweise um einen XML Workflow. Diese Einzelteile bringen mich schon ein bisschen weiter. Danke dafür!!


Noch eine kleine Frage:

Man nimmt als Beispiel eine Seite mit 5 Textrahmen.
Wenn ich eins manuell auswähle, sehe ich ja die Koordinaten des Feldes.

Ist es aber auch möglich per Skript die oberere linke Ecke und die untere rechte Ecke eines Textrahmens herauszufinden?
Und daraus resultierend dann das unterste nur anzuzeigen?

Ich stell mir das so vor, dass ich mit einem Skript alle Textfelder und deren Koordinate auslese. Nun nehme ich das Textfeld mit der größten Y Koordinate (das ist ja dann das unterste) und gebe von diesem folgendes aus:
Obere linke Ecke und untere rechte Ecke. Somit habe ich von diesem Textfeld alles was ich brauche.

Andere Möglichkeit.
ich schnappe mir 2 Textrahmen, vergleiche diese, speichere die Daten des unteren, vergleiche dieses wieder mit einem anderen usw. bis ich alle durch habe. Isst aufwändiger müsset vom Prinzip aber auch gehen...


Ziel ist es, unter dem untersten Textrahmen einen neuen Textrahmen zu erstellen. Müsste ich nur herausfinden, wo das unterste aufhört :)


Viele Grüße
Michael


als Antwort auf: [#275934]

Mit Skript Textrahmen erstellen

Martin Fischer
  
Beiträge gesamt: 12494

13. Feb 2007, 08:56
Beitrag # 8 von 11
Beitrag ID: #275952
Bewertung:
(3696 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Wie die Positionseigenschaft eines Textrahmens aussieht, habe ich oben bereits beschrieben:

Code
meinTextRahmen.geometricBounds = [y1, x1, y2, x2]; 


Die y1-Positionen aller Textrahmen auf der aktiven Seite erhältst Du demnach z.B. über
Code
var y1Positions = app.layoutWindows[0].activePage.textFrames.everyItem().geometricBounds[0]; 


Und nun müßtest Du eine Funktion einbinden, die Dir den höchsten oder den niedrigsten Wert ermittelt (etwa über Math.max()).

Viele Grüße
Martin




als Antwort auf: [#275944]

Mit Skript Textrahmen erstellen

Gerald Singelmann
  
Beiträge gesamt: 6249

13. Feb 2007, 09:18
Beitrag # 9 von 11
Beitrag ID: #275961
Bewertung:
(3692 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Michael,

wieso geben Sie Martin nicht ganz offiziell den Auftrag, entweder:
- Ihnen JavaScript in einem Kurs beizubringen oder
- Ihnen das Script zu entwickeln
?

Ihre Fragen sind alle sehr grundlegend und zeugen davon, dass Sie entweder noch gar nicht in die Scripting Referenz hineingeschaut haben oder sie nicht verstehen.
Ersteres wäre dreist, zweiteres legt die beiden Vorschläge oben nahe.


als Antwort auf: [#275952]

Mit Skript Textrahmen erstellen

deavy
Beiträge gesamt: 25

13. Feb 2007, 09:36
Beitrag # 10 von 11
Beitrag ID: #275967
Bewertung:
(3685 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi,

es handelt sich um einen XML Workflow. Hier sagt Martin selbst, dass er da nur stückchenweise weiterhelfen kann.

Und zu ihren Fragen:
Es sind grundlegende Dinge. Ich frage danach ob es so funktioniert. Die Lösung wie ich mir das vorstelle liefere ich selbst. Sie verstehen das falsch, wenn sie meinen, ich will dass Martin mir das Skript schreibt.

Ich möchte schauen, ob es sich für uns lohnt, sich damit näher zu beschäftigen.
Deswegen die Fragen nach einfachen grundlegenden Sachen.
Und dafür wähle ich das Forum.

Wenn ich falsch bin für sowas, einfach sagen.


Vielen Dank für deine Hilfe Martin


als Antwort auf: [#275961]

Mit Skript Textrahmen erstellen

Gerald Singelmann
  
Beiträge gesamt: 6249

13. Feb 2007, 09:57
Beitrag # 11 von 11
Beitrag ID: #275978
Bewertung:
(3683 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Zitat Ich möchte schauen, ob es sich für uns lohnt, sich damit näher zu beschäftigen.


Ja, wenn Sie einen XML Workflow aufsetzen wollen, lohnt es sich unbedingt, dass Sie sich mit Scripting beschäftigen.
Sie können per Script quasi alles im Dokument machen, was Sie per Hand machen können und noch etwas mehr.

Falls Sie irgendwelche Scripte dann soweit stehen haben, aber an bestimmten Stellen nicht weiterkommen, helfen wir gern weiter.


als Antwort auf: [#275967]
X

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
05.02.2021 - 05.11.2021

Digicomp Academy AG, Limmatstrasse 50, 8005 Zürich
Freitag, 05. Feb. 2021, 13.00 Uhr - Freitag, 05. Nov. 2021, 17.00 Uhr

Lehrgang

Bilden Sie sich zum zertifizierten Publishing-Multimedia-Profi aus. Neben Fotografie und Video befassen Sie sich mit der Medienproduktion, digitalen Publikationen und dem Webdesign für Desktop- und mobile Endgeräte.

Preis: CHF 10'500.-
Dauer: 30 Tage (ca. 210 Lektionen) – Unterricht findet jeweils am Freitag von 13 - 19 Uhr und Samstag von 09 - 17 Uhr statt

Ja

Organisator: Digicomp Academy AG

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

digicomp.ch/d/9PM

Veranstaltungen
09.09.2021 - 17.12.2021

Digicomp Academy, Zürich
Donnerstag, 09. Sept. 2021, 13.00 Uhr - Freitag, 17. Dez. 2021, 19.00 Uhr

Lehrgang

Steigen Sie in die Welt des Publishings ein und erlangen Sie die Zertifizierung von Publishing NETWORK. Lernen Sie in diesem Lehrgang Druckmedien professionell zu erarbeiten, druckfertige PDFs zu erstellen und CI/CD-Vorgaben umzusetzen.

Preis: 6'300.– zzgl. 7.7% MWST
Dauer: 18 Tage(ca. 126 Lektionen) – Unterricht findet jeweils am Freitag von 13 - 19 Uhr und Samstag von 09 - 17 Uhr statt.

Ja

Organisator: Digicomp Academy AG

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