Aide - Recherche - Membres - Calendrier
Version complète : PrintOMatic - saut de page auto
Centre de Formation Director - Forums Adobe Director > Aide sur Director > Les Xtras
MaRRocK
salut,

je suis en train de teste l'impression avec PrintOMatic_Lite (je ne l'ai pas encore acheté)
je n'utilise pas printFrom() car mon texte est plus long que ma scène et donc l'intégralité du texte (barre défilante sur la scène) n'est pas imprimé

mon acteur "toto" est un texte

CODE

on mouseUp me  
 set doc = new(xtra "PrintOMatic_Lite")
 
 if objectp(doc) = 0 then exit

 setDocumentName doc, "test impressions"
 
 append doc, member "toto"
 
 if doJobSetup(doc) then
   print doc
 end if

 set doc = 0
 
end


ça me l'imprime que sur 1 page et comme le texte est beaucoup trop long, tout le texte est réduit pour que la totalité soit sur la même page

y a t'il un paramètre que j'oublie ? ça devrait marcher normalement ?
ou c'est la version "lite" et il faut avoir la version full


merci d'avance,

MaRRocK

MaRRocK
à croire que personne ne se sert de PrintOMatic sad.gif
au moins j'ai de la chance le post est lu ! gourou.gif


MaRRocK, qui n'a toujours pas trouvé sa connerie, alors il doit se dire que ça doit être lui roi.gif
MaRRocK
bon en fait le rendu sur un acteur "texte" est merdique, on est obligé de le faire pour un acteur "champ" !
ce qui m'arrange pas du tout, car sur le "texte" j'avais un traitement de mise en forme et du coup, en faisant le transfert de contenu de l'un vers l'autre je perds cette mise en forme
sebastien.portebois
Salut

Si tu copies le member().text, normal que la mise en forme soit perdue puisque le texte ne copie... que le texte brut smile.gif

J'avais déjà posté des routines de conversion text>field, mais les revoilou wink.gif

un script d'animation écrit par Lionel Morin très efficace.

CODE
-- conversion #text->#field

-- COPYRIGHTS notice -------------------------------------------
-- From: "Lionel Morin" <Lionel.Morin@cned.fr>
-- Organization: CNED
-- Newsgroups: macromedia.general.france
-- Date: Wed, 28 Nov 2001 14:25:56 -0100


----------------------------------------------------------------
on ConvertirTextEnField
 -- Parcours tous les acteurs sélectionnés
 MaCast = the activecastlib
 l = the selection of castLib MaCast
 repeat with i in l
   if ilk(i) = #list then
     repeat with j=i[1] to i[2]
       AppelAction (member(j,MaCast), j, MaCast)
     end repeat
   else
     AppelAction (member(i,MaCast), i , MaCast)
   end if
 end repeat
end ConvertirTextEnField
----------------------------------------------------------------
on AppelAction LeMembre, LeMemberNum, LaCast
 -- Seulement les champs Text
 if member(LeMembre).type  <> #Text then return
 
 -- Récupère les données du champ Text
 Data = [#Texte:"", #Nom:"", #MEF:[], #Taille:0, #Alignement:""]
 Data.Texte = member(LeMembre).text
 Data.Nom = member(LeMembre).name
 Data.Taille = member(LeMembre).rect
 NbMots = member(LeMembre).word.count
 repeat with i = 1 to NbMots
   Data.MEF[i] = EpureListe(member(LeMembre).word[i].fontstyle)
 end repeat
 AL = EpureListe(member(LeMembre).alignment)
 -- Si le Texte était justifié, on met le Field calé à gauche
 if AL = "Full" then AL = "left"
 Data.Alignement = AL
 put data
 -- Efface le champ et le remplace par un Field
 member(LeMembre).erase()
 set LeNouveauField= new(#field, member(LeMemberNum,LaCast))
 
 -- Restore les données dans le Field
 member(LeNouveauField).text = Data.Texte
 member(LeNouveauField).name = Data.Nom
 the rect of member(LeNouveauField) = Data.Taille
 repeat with i = 1 to NbMots
   the fontstyle of word i of member(LeNouveauField) = Data.MEF[i]
 end repeat
 member(LeNouveauField).alignment = Data.Alignement
end
----------------------------------------------------------------
on EpureListe LaListe
 -- Transforme la liste envoyée en chaine sans # et sans []
 -- Exemple : Epureliste([#bold, #underline]) retourne "bold, underline"
 T = string(LaListe)
 Nb = T.char.count
 repeat with i = Nb down to 1
   if T.char[i] = "[" or T.char[i] = "]" or T.char[i] = "#" then delete
   t.char[i]
 end repeat
 return T
end



en fait le texte et foireux car PoM imprime l'image du texte (en 72dpi, beurk). Avec les champs il gère bien le trueType, et il imprime donc en vectoriel les acteurs champs.

bonne journée
séb


MaRRocK
merci beaucoup ! smile.gif
je vais voir ça cet aprem

QUOTE
en fait le texte et foireux car PoM imprime l'image du texte (en 72dpi, beurk). Avec les champs il gère bien le trueType, et il imprime donc en vectoriel les acteurs champs.


oui c'est ce que j'avais vu icon_biggrin.gif


MaRRocK, qui joue à font la police
MaRRocK
j'ai pas réussi à le faire fonctionner

je mets le script dans un script d'animation, et après je ne vois pas comment l'utiliser pour un acteur texte "toto" par l'action d'un "on mouseUp me"



MaRRocK
MaRRocK
Seb, si tu pouvais m'ader ça serait super smile.gif
je ne pige pas trop "the activecastlib" si c'est bien avec ça que l'on doit désigner mes champ à convertir

où une autre personne qui a utilisé ce script

un petit exemple ? smile.gif

merci d'avance

MaRRocK
sebastien.portebois
Salut

comme tu le vois la première méthode ne sert qu'à récupérer les acteurs actuellement sélectionnés dans une distribution pour les cnvertir.

Si tu veux faire cette conversion, oublie le premier gestionnaire, et appelle toi même la méthode
AppelAction(LeMembre, LeMembre.memberNum, LeMembre.castlibNum)


Bonne journée
séb

MaRRocK
je te remercie gourou.gif


MaRRocK
nero
salut,
est ce que le script de lionel morin, copie aussi les tableaux présents dans un champ texte?
merci
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2008 Invision Power Services, Inc.