_Application   app;   
  Presentations   presentations;   
  _Presentation   presentation;   
  Slides   slides;   
  _Slide   slide;   
  ShapeRange   shaperange;   
  Shapes   shapes;   
  Shape   shape;   
  TextFrame   textframe;   
  TextRange   textrange;   
  Font   font;   
  FillFormat   fillformat;   
  ColorFormat   colorformat;   
  ShadowFormat   shadow;   
    
  if(!app.CreateDispatch("Powerpoint.Application",   &e))     
  {   
  CString   str;   
  str.Format("CreateDispatch()   failed   w/err   0x%08lx",   e.m_sc),   
  AfxMessageBox(str,   MB_SETFOREGROUND);   
  return;   
  }   
  app.SetVisible(TRUE);   Presentations   presSet(app.GetPresentations());   
  _Presentation   pres(presSet.Add(TRUE));   
    
  Slides   slideSet(pres.GetSlides());   
  _Slide   slide1(slideSet.Add(1,   2));   
    
  //   Add   text   to   slide,   by   navigating   the   slide   as   follows:   
  //   slide1.shapes(#).TextFrame.TextRange.Text   
  {   
  Shapes   shapes(slide1.GetShapes());   
  Shape   shape(shapes.Item(COleVariant((long)1)));   
  TextFrame   textFrame(shape.GetTextFrame());   
  TextRange   textRange(textFrame.GetTextRange());   
  textRange.SetText("My   first   slide");   
  }   
  {   
  Shapes   shapes(slide1.GetShapes());   
  Shape   shape(shapes.Item(COleVariant((long)2)));   
  TextFrame   textFrame(shape.GetTextFrame());   
  TextRange   textRange(textFrame.GetTextRange());   
  textRange.SetText("Automating   PowerPoint   is   easy\r\n"   
  "Using   Visual   C++   is   powerful!我是中国人");   
  font   =   textrange.GetFont();   
  font.SetName("华文行楷");   //Set   the   font   name.   
  font.SetSize((float)48);   
  }   
  现在字体的大小、加粗,斜体属性都可以改,但就是字体的颜色改不了,还有,写的东西英文是华文行楷,汉语就不是,是默认的宋体,不知为什么!   请高手赐教!!
  

解决方案 »

  1.   

    哎,听说CSDN强人很多的嘛,我第一次发帖,应该高手露一下嘛
      

  2.   

    用powerpoint 2007不用设置字体颜色,原来是什么,就是什么
      

  3.   

    怎么能这么说呢,高手无处不在!^_^
     CFont * f;
     f = new CFont;
     f->CreateFont(12,                        // nHeight
       0,                         // nWidth
       0,                         // nEscapement
       0,                         // nOrientation
       FW_DONTCARE,                 // nWeight
       FALSE,                     // bItalic
       FALSE,                     // bUnderline
       0,                         // cStrikeOut
       ANSI_CHARSET,              // nCharSet
       OUT_DEFAULT_PRECIS,        // nOutPrecision
       CLIP_DEFAULT_PRECIS,       // nClipPrecision
       DEFAULT_QUALITY,           // nQuality
       DEFAULT_PITCH | FF_SWISS,  // nPitchAndFamily
       _T("宋体"));                 // lpszFac
      

  4.   

    得到你对象的指针,调用SetFont成员函数就可以了
      

  5.   

    ColorFormat m_clrFormat = font.GetColor();
    //colorFormat里面有一个设置颜色的函数,我忘了,假如是SetColor();你可以看看
    m_clrFormat.SetColor(RGB(255,255,255))