Wie kann ich die Schriftfarbe ändern von einem TextRange-in PowerPoint von C#?
Erstellte ich eine PowerPoint-Präsentation mit C#:
PowerPoint.Application powerpointApplication;
PowerPoint.Presentation pptPresentation;
PowerPoint.Slide Slide;
//Create an instance of PowerPoint.
powerpointApplication = new PowerPoint.ApplicationClass();
//Create a PowerPoint presentation.
pptPresentation = powerpointApplication.Presentations.Add(
Microsoft.Office.Core.MsoTriState.msoTrue);
//Create empty slide
Slide = pptPresentation.Slides.Add(1, PowerPoint.PpSlideLayout.ppLayoutBlank);
TextRange objTextRng = objSlide.Shapes[1].TextFrame.TextRange;
objTextRng.Text = "Remote sensing calendar 1";
objTextRng.Font.Name = "Comic Sans MS";
objTextRng.Font.Size = 48;
//TODO: change color
//objTextRng.Font.Color
//Save presentation
pptPresentation.SaveAs( BasePath + "result\\2_example.ppt",
PowerPoint.PpSaveAsFileType.ppSaveAsDefault,
MsoTriState.msoTrue //TODO: что за параметр???
);
pptPresentation.Close();
Nun, wie kann ich die Schriftfarbe ändern für objTextRng
?
InformationsquelleAutor pesten | 2011-03-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dem folgenden code wird die Schriftfarbe auf rot:
Wenn Sie angeben möchten, eine andere Farbe, können Sie eine der anderen vordefinierte Farben, oder geben Sie Ihren eigenen RGB-Werte mit Hilfe der die
Color.FromArgb
Methode.So oder so, stellen Sie sicher, dass Sie rufen Sie die
ToArgb
Methode auf dieColor
Objekt, das Sie verwenden. DieRGB
Eigenschaft erfordert, dass Sie einen RGB-Farbwert angegeben werden.range.Font.Color.RGB = 0x0000FF;
-- ebenso, blau wärerange.Font.Color.RGB = 0xFF0000;
usw. (*: es wird tatsächlich RGB-format, aber es ist big-endian, d.h. die bytes gespeichert sind, von rechts nach Links statt von Links nach rechts.)InformationsquelleAutor Cody Gray
Verwenden Sie diese für PPTX 2007
beispielsweise
Color.RGB
zu rot erhalten Sie blauen ohne diese Funktion. 🙂InformationsquelleAutor VVX
Ich denke dieser MSDN-Seite erklären.
EDIT:
Aber dies nur erklären, wie es in VBScript. Sie können sehen, dass die
TextRange
Objekt eine EigenschaftFont
. Dies gibt denFont
Objekt beschreiben hier Diese Ressourcen zeigen Ihnen, dass Sie haben Zugang zu einem RGB-Eigenschaft. Sie können es wie Cody sagte Sie. Wenn du weitere Infos brauchst, finden Sie in den MSDN-Abschnitt ich einfach zeigen Sie.DropCap
eher als eineTextRange
Objekt, und der Beispielcode präsentiert sich in VB 6.0/VBScript, das ist nicht leicht zu vermitteln, um C#. Insbesondere gibt es keineRGB
Funktion in C#.Ich bin damit einverstanden, ich wollte nicht nur den link. Es ist manchmal nervig, so dass ich gerade kopierten code-Beispiel.
Aber wieder, das problem ist, dass der Beispielcode funktioniert nicht in C#, die als Frage gekennzeichnet werden. Es gibt keine
RGB
Funktion, die Sie haben, es zu tun, wie meine Antwort suggeriert (die bevorzugte Methode) oder importieren Sie dieMicrosoft.VisualBasic
- namespace zu verwenden, dieInformation.RGB
Funktion.Jungs: dieser link ist für Publisher 2010. Nicht das gleiche wie PowerPoint.
InformationsquelleAutor Philippe Lavoie
objTextRng.Font.Farbe.RGB = System.Zeichnung.ColorTranslator.ToOl(System.Zeichnung.Farbe.Blau);
InformationsquelleAutor mxrk0