Im Textfeld einzelne Bereiche farbig oder fett geschrieben darstellen

Die Möglichkeiten und Tücken von Formularen
pueberall
Beiträge: 99
Registriert: 16.07.2013, 13:28

Im Textfeld einzelne Bereiche farbig oder fett geschrieben darstellen

Beitrag von pueberall » 12.12.2017, 15:48

Mir geht es bei der Sache um folgendes, dass ich eine Liste von Mailvorlagen habe, die ich
1. auswählen kann und
2. nach Klick auf den Briefumschlag mit dem iPad versende, wobei nach Klick auf den Briefumschlag die Mailapp von Apple geöffnet wird und dort dann der Text aus dem PDF übernommen wird...

Das funktioniert ja auch alles, bis auf den Punkt mit fett und Farbe

pueberall
Beiträge: 99
Registriert: 16.07.2013, 13:28

Im Textfeld einzelne Bereiche farbig oder fett geschrieben darstellen

Beitrag von pueberall » 07.01.2018, 07:13

Liebe Gemeinde,

ich habe jetzt eine Mege mit HTML ausprobiert, aber ich bekomme es einfach nicht hin, dass (zumindest) auf dem Bildschirm Textauszüge farblich anders dargestellt werden.

{this.getField("Mailvorlagen-Text").value =<text color="red">Rote Schrift</text>}
erzeugt zwar keine Fehlermeldung, allerdings bleibt die Farbe schwarz...
und mit


{this.getField("Text").value =<html><body><font color="red">Rote Schrift</font></body></html>
wird dieses hier eingeblendet:


---
<html>
  <body>
    <font color="red">Rote Schrift</font>
  </body>
</html>


---
aber die Farbe ist nach wie vor schwarz...

ich möchte mit einer "einfachen" Befehlszeile z.B. eine einzelnes Wort in einem Fließtext farblich ändern... hat dazu jemand eine Idee oder eine Lösung?

Beste Grüße
Puebi


BAlheit
Beiträge: 837
Registriert: 16.08.2013, 12:22

Im Textfeld einzelne Bereiche farbig oder fett geschrieben darstellen

Beitrag von BAlheit » 08.01.2018, 11:25

In Formularfeldern kann man kein HTML verwenden. Um Texte unterschiedlich darzustellen, müssen Span Objekte verwendet werden.

Beispiel:

Code: Alles auswählen

var f = this.getField("myRichField");
// Create an array to hold the Span objects
var spans = new Array();
// Each Span object is an object, so we must create one
spans[0] = new Object();
spans[0].alignment = "center";
spans[0].text = "The answer is x";
spans[1] = new Object();
spans[1].text = "2/3";
spans[1].superscript = true;
spans[2] = new Object();
spans[2].superscript = false;
spans[2].text = ". ";
spans[3] = new Object();
spans[3].underline = true;
spans[3].text = "Did you get it right?";
spans[3].fontStyle = "italic";
spans[3].textColor = color.red;
// Now assign our array of Span objects to the field using
// field.richValue
f.richValue = spans;

pueberall
Beiträge: 99
Registriert: 16.07.2013, 13:28

Im Textfeld einzelne Bereiche farbig oder fett geschrieben darstellen

Beitrag von pueberall » 10.01.2018, 05:18

Mit Span Objekten hatte ich auch schon eine ganze Menge herum "experimentiert"... aber irgendwie bleibt das Feld unbeschriftet.

@BAlheit, Ich habe deinen Script mir mal verinnerlicht ... ich denke auch, dass ich den Script verstanden habe... aber trotz allem bleibt das Textfeld auch nach vielen Stunden testens noch leer...

ich habe mal eine Datei beigefügt, vielleicht kannst du dir das ja mal anschauen, wo da der Fehler liegt... vielen Dank für deine Hilf im Voraus...
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

BAlheit
Beiträge: 837
Registriert: 16.08.2013, 12:22

Im Textfeld einzelne Bereiche farbig oder fett geschrieben darstellen

Beitrag von BAlheit » 10.01.2018, 12:04

Wenn man in einem Textfeld Rich Text verwenden will, muss man dieses auch in den Optionen des Textfeldes aktivieren.

pueberall
Beiträge: 99
Registriert: 16.07.2013, 13:28

Im Textfeld einzelne Bereiche farbig oder fett geschrieben darstellen

Beitrag von pueberall » 12.01.2018, 12:53

Hallo BAlheit,

danke für deinen Hinweis, habe ich total übersehen, klasse für deine Aufmerksamkeit!
Jetzt klappt es! PRIMA!

Ich habe die Datei hauptsächlich für's iPad, dort arbeite ich mit PDF Expert... und damit klappt es nicht, weil anscheinend PDF Expert SPAN Objekte (noch) nicht unterstützt... habe ich gleich mal an den Support geschrieben, haben die was zu tun :D

Antworten