RawFrame
Propiedad IShape.RawFrame
Devuelve o establece las propiedades del marco de forma en bruto. Lectura/escritura IShapeFrame
.
public IShapeFrame RawFrame { get; set; }
Ejemplos
El código que intenta asignar un marco indefinido a IShape.Frame no tiene sentido en el caso general (particularmente en el caso cuando el Grupo Padre GroupShape está múltiples anidado en otros GroupShape-s). Por ejemplo:
IShape shape = ...;
shape.Frame = new ShapeFrame(float.NaN, float.NaN, float.NaN, float.NaN, NullableBool.NotDefined, NullableBool.NotDefined, float.NaN);
o
slide.Shapes.AddAutoShape(ShapeType.RoundCornerRectangle, float.NaN, float.NaN, float.NaN, float.NaN);
Tal código puede llevar a situaciones confusas. Por lo tanto, se han añadido restricciones para usar valores indefinidos para IShape.Frame. Los valores de x, y, ancho, alto, flipH, flipV y rotationAngle deben estar definidos (no float.NaN o NullableBool.NotDefined). El código de ejemplo anterior ahora lanza una excepción ArgumentException. Esto se aplica a estos casos de uso:
IShape shape = ...;
shape.Frame = ...; // no puede ser indefinido
IShapeCollection shapes = ...;
// los parámetros x, y, ancho, alto no pueden ser float.NaN:
{
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(...);
}
Pero las propiedades del marco IShape.RawFrame pueden ser indefinidas. Esto tiene sentido cuando la forma está vinculada a un marcador de posición. Entonces, los valores del marco de forma indefinidos se sobrescriben desde la forma del marcador de posición padre. Si no hay una forma de marcador de posición padre para esa forma, entonces esa forma utiliza valores predeterminados cuando evalúa el marco efectivo basado en su IShape.RawFrame. Los valores predeterminados son 0 y NullableBool.False para x, y, ancho, alto, flipH, flipV y rotationAngle. Por ejemplo:
IShape shape = ...; // la forma está vinculada a un marcador de posición
shape.RawFrame = new ShapeFrame(float.NaN, float.NaN, 100, float.NaN, NullableBool.NotDefined, NullableBool.NotDefined, 0); // ahora la forma hereda los valores x, y, alto, flipH, flipV del marcador de posición y sobrescribe ancho=100 y rotationAngle=0.
Ver También
- interfaz IShapeFrame
- interfaz IShape
- espacio de nombres Aspose.Slides
- ensamblaje Aspose.Slides