7
votes

Comment puis-je modifier la couleur de la police d'un Textrange dans PowerPoint de C #?

J'ai créé une présentation PowerPoint à l'aide de C #: xxx

maintenant, comment puis-je modifier la couleur de police pour objtextrng ?


0 commentaires

4 Réponses :


7
votes

Le code suivant définira la couleur de police en rouge: xxx

Si vous souhaitez spécifier une couleur différente, vous pouvez utiliser l'un des autres ou spécifiez vos propres valeurs RVB à l'aide de couleur.fromargbb méthode .

de toute façon, assurez-vous d'appeler le toargb méthode sur la couleur Objet que vous utilisez. La propriété rgb nécessite une valeur de couleur RVB.


1 commentaires

En fait, cela le fixe au bleu, malgré le nom * de cette propriété PowerPoint interprète les couleurs du format BGR. Le moyen le plus simple (le moins élégant) de définir la couleur de police en rouge est juste pour spécifier la couleur dans HEX (inverser les octets R et B): plage.font.color.rgb = 0x0000FF; - - De même, Blue serait gamme.font.color.rgb = 0xFF0000; , etc. (*: it est réellement le format RVB, mais c'est grand Endian, ce qui signifie que les octets sont stockés à droite à gauche au lieu de gauche à droite.)



0
votes

Je pense Cette page MSDN Expliquez-la.

EDIT: Mais cela n'explique que comment le faire dans VBScript. Vous pouvez voir que l'objet textrange a une propriété polices . Ceci renvoie la police Object décrit ici ces Les ressources vous montrent que vous avez accès à une propriété RVB. Vous pouvez le définir comme Cody vous l'a dit. Si vous avez besoin d'informations supplémentaires, reportez-vous à la section MSDN que je viens de vous pointer.


4 commentaires

Vous pouvez certainement glan l'explication de cette page, mais il parle d'un dropcap plutôt que d'un objet Textrange , et le code exemple est présenté dans VB 6.0 / VBScript, qui n'est pas facilement traduisible en C #. En particulier, il n'y a pas de fonction rgb dans C #.


Je suis d'accord, je ne voulais tout simplement pas mettre seul le lien. C'est parfois ennuyeux, alors je viens de copier l'exemple de code.


Encore une fois, le problème est que l'échantillon de code ne fonctionnera pas dans c # , comme la question est étiquetée. Il n'y a pas de fonction rgb , vous devez le faire comme ma réponse suggère (quelle est la manière préférée) ou importer le pages de noms Microsoft.visalbasic Microsoft.VisualBasic pour utiliser les informations . RVB fonction.


@YOU GUYS: Ce lien est pour Publisher 2010. Pas la même chose que PowerPoint.



5
votes

Utilisez ceci pour PPTX 2007

    shape.TextFrame.TextRange.Font.Color.RGB = BGR(Color.Red);  


1 commentaires

Cela semble être toujours le cas dans PowerPoint 2013 (je suppose que c'est le même format). Un peu stupide que lorsque vous définissez couleur.rgb en rouge, vous obtenez bleu sans cette fonction. :)



0
votes

objtextrng.font.color.rgb = système.drawing.colortranslator.tool (système.drawing.color.blue);


0 commentaires