<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/152710</link>
    <title>MATLAB Central Newsreader - Matlab ActiveX command for PowerPoint Multiline Title</title>
    <description>Feed for thread: Matlab ActiveX command for PowerPoint Multiline Title</description>
    <language>en-us</language>
    <copyright>&amp;copy;1994-2012 by MathWorks, Inc.</copyright>
    <webmaster>webmaster@mathworks.com</webmaster>
    <generator>MATLAB Central Newsreader</generator>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <ttl>60</ttl>
    <image>
      <title>MathWorks</title>
      <url>http://www.mathworks.com/images/membrane_icon.gif</url>
    </image>
    <item>
      <pubDate>Wed, 18 Jul 2007 19:11:42 -0400</pubDate>
      <title>Matlab ActiveX command for PowerPoint Multiline Title</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/152710#383579</link>
      <author>Calves Stovall</author>
      <description>Does anyone know how to use activeX in Maltab so that you can write a multiline title text?&lt;br&gt;
&lt;br&gt;
Here's an excerpt of the code I'm using.&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;titletext=sprintf('LINE1\nline2');&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;writepath=pwd;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;clearppt='MC_default.ppt'&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;outfileppt='TitleTest.ppt'&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;clearppt = [writepath '&amp;#092;' clearppt];&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;outfileppt = [writepath '&amp;#092;' outfileppt];&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;% Start an ActiveX session with PowerPoint:&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;ppt = actxserver('PowerPoint.Application');&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;ppt.Visible = 1;      % Keep Application Visible&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;ppt.WindowState = 2;  % Minimize PowerPoint window to taskbar&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Open existing presentation:&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;op = invoke(ppt.Presentations,'Open',clearppt);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Get current number of slides:&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;slide_count = get(op.Slides,'Count');&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Add a new slide (with title object):&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;slide_count = int32(double(slide_count)+1);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;new_slide = invoke(op.Slides,'Add',slide_count,11);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;% Insert text into the title object:&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;new_slide.Shapes.Title.TextFrame.TextRange.Text=titletext;&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;% Save file as new:&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;invoke(op,'SaveAs',outfileppt,1);&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;% Close the presentation window:&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;invoke(op,'Close');&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;% Quit PowerPoint&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;invoke(ppt,'Quit');&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;% Close PowerPoint and terminate ActiveX:&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;delete(ppt);&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Unfortunatley the resulting title is:&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;LINE1 line2&lt;br&gt;
instead of:&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;LINE1&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;line2&lt;br&gt;
&lt;br&gt;
Any help would be greatly appreciated.&lt;br&gt;
&lt;br&gt;
Calves</description>
    </item>
    <item>
      <pubDate>Thu, 19 Jul 2007 05:51:24 -0400</pubDate>
      <title>Re: Matlab ActiveX command for PowerPoint Multiline Title</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/152710#383636</link>
      <author>Yair Altman</author>
      <description>&amp;gt; Does anyone know how to use activeX in Maltab so that&lt;br&gt;
&amp;gt; you can write a multiline title text?&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; Here's an excerpt of the code I'm using.&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt;   titletext=sprintf('LINE1\nline2');&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Microsoft Office uses char(13) to split multi-line strings. Matlab's sprintf() uses char(10) for '\n', which is the reason it didn't work for you. So, do this instead:&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;titletext = ['LINE1' char(13) 'line2'];&lt;br&gt;
&lt;br&gt;
You might wish to try out OfficeDoc (&lt;a href=&quot;http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=15192)&quot;&gt;http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=15192)&lt;/a&gt; in order to read/write/format PowerPoint and other MS Office documents without the hassle of low-level programming.&lt;br&gt;
&lt;br&gt;
Yair Altman&lt;br&gt;
&lt;a href=&quot;http://www.ymasoftware.com&quot;&gt;http://www.ymasoftware.com&lt;/a&gt;</description>
    </item>
    <item>
      <pubDate>Wed, 25 Jul 2007 23:32:18 -0400</pubDate>
      <title>Re: Matlab ActiveX command for PowerPoint Multiline Title</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/152710#384940</link>
      <author>Calves </author>
      <description>Thanks, worked great.&lt;br&gt;
&lt;br&gt;
Another question.  Can you tell me how to reference an already exisiting powerpoint slide in activeX so that I can update the title?&lt;br&gt;
&lt;br&gt;
Calves</description>
    </item>
    <item>
      <pubDate>Thu, 26 Jul 2007 04:58:13 -0400</pubDate>
      <title>Re: Matlab ActiveX command for PowerPoint Multiline Title</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/152710#384967</link>
      <author>Yair Altman</author>
      <description>&amp;gt; Can you tell me how to reference an already exisiting powerpoint slide in activeX?&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
slide = invoke(op.Slides,'Item',slideNumber);&lt;br&gt;
invoke(slide,'Select');&lt;br&gt;
&lt;br&gt;
Yair Altman&lt;br&gt;
&lt;a href=&quot;http://www.ymasoftware.com&quot;&gt;http://www.ymasoftware.com&lt;/a&gt;</description>
    </item>
    <item>
      <pubDate>Fri, 27 Jul 2007 00:55:45 -0400</pubDate>
      <title>Re: Matlab ActiveX command for PowerPoint Text Box Color</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/152710#385144</link>
      <author>Calves </author>
      <description>Thanks again.&lt;br&gt;
I have another one for you or anybody else out there that might be able to answer.  I can not get the correct font color for my text box in PowerPoint using ActiveX.&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text_box=invoke(new_slide.Shapes,'AddTextbox','msoTextOrientationHorizontal', 259.25, 20.75, 200, 20);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text_box.TextFrame.TextRange.Text='Hello';&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text_box.TextFrame.TextRange.Font.Size=8;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text_box.TextFrame.TextRange.ParagraphFormat.Alignment = 'ppAlignCenter';&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text_box.TextFrame.TextRange.Font.Bold = 'msoFalse';&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text_box.TextFrame.TextRange.Font.Color.RGB='255,255,0;&lt;br&gt;
&lt;br&gt;
When I examine the color attributes in PowerPoint it says the text RGB color is 230,242,38.&lt;br&gt;
&lt;br&gt;
I also tried...&lt;br&gt;
&lt;br&gt;
text_box.TextFrame.TextRange.Font.Color.RGB='(255,255,0)';&lt;br&gt;
&lt;br&gt;
and this gave me a text RGB color of 26,13,217.&lt;br&gt;
&lt;br&gt;
Obviously I'm doing something wrong, but I don't know what.&lt;br&gt;
&lt;br&gt;
Any help would be greatly appreciated.&lt;br&gt;
Thanks,&lt;br&gt;
Calves</description>
    </item>
    <item>
      <pubDate>Fri, 27 Jul 2007 15:01:44 -0400</pubDate>
      <title>Re: Matlab ActiveX command for PowerPoint Text Box Color</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/152710#385243</link>
      <author>Calves </author>
      <description>The RGB character string was being converted to an integer.  The integer was then being used as an index to all the RGB colors (256^3 or 0-&amp;gt;16777215).  Here's how I corrected my problem and was able to get the correct text color for my textbox in PowerPoint.&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text_box=invoke(new_slide.Shapes,'AddTextbox','msoTextOrientationHorizontal', 259.25, 20.75, 200, 20);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text_box.TextFrame.TextRange.Text='Hello';&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text_box.TextFrame.TextRange.Font.Size=8;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text_box.TextFrame.TextRange.ParagraphFormat.Alignment = 'ppAlignCenter';&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text_box.TextFrame.TextRange.Font.Bold = 'msoFalse';&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;%Convert RGB colors to an RGB color index&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;RGBcolor=[255,0,255]; RGBcolor=rem(RGBcolor,256);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;RGBindex=RGBcolor(1)+RGBcolor(2)*256+RGBcolor(3)*65536;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;text_box.TextFrame.TextRange.Font.Color.RGB=RGBindex;&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
I hope this helps someone else out there.&lt;br&gt;
Calves</description>
    </item>
    <item>
      <pubDate>Sat, 13 Mar 2010 10:19:08 -0500</pubDate>
      <title>Re: Matlab ActiveX command for PowerPoint Text Box Color</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/152710#726045</link>
      <author>Hiep </author>
      <description>Hi.&lt;br&gt;
&lt;br&gt;
How can I set the background color of the whole presentation to certain solid color like RGB(200,100,100). This may help, I think:&lt;br&gt;
ActivePresentation.SlideMaster.Background.Fill.PresetGradient _&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Style:=msoGradientHorizontal, Variant:=1, _&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;PresetGradientType:=msoGradientLateSunset&lt;br&gt;
&lt;br&gt;
Also, can you help me explain how to write VBA commands in Matlab. &lt;br&gt;
For eg, the following code from Developer help:&lt;br&gt;
With ActivePresentation.Slides(1)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FollowMasterBackground = False&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Background.Fill.PresetGradient Style:=msoGradientHorizontal, _&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Variant:=1, PresetGradientType:=msoGradientLateSunset&lt;br&gt;
End With&lt;br&gt;
&lt;br&gt;
Given op = invoke(ppt.Presentations,'Open',filespec,[],[],0).&lt;br&gt;
How can I write the corresponding commands for these VBA code in Matlab? &lt;br&gt;
I have tried:&lt;br&gt;
&amp;nbsp;&lt;br&gt;
invoke(op.Slides,'FollowMasterBackground',0);&lt;br&gt;
invoke(op.Slides.Background.Fill,'PresetGradient', 'msoGradientHorizontal',1,'msoGradientLateSunset');&lt;br&gt;
but it is not working.&lt;br&gt;
From my observation of others' codes, it seems that the command will have the form of &lt;br&gt;
invoke(method prefix,'method name','method args') as in invoke(op.Slides,'FollowMasterBackground',0);&lt;br&gt;
Is it correct?&lt;br&gt;
Another question: when should we use set/get/invoke? I am a little confused on this. &lt;br&gt;
Thank you in advance!</description>
    </item>
    <item>
      <pubDate>Sat, 13 Mar 2010 10:22:06 -0500</pubDate>
      <title>Re: Matlab ActiveX command for PowerPoint Text Box Color</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/152710#726046</link>
      <author>Hiep </author>
      <description>Hi.&lt;br&gt;
&lt;br&gt;
How can I set the background color of the whole presentation to certain solid color like RGB(200,100,100). This may help, I think:&lt;br&gt;
ActivePresentation.SlideMaster.Background.Fill.PresetGradient _&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Style:=msoGradientHorizontal, Variant:=1, _&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;PresetGradientType:=msoGradientLateSunset&lt;br&gt;
&lt;br&gt;
Also, can you help me explain how to write VBA commands in Matlab. &lt;br&gt;
For eg, the following code from Developer help:&lt;br&gt;
With ActivePresentation.Slides(1)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FollowMasterBackground = False&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.Background.Fill.PresetGradient Style:=msoGradientHorizontal, _&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Variant:=1, PresetGradientType:=msoGradientLateSunset&lt;br&gt;
End With&lt;br&gt;
&lt;br&gt;
Given op = invoke(ppt.Presentations,'Open',filespec,[],[],0).&lt;br&gt;
How can I write the corresponding commands for these VBA code in Matlab? &lt;br&gt;
I have tried:&lt;br&gt;
&amp;nbsp;&lt;br&gt;
invoke(op.Slides,'FollowMasterBackground',0);&lt;br&gt;
invoke(op.Slides.Background.Fill,'PresetGradient', 'msoGradientHorizontal',1,'msoGradientLateSunset');&lt;br&gt;
but it is not working.&lt;br&gt;
From my observation of others' codes, it seems that the command will have the form of &lt;br&gt;
invoke(method prefix,'method name','method args') as in invoke(op.Slides,'FollowMasterBackground',0);&lt;br&gt;
Is it correct?&lt;br&gt;
Another question: when should we use set/get/invoke? I am a little confused on this. &lt;br&gt;
Thank you in advance!</description>
    </item>
    <item>
      <pubDate>Wed, 22 Dec 2010 00:25:05 -0500</pubDate>
      <title>Re: Matlab ActiveX command for PowerPoint 2007</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/152710#806695</link>
      <author>William </author>
      <description>&quot;Calves&quot; wrote in message &amp;lt;f7lole$dhk$1@fred.mathworks.com&amp;gt;...&lt;br&gt;
&amp;gt; Does anyone know how to use activeX in Maltab so that you can write a multiline title text?&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Here's an excerpt of the code I'm using.&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;    titletext=sprintf('LINE1\nline2');&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;    writepath=pwd;&lt;br&gt;
&amp;gt;    clearppt='MC_default.ppt'&lt;br&gt;
&amp;gt;    outfileppt='TitleTest.ppt'&lt;br&gt;
&amp;gt;     &lt;br&gt;
&amp;gt;    clearppt = [writepath '&amp;#092;' clearppt];&lt;br&gt;
&amp;gt;    outfileppt = [writepath '&amp;#092;' outfileppt];&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;    % Start an ActiveX session with PowerPoint:&lt;br&gt;
&amp;gt;    ppt = actxserver('PowerPoint.Application');&lt;br&gt;
&amp;gt;    ppt.Visible = 1;      % Keep Application Visible&lt;br&gt;
&amp;gt;    ppt.WindowState = 2;  % Minimize PowerPoint window to taskbar&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;        % Open existing presentation:&lt;br&gt;
&amp;gt;        op = invoke(ppt.Presentations,'Open',clearppt);&lt;br&gt;
&amp;gt;   &lt;br&gt;
&amp;gt;        % Get current number of slides:&lt;br&gt;
&amp;gt;        slide_count = get(op.Slides,'Count');&lt;br&gt;
&amp;gt;     &lt;br&gt;
&amp;gt;        % Add a new slide (with title object):&lt;br&gt;
&amp;gt;        slide_count = int32(double(slide_count)+1);&lt;br&gt;
&amp;gt;        new_slide = invoke(op.Slides,'Add',slide_count,11);&lt;br&gt;
&amp;gt;     &lt;br&gt;
&amp;gt;        % Insert text into the title object:&lt;br&gt;
&amp;gt;        new_slide.Shapes.Title.TextFrame.TextRange.Text=titletext;&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;    % Save file as new:&lt;br&gt;
&amp;gt;    invoke(op,'SaveAs',outfileppt,1);&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;    % Close the presentation window:&lt;br&gt;
&amp;gt;    invoke(op,'Close');&lt;br&gt;
&amp;gt;    % Quit PowerPoint&lt;br&gt;
&amp;gt;    invoke(ppt,'Quit');&lt;br&gt;
&amp;gt;    % Close PowerPoint and terminate ActiveX:&lt;br&gt;
&amp;gt;    delete(ppt);&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Unfortunatley the resulting title is:&lt;br&gt;
&amp;gt;     LINE1 line2&lt;br&gt;
&amp;gt; instead of:&lt;br&gt;
&amp;gt;     LINE1&lt;br&gt;
&amp;gt;     line2&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Any help would be greatly appreciated.&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Calves&lt;br&gt;
&lt;br&gt;
This script worked well while I was using PPT 2003, (and Matlab 7.9.0) however after upgrading to PPT 2007 I get an error after op=..., see below.  Are the commands different in PPT 2007?&lt;br&gt;
&lt;br&gt;
&amp;gt;&amp;gt; op = invoke(ppt.Presentations,'Open',clearppt);&lt;br&gt;
??? Invoke Error, Dispatch Exception:&lt;br&gt;
Source: Microsoft Office PowerPoint 2007&lt;br&gt;
Description: PowerPoint could not open the file.&lt;br&gt;
Help File:&lt;br&gt;
Help Context ID: 0</description>
    </item>
    <item>
      <pubDate>Wed, 22 Dec 2010 02:52:04 -0500</pubDate>
      <title>Re: Matlab ActiveX command for PowerPoint Footer</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/152710#806710</link>
      <author>William </author>
      <description>&quot;Calves&quot; wrote in message &amp;lt;f7lole$dhk$1@fred.mathworks.com&amp;gt;...&lt;br&gt;
&amp;gt; Does anyone know how to use activeX in Maltab so that you can write a multiline title text?&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Here's an excerpt of the code I'm using.&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;    titletext=sprintf('LINE1\nline2');&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;    writepath=pwd;&lt;br&gt;
&amp;gt;    clearppt='MC_default.ppt'&lt;br&gt;
&amp;gt;    outfileppt='TitleTest.ppt'&lt;br&gt;
&amp;gt;     &lt;br&gt;
&amp;gt;    clearppt = [writepath '&amp;#092;' clearppt];&lt;br&gt;
&amp;gt;    outfileppt = [writepath '&amp;#092;' outfileppt];&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;    % Start an ActiveX session with PowerPoint:&lt;br&gt;
&amp;gt;    ppt = actxserver('PowerPoint.Application');&lt;br&gt;
&amp;gt;    ppt.Visible = 1;      % Keep Application Visible&lt;br&gt;
&amp;gt;    ppt.WindowState = 2;  % Minimize PowerPoint window to taskbar&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;        % Open existing presentation:&lt;br&gt;
&amp;gt;        op = invoke(ppt.Presentations,'Open',clearppt);&lt;br&gt;
&amp;gt;   &lt;br&gt;
&amp;gt;        % Get current number of slides:&lt;br&gt;
&amp;gt;        slide_count = get(op.Slides,'Count');&lt;br&gt;
&amp;gt;     &lt;br&gt;
&amp;gt;        % Add a new slide (with title object):&lt;br&gt;
&amp;gt;        slide_count = int32(double(slide_count)+1);&lt;br&gt;
&amp;gt;        new_slide = invoke(op.Slides,'Add',slide_count,11);&lt;br&gt;
&amp;gt;     &lt;br&gt;
&amp;gt;        % Insert text into the title object:&lt;br&gt;
&amp;gt;        new_slide.Shapes.Title.TextFrame.TextRange.Text=titletext;&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;    % Save file as new:&lt;br&gt;
&amp;gt;    invoke(op,'SaveAs',outfileppt,1);&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;    % Close the presentation window:&lt;br&gt;
&amp;gt;    invoke(op,'Close');&lt;br&gt;
&amp;gt;    % Quit PowerPoint&lt;br&gt;
&amp;gt;    invoke(ppt,'Quit');&lt;br&gt;
&amp;gt;    % Close PowerPoint and terminate ActiveX:&lt;br&gt;
&amp;gt;    delete(ppt);&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Unfortunatley the resulting title is:&lt;br&gt;
&amp;gt;     LINE1 line2&lt;br&gt;
&amp;gt; instead of:&lt;br&gt;
&amp;gt;     LINE1&lt;br&gt;
&amp;gt;     line2&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Any help would be greatly appreciated.&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; Calves&lt;br&gt;
&lt;br&gt;
Thanks to your clear example I see how to work with the &quot;Title&quot; in PPT.  Is there a similar way I can work with the &quot;Footer&quot;?</description>
    </item>
  </channel>
</rss>

