2009-06-17 5 views
3

Ich habe schon eine ganze Weile mit diesem Problem umzugehen: Unsere Unternehmen entwickeln Add-In für Word/Excel/ppt (für 2003 und 2007-Versionen)Drag Drop HTML-Tabelle in Powerpoint 2007

Eine der Optionen Unser Addins-Angebot besteht darin, eine Tabelle aus dem Add-In in die Anwendung zu ziehen.

Dieses auf 3 verschiedene Arten implementiert:

  1. Excel -> wir schaffen es als DataFormats.text
  2. Word eine Registerkarte delimeted Zeichenfolge und Drag & Drop -> wir eine RTF-Tabelle zu erstellen, und es als DataFormats.rtf
  3. PPT Drag & Drop -> wir erstellen eine HTML-Tabelle, und Drag & Drop als DataFormats.html

Alles funktioniert großartig sowohl in der 2003 & 2007, bis auf den Powerpoint 2007, der keine HTML-Unterstützung zu unterstützen scheint (im Gegensatz zu Powerpoint 2003, der großartig funktioniert). Wir haben alles versucht, aber wir beginnen zu verzweifeln.

Wer weiß, wie PowerPoint 2007 das Löschen von HTML in die Präsentation zulässt?

Antwort

1

Es könnte ein paar Jahre zu spät sein, aber immer noch eine Antwort ist immer gut.

Ich tat das auch. Sie sollten Ihre HTML zu JPEG

WebsiteToImage websiteToImage = new WebsiteToImage(temporaryFilePath, @"C:\image.bmp"); 
websiteToImage.Generate(); 
slide.Shapes.AddPicture(@"C:\image.bmp", Microsoft.Office.Core.MsoTriState.msoTrue, Microsoft.Office.Core.MsoTriState.msoTrue, oldshapeleft, oldshapetop, oldshapewidth, oldshapeheight); 

Quelle gefunden konvertieren: Convert webpage to image from ASP.NET

+0

Ziemlich clever, aber dies bedeutet, dass der Benutzer auch nicht in der Lage sein, um die Tabelle zu ändern, Ändern der Größe, den Text machen kann schrecklich aussehen – Nissim

+0

Eine andere mögliche Lösung, die ich später verwendete, war: Sie kopieren die Tabelle in Excel, es wird den HTML-Code mit Paste Special in Excel konvertieren, und mit C# Sie 'sheet.Range (cellmapp) .PasteSpecial();' und dann 'sheet.UsedRange.Copy (Missing.Value);', kopieren Sie die Einfügetabelle und gehen Sie zu PowerPoint 'ppApp.ActiveWindow.View.Paste();' und es wird eingefügt. Nun ist es ein hässliches Format, aber Sie können jetzt die eingefügte Tabelle in Powerpoint durchlaufen und eine neue REAL-Tabelle in Powerpoint erstellen, die besser aussieht. Dies beseitigt, dass, wenn die Tabelle mehrere Zeilen geht, das Bild nicht existiert, sondern die Tabelle – mike27015

+0

'objTable.Cell (incrementer, l) .Shape.TextFrame.TextRange.Text = pptshape.Table.Cell (k, l) .Shape .TextFrame.TextRange.Text; 'Sie fügen die alte Tabelle in die neue ein. 'objTable.Cell (inkrementieren, l) .Shape.TextFrame.TextRange.Font.Size = fontsize;' und mit diesem können Sie die Größe Ihres Textes neu definieren und Sie müssen nicht mehr die Größe ändern. Jetzt können Sie auch die Menge Ihrer neuen Tabelle in PPT definieren 'objTable = presentation.Slides [slide.SlideIndex] .Shapes.AddTable (amountrowsshown, pptshape.Table.Columns.Count, topsize, letsize, slide.Master.Width-widesize , slide.Master.Height- heightize) .Table; ' – mike27015