2017-05-04 3 views
1

Ich muss Bild in Word-Dokument eingekreist machen. Ich Zugabe zu doc ​​es wie folgt aus:Wie man ein Bild einkreist?

Shape pic = wordDoc.Shapes.AddPicture(imageFile, ref missing, ref missing, 50, 0, 125, 125); 

Wenn Sie rechts auf das Bild klicken in Word2016, können Sie eine der Voreinstellungen auswählen, wie Rechteck mit abgerundeten Ecken, dimond oder etwas anderes. Ich verstehe, dass das Presets, die aus einer Reihe von Eigenschaften besteht, war jedoch nicht in der Lage, in Word2016 zu finden, wie nur Form auswählen, vielleicht würde es einen Hinweis geben, wie Problem zu lösen.

Versuchte:

pic.ShapeStyle = Microsoft.Office.Core.MsoShapeStyleIndex.msoShapeStylePreset2; 

Aber es scheint, überhaupt keine Wirkung haben, und auch wenn ich einige voreingestellte finden, scheint diese Lösung nicht zuverlässig (sicher, dass auf verschiedenen Workstations Presets verschieden sein können)

+0

Wie kann ich ein Bild zuschneiden zu einem Kreis? http://Stackoverflow.com/a/26760608/3060520 –

+0

@ user3060520, ich hoffe, es mit Word-Lib zu tun, transformieren Bilddatei vor dem Einfügen ein wenig Overhead. – 2oppin

Antwort

0

Dank @ m4o_tim konnte ich Problem lösen, ging mit 1. Vorschlag:

eine Bildfüllung verwenden - eine Form mit einem Autoshape von msoOval hinzufügen und dann die Eigenschaft Fill.UserPicture Datei, die Sie

So Lösung ist auf das Bild verwenden möchten:

Shape shp = wordDoc.Shapes.AddShape((int) MsoAutoShapeType.msoShapeOval, 80, 40, 125, 125); 
shp.Fill.UserPicture(imageFileNamePath); 
1

Es gibt zwei Möglichkeiten, dies in Word zu tun.

  1. Verwenden Sie eine Bildfüllung - fügen Sie eine Form mit einem AutoShapeType von msoOval hinzu, und legen Sie dann die Fill.UserPicture-Eigenschaft auf die Bilddatei fest, die Sie verwenden möchten.
  2. Ein Bild zu einer Form zuschneiden - fügen Sie ein Bild hinzu und ändern Sie den AutoShapeType zu msoShapeOval.