RawFrame
Shape.RawFrame-Eigenschaft
Gibt die Eigenschaften des Rohformatrrahmens zurück oder setzt sie. Lese-/schreibbar IShapeFrame
.
public IShapeFrame RawFrame { get; set; }
Beispiele
Code, der versucht, einen undefinierten Rahmen auf IShape.Frame zuzuweisen, macht im allgemeinen Fall keinen Sinn (insbesondere wenn die übergeordnete GroupShape mehrfach in andere GroupShape-n verschachtelt ist). Zum Beispiel:
IShape shape = ...;
shape.Frame = new ShapeFrame(float.NaN, float.NaN, float.NaN, float.NaN, NullableBool.NotDefined, NullableBool.NotDefined, float.NaN);
oder
slide.Shapes.AddAutoShape(ShapeType.RoundCornerRectangle, float.NaN, float.NaN, float.NaN, float.NaN);
Ein solcher Code kann zu unklaren Situationen führen. Daher wurden Einschränkungen für die Verwendung undefinierter Werte für IShape.Frame hinzugefügt. Die Werte für x, y, width, height, flipH, flipV und rotationAngle müssen definiert sein (nicht float.NaN oder NullableBool.NotDefined). Der obige Beispielfragment gibt jetzt eine ArgumentException aus. Dies gilt für folgende Anwendungsfälle:
IShape shape = ...;
shape.Frame = ...; // kann nicht undefiniert sein
IShapeCollection shapes = ...;
// x, y, width, height Parameter können nicht float.NaN sein:
{
shapes.AddAudioFrameCD(...);
shapes.AddAudioFrameEmbedded(...);
shapes.AddAudioFrameLinked(...);
shapes.AddAutoShape(...);
shapes.AddChart(...);
shapes.AddConnector(...);
shapes.AddOleObjectFrame(...);
shapes.AddPictureFrame(...);
shapes.AddSmartArt(...);
shapes.AddTable(...);
shapes.AddVideoFrame(...);
shapes.InsertAudioFrameEmbedded(...);
shapes.InsertAudioFrameLinked(...);
shapes.InsertAutoShape(...);
shapes.InsertChart(...);
shapes.InsertConnector(...);
shapes.InsertOleObjectFrame(...);
shapes.InsertPictureFrame(...);
shapes.InsertTable(...);
shapes.InsertVideoFrame(...);
}
Aber die Eigenschaften des IShape.RawFrame-Rahmens können undefiniert sein. Dies macht Sinn, wenn die Form mit einem Platzhalter verknüpft ist. Dann werden die undefinierten Werte des Formatrrahmens vom übergeordneten Platzhalter überschrieben. Wenn es keinen übergeordneten Platzhalter für diese Form gibt, verwendet die Form Standardwerte, wenn sie den effektiven Rahmen basierend auf ihrem IShape.RawFrame bewertet. Die Standardwerte sind 0 und NullableBool.False für x, y, width, height, flipH, flipV und rotationAngle. Zum Beispiel:
IShape shape = ...; // Form ist mit Platzhalter verknüpft
shape.RawFrame = new ShapeFrame(float.NaN, float.NaN, 100, float.NaN, NullableBool.NotDefined, NullableBool.NotDefined, 0); // jetzt erbt die Form x, y, height, flipH, flipV Werte vom Platzhalter und überschreibt width=100 und rotationAngle=0.
Siehe auch
- Schnittstelle IShapeFrame
- Klasse Shape
- Namensraum Aspose.Slides
- Assembly Aspose.Slides