AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Word / OLE: Grafik einbinden

Ein Thema von FBrust · begonnen am 15. Aug 2006 · letzter Beitrag vom 14. Jun 2007
Antwort Antwort
Benutzerbild von FBrust
FBrust

Registriert seit: 4. Okt 2002
Ort: Saarbrücken
654 Beiträge
 
Delphi 10.4 Sydney
 
#1

Word / OLE: Grafik einbinden

  Alt 15. Aug 2006, 17:04
Hallo,

ich möchte in ein existierendes Word-Dokument an einer bestimmten Position eine Grafik (JPG-Datei) einbinden. Den Dateinamen (inkl. Pfad) entnehme ich aus meiner Datenbank.

Allerdings sind mir die OLE-Befehle dazu vollkommen schleierhaft, die ganzen Beispiele, die ich bisher dazu gefunden habe, zeigen leider nur, wie man Text einfügt und formatiert, leider gibt es nichts zum Thema Grafiken.

Ich hab mit dem Makrorekorder von Word mal eins aufgezeichnet (damit ich wenigstens mal die Befehle habe, um sie nachher in Delphi zu verwenden), aber an der entscheidenden Stelle kann ich die Grafik nicht mehr markieren, wenn ebendieser Rekorder läuft, so dass das Makro unvollständig ist.

Hier das Makro:


Selection.InlineShapes.AddPicture FileName:= _
"C:\Programme\Test\Logos\Logo1.jpg", LinkToFile:=False, SaveWithDocument:= True
--->An dieser Stelle ist die Grafik zwar eingefügt, aber nicht ausgewählt, daher schlägt die nächste Anweisung fehl:
Selection.InlineShapes(1).ConvertToShape.Select
Selection.ShapeRange.IncrementLeft 439.85
Selection.ShapeRange.IncrementTop 34.85
Selection.ShapeRange.ScaleWidth 1.39, msoFalse, msoScaleFromBottomRight
Selection.ShapeRange.ScaleHeight 1.39, msoFalse, msoScaleFromTopLeft

Hat evtl. jemand eine Idee, wie die Grafik einbinde und verschiebe bzw. die Grafik per Makro auswählen kann oder kennt vielleicht sogar die entsprechenden Delphi-Befehle?


Gruß
Frank
"Ich habe Dinge gesehen, die ihr Menschen niemals glauben würdet. Gigantische Schiffe, die brannten, draußen vor der Schulter des Orion" - Roy Batty
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

Re: Word / OLE: Grafik einbinden

  Alt 15. Aug 2006, 17:19
Ungetestet, aber die Methode AddPicture gibt ein Objekt zurück,
mit dem man weiterarbeiten kann/sollte.
Delphi-Quellcode:
var
  myshape:OleVariant;

myshape := Selection.InlineShapes.AddPicture( FileName:= 'C:\Programme\Test\Logos\Logo1.jpg', LinkToFile:=False, SaveWithDocument:= True);
myshape.Select;
myshape.AlternativeText := 'mein neues Bildchen';
myshape.width := ...
myshape.Height := ...
myshape.ScaleHeight := 0.5;
Andreas
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Word / OLE: Grafik einbinden

  Alt 15. Aug 2006, 17:47
So sollte es gehen...

Delphi-Quellcode:
  Word:=CreateOleObject('word.application');
  Word.Visible:=true;
  Word.Documents.Add(EmptyParam, EmptyParam, EmptyParam, EmptyParam);
  Picture:=Word.Selection.InlineShapes.AddPicture(
    FileName:='Bild.jpg',
    LinkToFile:=False, SaveWithDocument:= true
  );
  Picture.ConvertToShape.Select;
  Word.Selection.ShapeRange.WrapFormat.Type:= 3;
  Word.Selection.ShapeRange.IncrementLeft(126.35);
  Word.Selection.ShapeRange.IncrementTop(0.35);
Gruss
Thorsten
  Mit Zitat antworten Zitat
AndiS75

Registriert seit: 25. Nov 2005
42 Beiträge
 
#4

Re: Word / OLE: Grafik einbinden

  Alt 14. Jun 2007, 15:01
Hallo,

will auch aus einer DB Bilder in ein Worddokument laden. Dies klappt auch, aber leider läd es alle fünf Bilder übereinander.

Ich möchte aber, dass die Bilder alle nach der Reihe untereinander kommen und mittig ausgerichtet sind.



Delphi-Quellcode:

 while not ADOFotoSELECT.Eof do
  begin
    word.ActiveDocument.Shapes.AddPicture(ADOFotoSELECT.FieldValues['pfad'], True, True,
                                          EmptyParam,EmptyParam,250, 50);

    ADOFotoSELECT.Next;
  end;

Danke
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz