C# & OpenXML: Fügen Sie ein Bild in eine excel-Dokument
Ich bin mit einer modifizierten version von diese code erstellt eine excel-Dokument, hinzufügen von Zellen und Stil-Zellen. Ich versuche, diesen code ändern, um auch in der Lage sein, um Bilder hinzuzufügen, die auf ein Blatt. Ich bin nirgends und es gibt wirklich nichts auf dem Netz, die helfen. Ich versuche zu Lesen, durch die OpenXML productivity tool diff. das ist irgendwie wenig hilfreich. Kann hier jemand mich in die richtige Richtung?
Dank.
InformationsquelleAutor Ian Herbert | 2011-04-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Schrieb ich etwas dazu hier im blog:
http://polymathprogrammer.com/2009/12/21/advanced-styling-in-excel-open-xml/
Beachten Sie, dass es ursprünglich geschrieben wurde, für die Open XML SDK 2.0 CTP-version, so hüten Sie sich vor dem ändern von NumberFormat-Klasse NumberingFormat Klasse (wenn das SDK 2.0 wurde abgeschlossen)
Wenn Sie isolieren möchten, um den code einfach das Bild einfügen, dann schauen Sie hier:
http://polymathprogrammer.com/2009/11/30/how-to-insert-an-image-in-excel-open-xml/
Die links funktionieren jetzt.
InformationsquelleAutor Vincent Tan
Hier ist ein link zu einem MSDN Beispiel-code, den Sie herunterladen können.
Gibt es auch Eric White ' s Beispiel und you-Tube-video
InformationsquelleAutor David Yates
Schaute ich auf die Antworten von Vincent Tan und David Yates. Da hat es mich Stunden der Kodierung die folgende einfache Voraussetzungen erfüllt sind, poste ich meine Lösung hier, so dass die nächste person kann etwas Zeit sparen.
Anforderungen:
Nutzung
Code:
Tut mir Leid, ich glaube nicht, dass ich verstehe, was du meinst. Was ist die Bedeutung der Verwendung von System.Zeichnung?
Ich Tat dies in .NET Core und ich haben zum System hinzufügen.Zeichnung.Gemeinsame nuget-Paket-System.Zeichnung Bibliothek
Ah, jetzt hab ich es bekommen. Könnte es möglich sein, zu vermeiden System.Zeichnung durch manuelles stellen den Typ, die Höhe und Breite des Bildes. Das ist der code müsste umgeschrieben werden: Bitmap bm = new Bitmap(imageMemStream); var imagePart = drawingsPart.AddImagePart(GetImagePartTypeByBitmap(bm)); imagePart.FeedData(imageStream); A. Extents extents = new A. Blöcke(); var extentsCx = bm.Breite * (long)(914400 / bm.HorizontalResolution); var extentsCy = bm.Höhe * (long)(914400 / bm.VerticalResolution); bm.Dispose();
GetImagePartTypeByBitmap(Bitmap-Bild) entfernt werden konnte, dann.
InformationsquelleAutor Benjamin Krupp