Modifier la police d'une annotation

Discussions about document viewing.
Post Reply
Greg
Posts: 17
Joined: Thu Oct 11, 2012 8:31 am

Modifier la police d'une annotation

Post by Greg » Thu Oct 11, 2012 4:28 pm

Bonjour.

Je poste dans ma langue natale car j'ai vu que Loic répondait en français.

Je teste actuellement GdPicture en ActiveX en Windev.

Je parviens aujourd'hui par code à afficher une image à l'utilisateur, il peut aussi ajouter des annotations de texte prédéfini dont il ne peut pas modifier le texte ansi que des annotaions images (logos)

Je ne programme pas en objet, en revanche j'appelle en windev les méthodes de mon champ active X comme par exemple :

AX_Viewer>>AddTextAnnotationInteractive("Texte de la mention.",OVEN_Couleur,"Arial",0,10,Vrai,OVEN_Couleur,0,1,0)

Ax_Viewer étant un champ Windev comportant l'activeX GdViewer.

Je souhaiterais donner la possibilité à mes utilisateurs de modifier la police, la taille et la couleur de la police des annotations texte déjà apposées. ESachant que je souhaite pas proposer à mes utilisateurs le gdAnnotationEditor.

Comment puis je faire ?

Merci par avance.

Cordialement.

Greg
Posts: 17
Joined: Thu Oct 11, 2012 8:31 am

Re: Modifier la police d'une annotation

Post by Greg » Fri Oct 12, 2012 2:22 pm

J'ai tentais celà :

test est un objet Automation dynamique
test = allouer un objet Automation "GdPicture9.AnnotationText"

test = AX_Viewer>>GetAnnotationFromIdx(FVEN_IdAnnotation) // FVEN_IdAnnotation étant l'Id de l'annotation en cours de sélection.
Info(test>>fontname)

Mais j'obtiens en éxécution une erreur "L'objet automation 'GdPicture9.AnnotationText' n'est pas installé sur votre système."

Merci de votre aide.

Greg
Posts: 17
Joined: Thu Oct 11, 2012 8:31 am

Re: Modifier la police d'une annotation

Post by Greg » Fri Oct 12, 2012 3:01 pm

Ayé me suis débrouillé :

annot est un objet Automation dynamique
annot = AX_Viewer>>GetAnnotationFromIdx(FVEN_IdAnnotation)
Info(annot>>fontname)

Greg
Posts: 17
Joined: Thu Oct 11, 2012 8:31 am

Re: Modifier la police d'une annotation

Post by Greg » Wed Oct 17, 2012 3:20 pm

Je parviens désormais à changer la taille de la police de l'annotation ainsi que la police en elle même. Par contre pas moyen de modifier la couleur.

annot>>Forecolor() plante systématiquement.

J'ai essayé

annot>>Forecolor(16414756)

annot>>Forecolor(250,120,36)

annot>>Forecolor(rvb(250,120,36))

annot>>Forecolor(AX_Viewer>>ARGBI(255,250,120,36))

Rien n'y fait.

La propriété n'est pas en lecture seule au moins ?

Merci de votre aide.

User avatar
Loïc
Site Admin
Posts: 5881
Joined: Tue Oct 17, 2006 10:48 pm
Location: France
Contact:

Re: Modifier la police d'une annotation

Post by Loïc » Wed Oct 17, 2012 8:17 pm

Hello,

ForeColor est un object Color du framework .NET. En COM il faut utiliser une autre approche consistant à utiliser un objet AnnotationManager.

Exemple:

Code: Select all

    Dim annotationManager As New AnnotationManager = GdViewer1.GetAnnotationManager()
    For i As Integer = 0 To annotationManager.GetAnnotationCount() - 1
       annotationManager.SetAnnotationPropertyValue(i, "Forecolor", annotationManager.ARGBI(255,250,120,36))
    Next
Cordialement,

Loïc Carrère

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest