7

C# を使用して PowerPoint プレゼンテーションを作成しました。

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();

では、フォントの色を変更するにはどうすればよいobjTextRngですか?

4

4 に答える 4

7

次のコードは、フォントの色を赤に設定します。

objTextRng.Font.Color.RGB = Color.Red.ToArgb();

別の色を指定する場合は、他の定義済みの色のいずれかを使用するか、Color.FromArgbメソッドを使用して独自の RGB 値を指定できます。

いずれにしても、使用するオブジェクトでToArgbメソッドを呼び出すようにしてください。ColorこのRGBプロパティには、RGB カラー値を指定する必要があります。

于 2011-03-09T14:27:40.553 に答える
5

これを PPTX 2007 に使用します

    private int BGR(Color color)
    {
        // PowerPoint's color codes seem to be reversed (i.e., BGR) not RGB
        //      0x0000FF    produces RED not BLUE
        //      0xFF0000    produces BLUE not RED
        // so we have to produce the color "in reverse"

        int iColor = color.R + 0xFF * color.G + 0xFFFF * color.B;

        return iColor;
    }

例えば

    shape.TextFrame.TextRange.Font.Color.RGB = BGR(Color.Red);  
于 2012-01-03T22:54:29.230 に答える
0

このMSDNページで説明されていると思います。

編集: しかし、これはVBScriptでそれを行う方法を説明するだけです. TextRangeオブジェクトにプロパティがあることがわかりますFont。これにより、ここFontに記述されているオブジェクトが返されます。これらのリソースは、RGB プロパティにアクセスできることを示しています。コーディが言ったように設定できます。さらに詳しい情報が必要な場合は、MSDN セクションを参照してください。

于 2011-03-09T14:33:50.040 に答える
0

objTextRng.Font.Color.RGB = System.Drawing.ColorTranslator.ToOl(System.Drawing.Color.Blue);

于 2013-09-25T20:40:27.767 に答える