IPB

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> Problème Applescript Quarkxpress OSX, Ajuster la hauteur d'un bloc texte Quark XPress à son contenu
Options
jpkatana974
posté 23 Nov 2012, 20:02
Message #1


Nouveau Membre


Groupe : Membres
Messages : 2
Inscrit : 23 Nov 2012
Membre no 180 691



Bonjour
Je n'arrive pas à faire fonctionner un script sous osx qui fonctionnais sous os 9. message d'erreur suivant "Il est impossible de rendre «data FXVMC8E36D03» en type number"
Ci joint le script

-- Ajustement d'un bloc à son contenu

tell application "QuarkXPress"

tell document 1
set vertical measure to millimeters
set horizontal measure to millimeters

tell current page
set wPB to coerce (bottom of bounds) as number
end tell

tell text box 1
-- stockage des (4) coordonnées du bloc de texte
set wt to (top of bounds) as number
set wl to (left of bounds) as number
set wb to (bottom of bounds) as number
set wr to (right of bounds) as number

-- Agrandissement du bloc de texte jusqu'en bas de page
set bounds to {wt, wl, wPB, wr}

-- Obtention d'informations sur le dernier caractère
tell last character
-- de façon relative au début du bloc
set wBL to (baseline) as number
set wDe to (descent) as number
end tell

-- Restriction de la hauteur du bloc
-- a la position du dernier caractère, augmentée de 1/10e de mm
set bounds to {wt, wl, wt + wBL + wDe + 2, wr}
end tell
end tell
end tell
Go to the top of the page
 
+Quote Post
CMJS
posté 26 Nov 2012, 09:47
Message #2


Macbidouilleur d'argent !
***

Groupe : Membres
Messages : 757
Inscrit : 9 Aug 2006
Lieu : Ici, pourquoi ?
Membre no 65 624



Plusieurs choses : top of bounds etc. ne marche pas (plus ?) ; tu ne pourras pas, bizarrement, coerciser les mesures de la page en variables de manière aussi simple alors que ça marche pour la fenêtre du document (-> set {BORD_GAUCHE, BORD_SUPERIEUR, BORD_DROIT, BORD_INFERIEUR} to bounds of document 1 -- = les mesures de ta fenêtre à l'écran, en pixels) ; pour obtenir la hauteur de page, il faut rester au niveau du document et non pas se placer au niveau de la pge (set PH to page height of document 1) ; pour les coordonnées du bloc, il faut les obtenir en tant que liste (set {T,L,B,R} to (bounds of current box as list) -- {Top, Left, Bottom, Right}, ce qui correspond, dans la palette Mesures, aux champs y, x, H+y, W+x…) ; pour agrandir ton bloc, tu devras donner comme valeur à B la hauteur de page PH pour permettre au dernier caractère d'apparaître — je fais confiance à ton script d'origine… ; puis tu donneras comme valeurs aux mesures de bloc {T,L,(wBL + wDe + (T as real)),R} -- nul besoin d'ajouter quoi que ce soit…

Soit en clair :
Citation
tell application "QuarkXPress9311"
     tell document 1
          set vertical measure to millimeters
          set horizontal measure to millimeters
          set PH to page height
          set {T, L, B, R} to (bounds of current box as list)
          set bounds of current box to {T, L, PH, R}
          tell last character of current box
               -- de façon relative au début du bloc
               set wBL to (baseline) as number
               set wDe to (descent) as number
          end tell
          set bounds of current box to {T, L, (wBL + wDe + (T as real)), R}
     end tell
end tell


Ce message a été modifié par CMJS - 26 Nov 2012, 09:49.


--------------------
Jean-Marie Schwartz
[MacPro Quad-Core Intel Xeon 2,8 GHz • OS 10.10.5 • QuarkXPress 9.5.4.1 et 2017 • Adobe CS5 et CS6 • Linotype FontExplorerX Pro]

« A l'école, c'est logique, l'écologie il faudrait l'enseigner : réapprendre la grammaire de l'eau, de l'air ou de la lumière… » (CharlElie Couture, « Les Ours blancs », in Fort Rêveur)
Go to the top of the page
 
+Quote Post
jpkatana974
posté 26 Nov 2012, 10:14
Message #3


Nouveau Membre


Groupe : Membres
Messages : 2
Inscrit : 23 Nov 2012
Membre no 180 691



Merci pour l'aide. Entre temps j'ai pu trouvez une solution qui fonctionne avec une colonne, je cherche la solution sur plusieurs colonnes.

-- Ajustement d'un bloc à son contenu
tell application "QuarkXPress"

tell document 1
set vertical measure to millimeters
set horizontal measure to millimeters

tell current page
set wPB to (bottom of bounds)
set wPB to coerce (wPB) to number
end tell

tell text box 1
-- stockage des (4) coordonnées du bloc de texte
set wt to (top of bounds)
set wt to coerce (wt) to number
set wl to (left of bounds)
set wl to coerce (wl) to number
set wb to (bottom of bounds)
set wb to coerce (wb) to number
set wr to (right of bounds)
set wr to coerce (wr) to number

-- Agrandissement du bloc de texte jusqu'en bas de page
set bounds to {wt, wl, wPB, wr}

-- Obtention d'informations sur le dernier caractère
tell last character
-- de façon relative au début du bloc
set wBL to (baseline)
set wBL to coerce (wBL) to number
set wDe to (descent)
set wDe to coerce (wDe) to number
end tell

-- Restriction de la hauteur du bloc
-- a la position du dernier caractère, augmentée de 1/10e de mm
set bounds to {wt, wl, wt + wBL + wDe + 1, wr}

end tell
end tell
end tell
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



Nous sommes le : 25th April 2024 - 01:22