[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:
(1820 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: 12684

12. Jan 2012, 15:44
Beitrag # 2 von 7
Beitrag ID: #487785
Bewertung:
(1812 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:
(1802 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: 12684

12. Jan 2012, 16:02
Beitrag # 4 von 7
Beitrag ID: #487789
Bewertung:
(1793 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:
(1790 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: 12684

12. Jan 2012, 16:11
Beitrag # 6 von 7
Beitrag ID: #487792
Bewertung:
(1787 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:
(1739 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
02.02.2023

Prozesse optimieren und effizient gestalten

Zürich
Donnerstag, 02. Feb. 2023, 08.00 - 10.00 Uhr

Digitalisierung, Webauftritt

Digitalisierung mitgestalten - Worauf kommt es an? Wie wichtig ist die Webseite? Webseite mit Word Press? Interne Prozesse optimieren

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: Birol Isik, E-Mailinfo AT bkcc DOT ch

https://digitalisierung-heute.ch/digitalisierung-informationstag-schweiz/

Veranstaltungen
01.03.2023 - 09.03.2023

Online
Mittwoch, 01. März 2023, 00.00 Uhr - Donnerstag, 09. März 2023, 00.00 Uhr

Online Webinar

Wie gehen wir mit diesen Veränderungen um? Was ist notwendig, damit wir die Digitalisierung im Unternehmen klappt? Veränderungsprozesse verstehen und entsprechend handeln Mitarbeiter als Botschafter Webseite mit WordPress erstellen SEA /SEO (Ads aufschalten)

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: B. Isik, E-Mailinfo AT snfa DOT ch

https://www.fernstudiumfitness.ch/digitalisierung-schweiz/