2

以下のコードを実行すると、形状に (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(); 
        }

質問: 明るい青以外の別の色またはさまざまな色を入手するにはどうすればよいですか?

4

1 に答える 1

4

ここでは、相互運用機能が RGB ではなく BGR として読み取るため、カラー RGB は BGR の形式で指定されます。

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();
       }
 }
于 2014-10-08T09:12:18.037 に答える