在 Power Point 互操作中用颜色填充形状

use*_*182 3 c# add-in visual-studio-addins visual-studio-2013 powerpoint-2013

当我运行下面的代码时,我想在我的形状中填充 (255,168,0) 颜色,它会给我一个浅一点的蓝色。

   private void Shape_fill_Click(object sender, RibbonControlEventArgs e)
    {
        Color_palette.Visible = true;
         type = "Fill";           
    }

    private void btn_Orange_Click(object sender, RibbonControlEventArgs e)
    {
        if(type=="Fill")
        { 
        PowerPoint.Application ppApp = Globals.ThisAddIn.Application;
        PowerPoint.ShapeRange ppshr = ppApp.ActiveWindow.Selection.ShapeRange;
        ppshr.Fill.ForeColor.RGB = System.Drawing.Color.FromArgb(255,168,0).ToArgb(); 
        }
Run Code Online (Sandbox Code Playgroud)

问题:除了浅蓝色之外,如何获得不同或变化的颜色?

use*_*182 5

这里颜色 RGB 以 BGR 格式给出,因为互操作将其读取为 BGR 而不是 RGB

private void btn_Orange_Click(object sender, RibbonControlEventArgs e)
{
    if(type=="Fill")
    {  
       PowerPoint.Application ppApp = Globals.ThisAddIn.Application;
            PowerPoint.ShapeRange ppshr = ppApp.ActiveWindow.Selection.ShapeRange;
            // here the color RGB is given in format of BGR because interop reads it as BGR and not RGB

            ppshr.Fill.ForeColor.RGB =System.Drawing.Color.FromArgb(0,168,255).ToArgb();
       }
 }
Run Code Online (Sandbox Code Playgroud)