r22945 by jghali - Restore ability to define OpenType features in scripter createCharStyle()

scribus-commit scribus-commit at lists.scribus.net
Sat Apr 13 15:30:51 UTC 2019


Author: jghali
Date: Sat Apr 13 15:30:51 2019
New Revision: 22945

URL: http://scribus.net/websvn/listing.php?repname=Scribus&sc=1&rev=22945
Log:
Restore ability to define OpenType features in scripter createCharStyle()
This ability was removed in r22923. Restore it in a way that will not break existing 1.4.x scripts

Modified:
    trunk/Scribus/doc/de/scripterapi-object.html
    trunk/Scribus/doc/en/scripterapi-object.html
    trunk/Scribus/doc/fr/scripterapi-object.html
    trunk/Scribus/doc/it/scripterapi-object.html
    trunk/Scribus/scribus/plugins/scriptplugin/cmdstyle.cpp

Modified: trunk/Scribus/doc/de/scripterapi-object.html
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=22945&path=/trunk/Scribus/doc/de/scripterapi-object.html
==============================================================================
--- trunk/Scribus/doc/de/scripterapi-object.html	(original)
+++ trunk/Scribus/doc/de/scripterapi-object.html	Sat Apr 13 15:30:51 2019
@@ -10,6 +10,11 @@
 <h2>Creating and Destroying Objects</h2>
 
 <dl>
+
+<dt><a name="-createBezierLine"><strong>createBezierLine</strong></a>(...)</dt>
+<dd><code>createBezierLine(list, ["name"]) -> string</code>
+<p>Creates a new bezier curve and returns its name. The points for the bezier curve are stored in the list "list" in the following order: [x1, y1, kx1, ky1, x2, y2, kx2, ky2...xn. yn, kxn. kyn] In the points list, x and y mean the x and y coordinates of the point and kx and ky meaning the control point for the curve.  The coordinates are given in the current measurement units of the document (see UNIT constants). "name" should be a unique identifier for the object because you need this name for further access to that object. If "name" is not given Scribus will create one for you.</p>
+<p>May raise <a href="scripterapi.html#NameExistsError">NameExistsError</a> if you explicitly pass a name that's already used. May raise ValueError if an insufficient number of points is passed or if the number of values passed don't group into points without leftovers.</p></dd>
 
 <dt><a name="-createCharStyle"><strong>createCharStyle</strong></a>(...)</dt>
 <dd><code>createCharStyle(...)</code>
@@ -34,8 +39,8 @@
 	<li>smallcaps</li>
 </ul>
 </li>
-<li>"fillcolor" [optional], fillshade [optional] -> specify fill options (5th and 6th parameters - 5th is string, 6th is float 1.0 = 100%)</li>
-<li>"strokecolor" [optional], strokeshade [optional] -> specify stroke options (7th and 8th parameters - 7th is string, 8th is float 1.0 = 100%)</li>
+<li>"fillcolor" [optional], fillshade [optional] -> specify fill options (5th parameter: string, 6th parameter: a float 1.0 = 100%)</li>
+<li>"strokecolor" [optional], strokeshade [optional] -> specify stroke options (7th parameter: string, 8th parameter: a float 1.0 = 100%)</li>
 <li>baselineoffset [optional] -> offset of the baseline (ninth parameter)</li>
 <li>shadowxoffset [optional], shadowyoffset [optional] -> offset of the shadow if used (10th and 11th parameters)</li>
 <li>outlinewidth [optional] -> width of the outline if used (12th parameter)</li>
@@ -44,6 +49,65 @@
 <li>scaleh [optional], scalev [optional] -> scale of the chars (17th and 18th parameters - float values, 1.0 = 100%)</li>
 <li>tracking [optional] -> tracking of the text (19th parameter - number with odd math, e.g. -50 = -5.0%)</li>
 <li>"language" [optional] -> language code (20th parameter - a string en = English)</li>
+<li>"fontfeatures" [optional] -> a string that contains a comma-separated list of OpenType font features (21th parameter - a string):
+<ul>
+    <li>Ligatures:
+        <ul>
+            <li>-liga: disable common ligatures</li>
+            <li>-clig: disable contextual ligatures</li>
+            <li>+dlig: enable discretionary ligatures</li>
+            <li>+hlig: enable historical ligatures</li>
+        </ul>
+    </li>
+    <li>Script Position:
+        <ul>
+            <li>+subs: enable subscript</li>
+            <li>+sups: enable superscript</li>
+            <li>+ordn: enable ordinals</li>
+        </ul>
+    </li>
+    <li>Capitals:
+        <ul>
+            <li>+smcp: enable small capitals</li>
+            <li>+c2sc: enable small capitals from capitals</li>
+            <li>+pcap: enable petite capitals</li>
+            <li>+c2pc: enable petite capitals from capitals</li>
+            <li>+unic: enable unicase</li>
+            <li>+titl: enable titling</li>
+        </ul>
+    </li>
+    <li>Numerals:
+        <ul>
+            <li>+lnum: enable lining figures</li>
+            <li>+tnum: enable old style numerals</li>
+        </ul>
+    </li>
+    <li>Numeral Width:
+        <ul>
+            <li>+pnum: enable proportional figures</li>
+            <li>+tnum: enable tabular figures</li>
+        </ul>
+    </li>
+    <li>Numeral Fractions:
+        <ul>
+            <li>+frac: enable diagonal fractions</li>
+            <li>+afrc: enable stacked fractions</li>
+        </ul>
+    </li>
+    <li>Numeral zero:
+        <ul>
+            <li>+zero: enable slashed zero</li>
+        </ul>
+    </li>
+    <li>Style sets:
+        <ul>
+            <li>+ss01: enable 1st style set</li>
+            <li>...</li>
+            <li>+ss20: enable 20th style set</li>
+        </ul>
+    </li>
+</ul>
+</li>
 </ul>
 </p>
 <p>On a practical level, this is a challenging command to fully understand if you wish to assign a number of settings, since keeping track of where you are, and which kind of entry is needed (string vs number) is not easy. For some guidance on this showing in particular how to set tracking, see the wiki page <a href="https://wiki.scribus.net/canvas/Text_and_Text_Manipulation">Text and Text Manipulation</a>.</p>
@@ -63,11 +127,6 @@
 </ul>
 </p>
 </dd>
-
-<dt><a name="-createBezierLine"><strong>createBezierLine</strong></a>(...)</dt>
-<dd><code>createBezierLine(list, ["name"]) -> string</code>
-<p>Creates a new bezier curve and returns its name. The points for the bezier curve are stored in the list "list" in the following order: [x1, y1, kx1, ky1, x2, y2, kx2, ky2...xn. yn, kxn. kyn] In the points list, x and y mean the x and y coordinates of the point and kx and ky meaning the control point for the curve.  The coordinates are given in the current measurement units of the document (see UNIT constants). "name" should be a unique identifier for the object because you need this name for further access to that object. If "name" is not given Scribus will create one for you.</p>
-<p>May raise <a href="scripterapi.html#NameExistsError">NameExistsError</a> if you explicitly pass a name that's already used. May raise ValueError if an insufficient number of points is passed or if the number of values passed don't group into points without leftovers.</p></dd>
 
 <dt><a name="-createEllipse"><strong>createEllipse</strong></a>(...)</dt>
 <dd><code>createEllipse(x, y, width, height, ["name"]) -> string</code>

Modified: trunk/Scribus/doc/en/scripterapi-object.html
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=22945&path=/trunk/Scribus/doc/en/scripterapi-object.html
==============================================================================
--- trunk/Scribus/doc/en/scripterapi-object.html	(original)
+++ trunk/Scribus/doc/en/scripterapi-object.html	Sat Apr 13 15:30:51 2019
@@ -10,6 +10,11 @@
 <h2>Creating and Destroying Objects</h2>
 
 <dl>
+
+<dt><a name="-createBezierLine"><strong>createBezierLine</strong></a>(...)</dt>
+<dd><code>createBezierLine(list, ["name"]) -> string</code>
+<p>Creates a new bezier curve and returns its name. The points for the bezier curve are stored in the list "list" in the following order: [x1, y1, kx1, ky1, x2, y2, kx2, ky2...xn. yn, kxn. kyn] In the points list, x and y mean the x and y coordinates of the point and kx and ky meaning the control point for the curve.  The coordinates are given in the current measurement units of the document (see UNIT constants). "name" should be a unique identifier for the object because you need this name for further access to that object. If "name" is not given Scribus will create one for you.</p>
+<p>May raise <a href="scripterapi.html#NameExistsError">NameExistsError</a> if you explicitly pass a name that's already used. May raise ValueError if an insufficient number of points is passed or if the number of values passed don't group into points without leftovers.</p></dd>
 
 <dt><a name="-createCharStyle"><strong>createCharStyle</strong></a>(...)</dt>
 <dd><code>createCharStyle(...)</code>
@@ -34,8 +39,8 @@
 	<li>smallcaps</li>
 </ul>
 </li>
-<li>"fillcolor" [optional], fillshade [optional] -> specify fill options (5th and 6th parameters - 5th is string, 6th is float 1.0 = 100%)</li>
-<li>"strokecolor" [optional], strokeshade [optional] -> specify stroke options (7th and 8th parameters - 7th is string, 8th is float 1.0 = 100%)</li>
+<li>"fillcolor" [optional], fillshade [optional] -> specify fill options (5th parameter: string, 6th parameter: a float 1.0 = 100%)</li>
+<li>"strokecolor" [optional], strokeshade [optional] -> specify stroke options (7th parameter: string, 8th parameter: a float 1.0 = 100%)</li>
 <li>baselineoffset [optional] -> offset of the baseline (ninth parameter)</li>
 <li>shadowxoffset [optional], shadowyoffset [optional] -> offset of the shadow if used (10th and 11th parameters)</li>
 <li>outlinewidth [optional] -> width of the outline if used (12th parameter)</li>
@@ -44,6 +49,65 @@
 <li>scaleh [optional], scalev [optional] -> scale of the chars (17th and 18th parameters - float values, 1.0 = 100%)</li>
 <li>tracking [optional] -> tracking of the text (19th parameter - number with odd math, e.g. -50 = -5.0%)</li>
 <li>"language" [optional] -> language code (20th parameter - a string en = English)</li>
+<li>"fontfeatures" [optional] -> a string that contains a comma-separated list of OpenType font features (21th parameter - a string):
+<ul>
+    <li>Ligatures:
+        <ul>
+            <li>-liga: disable common ligatures</li>
+            <li>-clig: disable contextual ligatures</li>
+            <li>+dlig: enable discretionary ligatures</li>
+            <li>+hlig: enable historical ligatures</li>
+        </ul>
+    </li>
+    <li>Script Position:
+        <ul>
+            <li>+subs: enable subscript</li>
+            <li>+sups: enable superscript</li>
+            <li>+ordn: enable ordinals</li>
+        </ul>
+    </li>
+    <li>Capitals:
+        <ul>
+            <li>+smcp: enable small capitals</li>
+            <li>+c2sc: enable small capitals from capitals</li>
+            <li>+pcap: enable petite capitals</li>
+            <li>+c2pc: enable petite capitals from capitals</li>
+            <li>+unic: enable unicase</li>
+            <li>+titl: enable titling</li>
+        </ul>
+    </li>
+    <li>Numerals:
+        <ul>
+            <li>+lnum: enable lining figures</li>
+            <li>+tnum: enable old style numerals</li>
+        </ul>
+    </li>
+    <li>Numeral Width:
+        <ul>
+            <li>+pnum: enable proportional figures</li>
+            <li>+tnum: enable tabular figures</li>
+        </ul>
+    </li>
+    <li>Numeral Fractions:
+        <ul>
+            <li>+frac: enable diagonal fractions</li>
+            <li>+afrc: enable stacked fractions</li>
+        </ul>
+    </li>
+    <li>Numeral zero:
+        <ul>
+            <li>+zero: enable slashed zero</li>
+        </ul>
+    </li>
+    <li>Style sets:
+        <ul>
+            <li>+ss01: enable 1st style set</li>
+            <li>...</li>
+            <li>+ss20: enable 20th style set</li>
+        </ul>
+    </li>
+</ul>
+</li>
 </ul>
 </p>
 <p>On a practical level, this is a challenging command to fully understand if you wish to assign a number of settings, since keeping track of where you are, and which kind of entry is needed (string vs number) is not easy. For some guidance on this showing in particular how to set tracking, see the wiki page <a href="https://wiki.scribus.net/canvas/Text_and_Text_Manipulation">Text and Text Manipulation</a>.</p>
@@ -63,11 +127,6 @@
 </ul>
 </p>
 </dd>
-
-<dt><a name="-createBezierLine"><strong>createBezierLine</strong></a>(...)</dt>
-<dd><code>createBezierLine(list, ["name"]) -> string</code>
-<p>Creates a new bezier curve and returns its name. The points for the bezier curve are stored in the list "list" in the following order: [x1, y1, kx1, ky1, x2, y2, kx2, ky2...xn. yn, kxn. kyn] In the points list, x and y mean the x and y coordinates of the point and kx and ky meaning the control point for the curve.  The coordinates are given in the current measurement units of the document (see UNIT constants). "name" should be a unique identifier for the object because you need this name for further access to that object. If "name" is not given Scribus will create one for you.</p>
-<p>May raise <a href="scripterapi.html#NameExistsError">NameExistsError</a> if you explicitly pass a name that's already used. May raise ValueError if an insufficient number of points is passed or if the number of values passed don't group into points without leftovers.</p></dd>
 
 <dt><a name="-createEllipse"><strong>createEllipse</strong></a>(...)</dt>
 <dd><code>createEllipse(x, y, width, height, ["name"]) -> string</code>

Modified: trunk/Scribus/doc/fr/scripterapi-object.html
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=22945&path=/trunk/Scribus/doc/fr/scripterapi-object.html
==============================================================================
--- trunk/Scribus/doc/fr/scripterapi-object.html	(original)
+++ trunk/Scribus/doc/fr/scripterapi-object.html	Sat Apr 13 15:30:51 2019
@@ -1,99 +1,211 @@
 <html>
 <head>
 	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
-	<title>Créer et détruire les objets</title>
+	<title>Créer et détruire les objets</title>
 </head>
 <body>
-<h2>Créer et détruire les objets</h2>
+<h2>Créer et détruire les objets</h2>
 
 <dl>
 
 <dt><a name="-createBezierLine"><strong>createBezierLine</strong></a>(...)</dt>
-<dd><tt>createBezierLine(liste, ["nom"]) -> chaîne</tt>
-<p>Crée une nouvelle courbe de Bézier et retourne son nom. Les
-points de la courbe de bezier sont conservés dans la "liste", dans
+<dd><tt>createBezierLine(liste, ["nom"]) -> chaîne</tt>
+<p>Crée une nouvelle courbe de Bézier et retourne son nom. Les
+points de la courbe de bezier sont conservés dans la "liste", dans
 l'ordre suivant: [x1, y1, kx1, ky1, x2, y2, kx2, ky2...xn. yn, kxn.
-kyn] Dans la liste de points, x et y sont les coordonnées x et y du
-point et kx et ky représentent le point de contrôle de la courbe. Les coordonnées sont fournies dans les unités de mesure du document (voir les constantes UNIT). La
-valeur de "nom" doit être un identifiant unique parce que vous en
-aurez besoin pour accéder plus tard à cet objet. Si "nom" n'est pas
-fourni, Scribus en créera un pour vous.</p>
-<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé. Peut
-générer ValueError si le nombre de points précisé est insuffisant
-ou si le nombre de valeurs passées ne forme pas un groupe de points
+kyn] Dans la liste de points, x et y sont les coordonnées x et y du
+point et kx et ky représentent le point de contrôle de la courbe. Les coordonnées sont fournies dans les unités de mesure du document (voir les constantes UNIT). La
+valeur de "nom" doit être un identifiant unique parce que vous en
+aurez besoin pour accéder plus tard à cet objet. Si "nom" n'est pas
+fourni, Scribus en créera un pour vous.</p>
+<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé. Peut
+générer ValueError si le nombre de points précisé est insuffisant
+ou si le nombre de valeurs passées ne forme pas un groupe de points
 entier, sans reste.</p></dd>
 
+<dt><a name="-createCharStyle"><strong>createCharStyle</strong></a>(...)</dt>
+<dd><code>createCharStyle(...)</code>
+<p>Crée un style de caractère. Cette function accepte les paramètres nommés suivants:
+<ul>
+<li>"name" [requis] -> nom du style de caractère à créer (premier paramètre)</li>
+<li>"font" [optionnel] -> nom de la police de caractère à utiliser (second paramètre)</li>
+<li>fontsize [optionnel] -> taille de la police de caractère (3ème paramètre - nombre réel)</li>
+<li>"features" [optionnel] -> détails typographiques définis sous la forme d'une liste d'éléments séparés par des virgules (sans espaces!), pris parmis les éléments suivants (4ème paramètre - chaîne de caractère):
+<ul>
+	<li>inherit</li>
+	<li>bold</li>
+	<li>italic</li>
+	<li>underline</li>
+	<li>underlinewords</li>
+	<li>strike</li>
+	<li>superscript</li>
+	<li>subscript</li>
+	<li>outline</li>
+	<li>shadowed</li>
+	<li>allcaps</li>
+	<li>smallcaps</li>
+</ul>
+</li>
+<li>"fillcolor" [optionnel], fillshade [optionnel] -> définie la couleur et la teinte de fond (5ème paramètre: chaîne, 6ème paramètre: nombre réel 1.0 = 100%)</li>
+<li>"strokecolor" [optionnel], strokeshade [optionnel] -> définie la couleur et la teinte de filet (7ème paramètre: chaîne, 8ème paramètre: nombre réel 1.0 = 100%)</li>
+<li>baselineoffset [optionnel] -> décalage par rapport à la ligne de base(9ème paramètre)</li>
+<li>shadowxoffset [optionnel], shadowyoffset [optionnel] -> décalages de l'ombre portée si celle-ci est utilisée(10ème et 11ème paramètres)</li>
+<li>outlinewidth [optionnel] -> largeur du filet si celui-ci est utilisé (12ème paramètre)</li>
+<li>underlineoffset [optionnel], underlinewidth [optionnel] -> options de soulignement si utilisé (13ème et 14ème paramètres)</li>
+<li>strikethruoffset [optionnel], strikethruwidth [optionnel] -> options de barré si utilisé (15ème et 16ème paramètres)</li>
+<li>scaleh [optionnel], scalev [optionnel] -> échelle horizontale et verticale des caractères (17ème et 18ème paramètres - nombres réels, 1.0 = 100%)</li>
+<li>tracking [optionnel] -> valeur d'approche du texte(19ème paramètre - nombre réel, e.g. -50 = -5.0%)</li>
+<li>"language" [optionnel] -> code de language (20ème paramètre - chaîne de caractère: en = English)</li>
+<li>"fontfeatures" [optionnel] -> chaîne de caractère contenant une liste de fonctionnalités OpenType séparées par des virgules (21ème paramètre):
+<ul>
+    <li>Ligatures:
+        <ul>
+            <li>-liga: désactive les ligatures commmunes</li>
+            <li>-clig: désactive les ligatures contextuelles</li>
+            <li>+dlig: active les ligatures discrétionnaires</li>
+            <li>+hlig: active les ligatures historiques</li>
+        </ul>
+    </li>
+    <li>Script Position:
+        <ul>
+            <li>+subs: active les indices</li>
+            <li>+sups: active les exposants</li>
+            <li>+ordn: active les ordinaux</li>
+        </ul>
+    </li>
+    <li>Capitals:
+        <ul>
+            <li>+smcp: active les petites capitales</li>
+            <li>+c2sc: active les capitales en petites capitales</li>
+            <li>+pcap: active les petite caps</li>
+            <li>+c2pc: active les capitales en les petite caps</li>
+            <li>+unic: active l'écriture unicamérale</li>
+            <li>+titl: active le titrage</li>
+        </ul>
+    </li>
+    <li>Numerals:
+        <ul>
+            <li>+lnum: active les chiffres alignés</li>
+            <li>+tnum: active les chiffres en style ancien</li>
+        </ul>
+    </li>
+    <li>Numeral Width:
+        <ul>
+            <li>+pnum: active la largeur de chiffre proportionnelle</li>
+            <li>+tnum: active la largeur de chiffre tabulaire</li>
+        </ul>
+    </li>
+    <li>Numeral Fractions:
+        <ul>
+            <li>+frac: active les fractions diagonales</li>
+            <li>+afrc: active les fractions empilées</li>
+        </ul>
+    </li>
+    <li>Numeral zero:
+        <ul>
+            <li>+zero: active le zéro barré</li>
+        </ul>
+    </li>
+    <li>Style sets:
+        <ul>
+            <li>+ss01: active le 1er jeu de style</li>
+            <li>...</li>
+            <li>+ss20: active le 20ème jeu de style</li>
+        </ul>
+    </li>
+</ul>
+</li>
+</ul>
+</p>
+<p>On a practical level, this is a challenging command to fully understand if you wish to assign a number of settings, since keeping track of where you are, and which kind of entry is needed (string vs number) is not easy. For some guidance on this showing in particular how to set tracking, see the wiki page <a href="https://wiki.scribus.net/canvas/Text_and_Text_Manipulation">Text and Text Manipulation</a>.</p>
+</dd>
+
+<dt><a name="-createCustomLineStyle"><strong>createCustomLineStyle</strong></a>(...)</dt>
+<dd><code>createCustomLineStyle(nomStyle, style)</code>
+<p>Crée le style de filet personnalisé 'nomStyle'.</p>
+<p>Cette fonction accepte une liste de dictonnaires en tant que paramètre du style. Chaque dictionnaire représente un sous-filet du style et accepte les clés suivantes:
+<ul>
+<li>Color [optionnel] -> nom de la couleur à utiliser (chaîne)</li>
+<li>Dash [optionnel] -> type de ligne à utiliser (entier)</li>
+<li>LineEnd [optionnel] -> type de fin de filet à utiliser  (entier)</li>
+<li>LineJoin [optionnel] -> type de jointure de filet à utiliser  (entier)</li>
+<li>Shade [optionnel] -> teinte de couleur (entier)</li>
+<li>Width [optionnel] -> largeur de filet (nombre réel entier)</li>
+</ul>
+</p>
+</dd>
+
 <dt><a name="-createEllipse"><strong>createEllipse</strong></a>(...)</dt>
-<dd><tt>createEllipse(x, y, largeur, hauteur, ["nom"]) -> chaîne</tt>
-<p>Crée une nouvelle ellipse dans la page courante et retourne son nom. Les coordonnées sont données dans les unités de mesure du document (voir les constantes UNIT). La
-valeur de "nom" doit être un identifiant unique parce que vous en
-aurez besoin pour accéder plus tard à l'objet désigné. Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
-<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.</p></dd></dt>
+<dd><tt>createEllipse(x, y, largeur, hauteur, ["nom"]) -> chaîne</tt>
+<p>Crée une nouvelle ellipse dans la page courante et retourne son nom. Les coordonnées sont données dans les unités de mesure du document (voir les constantes UNIT). La
+valeur de "nom" doit être un identifiant unique parce que vous en
+aurez besoin pour accéder plus tard à l'objet désigné. Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
+<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.</p></dd></dt>
 
 <dt><a name="-createImage"><strong>createImage</strong></a>(...)</dt>
-<dd><tt>createImage(x, y, largeur, hauteur, ["nom"]) -> chaîne</tt>
-<p>Crée un nouveau cadre d'image dans la page courante et retourne son nom. Les coordonnées sont affichées dans les unités de mesure du document. 
-La valeur de "nom" doit être un identifiant unique parce que vous en aurez besoin pour accéder plus tard à cet objet. Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
-<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.</p></dd>
+<dd><tt>createImage(x, y, largeur, hauteur, ["nom"]) -> chaîne</tt>
+<p>Crée un nouveau cadre d'image dans la page courante et retourne son nom. Les coordonnées sont affichées dans les unités de mesure du document. 
+La valeur de "nom" doit être un identifiant unique parce que vous en aurez besoin pour accéder plus tard à cet objet. Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
+<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.</p></dd>
 
 <dt><a name="-createLine"><strong>createLine</strong></a>(...)</dt>
-<dd><tt>createLine(x1, y1, x2, y2, ["nom"]) -> chaîne</tt>
-<p>Crée une nouvelle ligne à partir du point(x1, y1) et du point(x2, y2) et retourne son nom. Les coordonnées sont affichées dans les unités de mesure du document (voir les constantes UNIT). La valeur de "nom" doit être un identifiant unique parce que vous en aurez besoin pour accéder plus tard à cet objet. 
-Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
-<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.</p></dd>
+<dd><tt>createLine(x1, y1, x2, y2, ["nom"]) -> chaîne</tt>
+<p>Crée une nouvelle ligne à partir du point(x1, y1) et du point(x2, y2) et retourne son nom. Les coordonnées sont affichées dans les unités de mesure du document (voir les constantes UNIT). La valeur de "nom" doit être un identifiant unique parce que vous en aurez besoin pour accéder plus tard à cet objet. 
+Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
+<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.</p></dd>
 
 <dt><a name="-createPathText"><strong>createPathText</strong></a>(...)</dt>
-<dd><tt>createPathText(x, y, "boiteTexte", "courbeBezier", ["nom"]) -> chaîne</tt>
-<p>Crée un nouveau pathText en combinant les deux objets "boîte de texte" et "courbe de Bézier", puis retourne son nom. Les coordonnées sont affichées dans les unités de mesure du document (voir les constantes UNIT). La valeur de "nom" doit être un identifiant unique parce que vous en aurez besoin pour accéder plus tard à cet objet. Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
-<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.
-Peut générer <a href="scripterapi.html#NotFoundError">NotFoundError</a> si l'un des objets de base (ou les deux) n'existent pas.</p></dd>
+<dd><tt>createPathText(x, y, "boiteTexte", "courbeBezier", ["nom"]) -> chaîne</tt>
+<p>Crée un nouveau pathText en combinant les deux objets "boîte de texte" et "courbe de Bézier", puis retourne son nom. Les coordonnées sont affichées dans les unités de mesure du document (voir les constantes UNIT). La valeur de "nom" doit être un identifiant unique parce que vous en aurez besoin pour accéder plus tard à cet objet. Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
+<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.
+Peut générer <a href="scripterapi.html#NotFoundError">NotFoundError</a> si l'un des objets de base (ou les deux) n'existent pas.</p></dd>
 
 <dt><a name="-createPolyLine"><strong>createPolyLine</strong></a>(...)</dt>
-<dd><tt>createPolyLine(liste, ["nom"]) -> chaîne</tt>
-<p>Crée un nouveau polyline et retourne son nom. Les points de l'élément polyline sont conservés dans la "liste", dans l'ordre suivant : [x1, y1, x2, y2...xn. yn]. Les coordonnées sont données dans les unités de mesure du document (voir les constantes UNIT). La valeur de "nom" doit être un identifiant unique parce que vous en aurez besoin pour accéder plus tard à cet objet. Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
-<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.
-Peut générer ValueError si le nombre de points précisé est insuffisant ou si le nombre de valeurs passées ne forme pas un groupe de points entier, sans reste.</p></dd>
+<dd><tt>createPolyLine(liste, ["nom"]) -> chaîne</tt>
+<p>Crée un nouveau polyline et retourne son nom. Les points de l'élément polyline sont conservés dans la "liste", dans l'ordre suivant : [x1, y1, x2, y2...xn. yn]. Les coordonnées sont données dans les unités de mesure du document (voir les constantes UNIT). La valeur de "nom" doit être un identifiant unique parce que vous en aurez besoin pour accéder plus tard à cet objet. Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
+<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.
+Peut générer ValueError si le nombre de points précisé est insuffisant ou si le nombre de valeurs passées ne forme pas un groupe de points entier, sans reste.</p></dd>
 
 <dt><a name="-createPolygon"><strong>createPolygon</strong></a>(...)</dt>
-<dd><tt>createPolygon(liste, ["nom"]) -> chaîne</tt>
-<p>Crée un nouveau polygone et retourne son nom. Les points du polygone sont conservés dans la "liste", dans l'ordre suivant: [x1, y1, x2, y2...xn. yn]. 
-Au moins trois points sont requis. Il n'est pas nécessaire de répéter le premier point pour fermer le polygone. Le polygone se ferme automatiquement avec la connexion du premier et du dernier point. Les coordonnées sont données dans les unités de mesure du document (voir les constantes UNIT). La valeur de "nom" doit être un identifiant unique parce que vous en aurez besoin pour accéder plus tard à cet objet. 
-Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
-<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.
-Peut générer ValueError si le nombre de points précisé est insuffisant ou si le nombre de valeurs passées ne forme pas un groupe de points entier, sans reste.</p></dd>
+<dd><tt>createPolygon(liste, ["nom"]) -> chaîne</tt>
+<p>Crée un nouveau polygone et retourne son nom. Les points du polygone sont conservés dans la "liste", dans l'ordre suivant: [x1, y1, x2, y2...xn. yn]. 
+Au moins trois points sont requis. Il n'est pas nécessaire de répéter le premier point pour fermer le polygone. Le polygone se ferme automatiquement avec la connexion du premier et du dernier point. Les coordonnées sont données dans les unités de mesure du document (voir les constantes UNIT). La valeur de "nom" doit être un identifiant unique parce que vous en aurez besoin pour accéder plus tard à cet objet. 
+Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
+<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.
+Peut générer ValueError si le nombre de points précisé est insuffisant ou si le nombre de valeurs passées ne forme pas un groupe de points entier, sans reste.</p></dd>
 
 <dt><a name="-createRect"><strong>createRect</strong></a>(...)</dt>
-<dd><tt>createRect(x, y, largeur, hauteur, ["nom"]) -> chaîne</tt>
-<p>Crée un nouveau rectangle dans la page courante et retourne son nom. Les coordonnées sont données dans les unités de mesure du document (voir les constantes UNIT). Le "nom" doit être un identifiant unique parce que vous en aurez besoin pour des références futures à l'objet désigné. Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
-<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.</p></dd>
+<dd><tt>createRect(x, y, largeur, hauteur, ["nom"]) -> chaîne</tt>
+<p>Crée un nouveau rectangle dans la page courante et retourne son nom. Les coordonnées sont données dans les unités de mesure du document (voir les constantes UNIT). Le "nom" doit être un identifiant unique parce que vous en aurez besoin pour des références futures à l'objet désigné. Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
+<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.</p></dd>
 
 <dt><a name="-createText"><strong>createText</strong></a>(...)</dt>
-<dd><tt>createText(x, y, largeur, hauteur, ["nom"]) -> chaîne</tt>
-<p>Crée un nouveau cadre de texte dans la page courante et retourne son nom. Les coordonnées sont données dans les unités de mesure du document (voir les constantes UNIT). La valeur de "nom" doit être un identifiant unique parce que vous en aurez besoin pour accéder plus tard à l'objet désigné. Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
-<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.</p></dd>
+<dd><tt>createText(x, y, largeur, hauteur, ["nom"]) -> chaîne</tt>
+<p>Crée un nouveau cadre de texte dans la page courante et retourne son nom. Les coordonnées sont données dans les unités de mesure du document (voir les constantes UNIT). La valeur de "nom" doit être un identifiant unique parce que vous en aurez besoin pour accéder plus tard à l'objet désigné. Si "nom" n'est pas fourni, Scribus en créera un pour vous.</p>
+<p>Peut générer <a href="scripterapi.html#NameExistsError">NameExistsError</a> si vous passez explicitement un nom déjà utilisé.</p></dd>
 
 <dt><a name="-deleteObject"><strong>deleteObject</strong></a>(...)</dt>
 <dd><tt>deleteObject(["nom"])</tt>
-<p>Supprime l'élément portant le nom "nom". Si "nom" n'est pas
-fourni, l'élément sélectionné est supprimé.</p></dd>
+<p>Supprime l'élément portant le nom "nom". Si "nom" n'est pas
+fourni, l'élément sélectionné est supprimé.</p></dd>
 
 <dt><a name="-getAllStyles"><strong>getAllStyles</strong></a>(...)</dt>
 <dd><tt>getAllStyles() -> liste</tt>
-<p>Obsolète. Veuillez utiliser getParagraphStyles() en lieu et place.</p></dd>
+<p>Obsolète. Veuillez utiliser getParagraphStyles() en lieu et place.</p></dd>
 
 <dt><a name="-getCharStyles"><strong>getCharStyles</strong></a>(...)</dt>
 <dd><tt>getCharStyles() -> liste</tt>
-<p>Retourne une liste des noms de l'ensemble des styles de caractère du document courant.</p></dd>
+<p>Retourne une liste des noms de l'ensemble des styles de caractère du document courant.</p></dd>
 
 <dt><a name="-getParagraphStyles"><strong>getParagraphStyles</strong></a>(...)</dt>
 <dd><tt>getParagraphStyles() -> liste</tt>
 <p>Retourne une liste des noms de l'ensemble des styles de paragraphe du document courant.</p></dd>
 	
 <dt><a name="-objectExists"><strong>objectExists</strong></a>(...)</dt>
-<dd><tt>objectExists(["nom"]) -> booléen</tt>
-<p>Teste si un objet avec le nom spécifié existe réellement dans le document. Le paramètre optionnel est le nom de l'objet. Lorsqu'aucun
-nom d'objet n'est donné, retourne la valeur True si un élément est
-sélectionné.</p></dd>
+<dd><tt>objectExists(["nom"]) -> booléen</tt>
+<p>Teste si un objet avec le nom spécifié existe réellement dans le document. Le paramètre optionnel est le nom de l'objet. Lorsqu'aucun
+nom d'objet n'est donné, retourne la valeur True si un élément est
+sélectionné.</p></dd>
 
 </dl>
 </body>

Modified: trunk/Scribus/doc/it/scripterapi-object.html
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=22945&path=/trunk/Scribus/doc/it/scripterapi-object.html
==============================================================================
--- trunk/Scribus/doc/it/scripterapi-object.html	(original)
+++ trunk/Scribus/doc/it/scripterapi-object.html	Sat Apr 13 15:30:51 2019
@@ -10,6 +10,11 @@
 <h2>Creating and Destroying Objects</h2>
 
 <dl>
+
+<dt><a name="-createBezierLine"><strong>createBezierLine</strong></a>(...)</dt>
+<dd><code>createBezierLine(list, ["name"]) -> string</code>
+<p>Creates a new bezier curve and returns its name. The points for the bezier curve are stored in the list "list" in the following order: [x1, y1, kx1, ky1, x2, y2, kx2, ky2...xn. yn, kxn. kyn] In the points list, x and y mean the x and y coordinates of the point and kx and ky meaning the control point for the curve.  The coordinates are given in the current measurement units of the document (see UNIT constants). "name" should be a unique identifier for the object because you need this name for further access to that object. If "name" is not given Scribus will create one for you.</p>
+<p>May raise <a href="scripterapi.html#NameExistsError">NameExistsError</a> if you explicitly pass a name that's already used. May raise ValueError if an insufficient number of points is passed or if the number of values passed don't group into points without leftovers.</p></dd>
 
 <dt><a name="-createCharStyle"><strong>createCharStyle</strong></a>(...)</dt>
 <dd><code>createCharStyle(...)</code>
@@ -34,8 +39,8 @@
 	<li>smallcaps</li>
 </ul>
 </li>
-<li>"fillcolor" [optional], fillshade [optional] -> specify fill options (5th and 6th parameters - 5th is string, 6th is float 1.0 = 100%)</li>
-<li>"strokecolor" [optional], strokeshade [optional] -> specify stroke options (7th and 8th parameters - 7th is string, 8th is float 1.0 = 100%)</li>
+<li>"fillcolor" [optional], fillshade [optional] -> specify fill options (5th parameter: string, 6th parameter: a float 1.0 = 100%)</li>
+<li>"strokecolor" [optional], strokeshade [optional] -> specify stroke options (7th parameter: string, 8th parameter: a float 1.0 = 100%)</li>
 <li>baselineoffset [optional] -> offset of the baseline (ninth parameter)</li>
 <li>shadowxoffset [optional], shadowyoffset [optional] -> offset of the shadow if used (10th and 11th parameters)</li>
 <li>outlinewidth [optional] -> width of the outline if used (12th parameter)</li>
@@ -44,6 +49,65 @@
 <li>scaleh [optional], scalev [optional] -> scale of the chars (17th and 18th parameters - float values, 1.0 = 100%)</li>
 <li>tracking [optional] -> tracking of the text (19th parameter - number with odd math, e.g. -50 = -5.0%)</li>
 <li>"language" [optional] -> language code (20th parameter - a string en = English)</li>
+<li>"fontfeatures" [optional] -> a string that contains a comma-separated list of OpenType font features (21th parameter - a string):
+<ul>
+    <li>Ligatures:
+        <ul>
+            <li>-liga: disable common ligatures</li>
+            <li>-clig: disable contextual ligatures</li>
+            <li>+dlig: enable discretionary ligatures</li>
+            <li>+hlig: enable historical ligatures</li>
+        </ul>
+    </li>
+    <li>Script Position:
+        <ul>
+            <li>+subs: enable subscript</li>
+            <li>+sups: enable superscript</li>
+            <li>+ordn: enable ordinals</li>
+        </ul>
+    </li>
+    <li>Capitals:
+        <ul>
+            <li>+smcp: enable small capitals</li>
+            <li>+c2sc: enable small capitals from capitals</li>
+            <li>+pcap: enable petite capitals</li>
+            <li>+c2pc: enable petite capitals from capitals</li>
+            <li>+unic: enable unicase</li>
+            <li>+titl: enable titling</li>
+        </ul>
+    </li>
+    <li>Numerals:
+        <ul>
+            <li>+lnum: enable lining figures</li>
+            <li>+tnum: enable old style numerals</li>
+        </ul>
+    </li>
+    <li>Numeral Width:
+        <ul>
+            <li>+pnum: enable proportional figures</li>
+            <li>+tnum: enable tabular figures</li>
+        </ul>
+    </li>
+    <li>Numeral Fractions:
+        <ul>
+            <li>+frac: enable diagonal fractions</li>
+            <li>+afrc: enable stacked fractions</li>
+        </ul>
+    </li>
+    <li>Numeral zero:
+        <ul>
+            <li>+zero: enable slashed zero</li>
+        </ul>
+    </li>
+    <li>Style sets:
+        <ul>
+            <li>+ss01: enable 1st style set</li>
+            <li>...</li>
+            <li>+ss20: enable 20th style set</li>
+        </ul>
+    </li>
+</ul>
+</li>
 </ul>
 </p>
 <p>On a practical level, this is a challenging command to fully understand if you wish to assign a number of settings, since keeping track of where you are, and which kind of entry is needed (string vs number) is not easy. For some guidance on this showing in particular how to set tracking, see the wiki page <a href="https://wiki.scribus.net/canvas/Text_and_Text_Manipulation">Text and Text Manipulation</a>.</p>
@@ -63,11 +127,6 @@
 </ul>
 </p>
 </dd>
-
-<dt><a name="-createBezierLine"><strong>createBezierLine</strong></a>(...)</dt>
-<dd><code>createBezierLine(list, ["name"]) -> string</code>
-<p>Creates a new bezier curve and returns its name. The points for the bezier curve are stored in the list "list" in the following order: [x1, y1, kx1, ky1, x2, y2, kx2, ky2...xn. yn, kxn. kyn] In the points list, x and y mean the x and y coordinates of the point and kx and ky meaning the control point for the curve.  The coordinates are given in the current measurement units of the document (see UNIT constants). "name" should be a unique identifier for the object because you need this name for further access to that object. If "name" is not given Scribus will create one for you.</p>
-<p>May raise <a href="scripterapi.html#NameExistsError">NameExistsError</a> if you explicitly pass a name that's already used. May raise ValueError if an insufficient number of points is passed or if the number of values passed don't group into points without leftovers.</p></dd>
 
 <dt><a name="-createEllipse"><strong>createEllipse</strong></a>(...)</dt>
 <dd><code>createEllipse(x, y, width, height, ["name"]) -> string</code>

Modified: trunk/Scribus/scribus/plugins/scriptplugin/cmdstyle.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=22945&path=/trunk/Scribus/scribus/plugins/scriptplugin/cmdstyle.cpp
==============================================================================
--- trunk/Scribus/scribus/plugins/scriptplugin/cmdstyle.cpp	(original)
+++ trunk/Scribus/scribus/plugins/scriptplugin/cmdstyle.cpp	Sat Apr 13 15:30:51 2019
@@ -115,6 +115,7 @@
 		const_cast<char*>("scalev"),
 		const_cast<char*>("tracking"),
 		const_cast<char*>("language"),
+		const_cast<char*>("fontfeatures"),
 		nullptr};
 
 	if (!checkHaveDocument())




More information about the scribus-commit mailing list