[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt [Javascript] Normalen Text und kursiven Text in eine Zeile einfügen

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

[Javascript] Normalen Text und kursiven Text in eine Zeile einfügen

schlang
Beiträge gesamt: 54

12. Jan 2012, 15:21
Beitrag # 1 von 7
Bewertung:
(1825 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Servus, ich möchte per Javascript normalen Text und kursiven Text in eine Zeile eines Textrahmens einfügen.

Grundidee: mit InsertionPoints arbeiten.

Problem: wie mache ich den kursiven Text kursiv (also ein Zeichenformat anwenden), ohne diesen Text zu selektieren? App.select() geht nicht, weil der Inhalt für den Textrahmen zu groß ist und overflow hat.

Oder anders gefragt, wie bekomme ich programmatisch in einen Paragraph mehrere InsertionPoints?

Danke!
X

[Javascript] Normalen Text und kursiven Text in eine Zeile einfügen

Martin Fischer
  
Beiträge gesamt: 12687

12. Jan 2012, 15:44
Beitrag # 2 von 7
Beitrag ID: #487785
Bewertung:
(1817 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Mir sind die Vorraussetzungen nicht ganz klar.

Wie wird der Text eingefügt?
1. Über die Zwischenablage oder
2. durch die Adressierung eines Einfügepunkts oder
3. über Treffer einer Suche?

Ein Einfügepunkt hat wie auch andere Text-Objekte (character, word, line, paragraph, text ...) die Eigenschaft fontStyle. Dies ist beim Einfügepunkt oder beim entsprechenden Text-Objekt mit einem entsprechenden Wert (z.B. 'Italic') zu versehen.

Das Hauptproblem dürfte darin bestehen, den gewünschten Einfügepunkt bzw. das gewünschte Text-Objekt korrekt zu adressieren. Dazu müsste mal angegeben werden, was genau gemacht werden soll (Kontext).


Antwort auf: Oder anders gefragt, wie bekomme ich programmatisch in einen Paragraph mehrere InsertionPoints?


Diese Frage verstehe ich nicht.
myParagraph.insertionPoints.item(0) ist der erste Einfügepunkt in einem Absatz.
myParagraph.insertionPoints.item(1) ist der zweite Einfügepunkt in einem Absatz.
myParagraph.insertionPoints.item(2) ist der dritte Einfügepunkt in einem Absatz.

Aber was heißt 'programmatisch bekommen/erhalten'?


als Antwort auf: [#487780]
(Dieser Beitrag wurde von Martin Fischer am 12. Jan 2012, 15:52 geändert)

[Javascript] Normalen Text und kursiven Text in eine Zeile einfügen

schlang
Beiträge gesamt: 54

12. Jan 2012, 15:53
Beitrag # 3 von 7
Beitrag ID: #487787
Bewertung:
(1807 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich füge 500 Zeilen die programmatisch aus einer Textdatei eingelesen werden in einen Textrahmen ein.

Über eine Funktion schreibe ich nun Zeile für Zeile in den Textrahmen:

Code
/*void*/ function writeLine( /*document*/ doc, /*story*/ story, /*string*/ content, /*string*/ paraStyleName ) 
//----------------------------------------------------------
{
var ins;
if( story.insertionPoints.length > 0 )
{
ins = story.insertionPoints.item( story.insertionPoints.length - 1 );
}
else
{
ins = story.insertionPoints.item( 0 );
}

var style = null;

if( paraStyleName != null && paraStyleName.length > 0 )
style = doc.paragraphStyles.item( paraStyleName );

ins.contents = content + "\r";

if( style != null )
ins.appliedParagraphStyle = style;
}


Was nun die neue Anforderung ist, dass Teile des in der Variable "content" übergebenen Textes kursiv sein sollen.


als Antwort auf: [#487785]

[Javascript] Normalen Text und kursiven Text in eine Zeile einfügen

Martin Fischer
  
Beiträge gesamt: 12687

12. Jan 2012, 16:02
Beitrag # 4 von 7
Beitrag ID: #487789
Bewertung:
(1798 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: Was nun die neue Anforderung ist, dass Teile des in der Variable "content" übergebenen Textes kursiv sein sollen.


Kannst Du die Teile genauer beschreiben?
Bestimmte Worte, bestimmte Zeichenmuster, immer das dritte Wort ...?

Muss die Formatierung beim Einfügevorgang erfolgen?
Ist es nicht möglich, den entsprechenden Text nach der kompletten Einfügeprozedur anhand eines bestimmten Musters zu ermitteln und nachträglich zu formatieren?


als Antwort auf: [#487787]

[Javascript] Normalen Text und kursiven Text in eine Zeile einfügen

schlang
Beiträge gesamt: 54

12. Jan 2012, 16:03
Beitrag # 5 von 7
Beitrag ID: #487790
Bewertung:
(1795 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Es werden 4 Wörter übergeben, per TAB getrennt.
Das zweite Wort muss immer kursiv sein.

Nach der Einfügeoperation wäre eine Notlösung, mich würde interessieren ob ich es direkt beim Einfügen machen kann.


als Antwort auf: [#487789]

[Javascript] Normalen Text und kursiven Text in eine Zeile einfügen

Martin Fischer
  
Beiträge gesamt: 12687

12. Jan 2012, 16:11
Beitrag # 6 von 7
Beitrag ID: #487792
Bewertung:
(1792 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: Das zweite Wort muss immer kursiv sein.


Ermittle vor dem Einfügen die Zahl der Wörter im Textabschnitt (story) bis zum Einfügepunkt (dort, wo der Text eingefügt werden soll.
Addiere zu dieser Zahl in Deinem Fall 2.
Weise dem Wort 'alte Wortlänge bis zum Einfügepunkt (word_len) + 2' den fontStyle 'Italic' zu (für JS vom Wert 1 abziehen, da ab 0 gezählt wird).

Code
ins.parentStory.words.item(word_len + 2 -1).fontStyle = 'Italic'. 



als Antwort auf: [#487790]
(Dieser Beitrag wurde von Martin Fischer am 12. Jan 2012, 16:37 geändert)

[Javascript] Normalen Text und kursiven Text in eine Zeile einfügen

schlang
Beiträge gesamt: 54

12. Jan 2012, 17:11
Beitrag # 7 von 7
Beitrag ID: #487797
Bewertung:
(1744 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Danke, genau so funktioniert es wunderbar!


als Antwort auf: [#487792]
X

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
09.05.2023

Digicomp (Bern, Basel, Zürich)
Dienstag, 09. Mai 2023, 08.30 - 17.00 Uhr

Kurs

Sie verfügen über ein Abonnement der Creative Cloud, welches Adobe Acrobat DC Pro beinhaltet. Sind Sie unsicher, ob Ihre PDF Dateien für die jeweilige Druckausgabe geeignet sind? Lernen Sie in diesem Kurs das notwendige Rüstzeug für den sicheren Datenaustausch mit Druckdienstleistern. Erstellen Sie druckfähige PDF/X und prüfen Sie Ihre PDFs vor einer Weitergabe mit Acrobat DC Pro.

Dauer: 1 Tag
Preis: CHF 700.–, exkl. MWST

Ja

Organisator: Digicomp Academy AG

https://digicomp.ch/weiterbildung-media-communication/adobe/kurs-pruefen-von-druck-pdf-in-acrobat-dc-pro--basic

Prüfen von Druck-PDF in Acrobat DC Pro