/// <summary> /// Creates a new <see cref="MorphGradientFill"/> instance. /// </summary> /// <param name="fillStyleType">Fill style type.</param> /// <param name="startGradientMatrix">Start gradient matrix.</param> /// <param name="endGradientMatrix">End gradient matrix.</param> /// <param name="gradients">Gradients.</param> public MorphGradientFill(byte fillStyleType, Matrix startGradientMatrix, Matrix endGradientMatrix, MorphGradientCollection gradients) { this.fillStyleType = fillStyleType; this.startGradientMatrix = startGradientMatrix; this.endGradientMatrix = endGradientMatrix; this.gradient = gradients; }
/// <summary> /// Reads the data. /// </summary> /// <param name="binaryReader">Binary reader.</param> public void ReadData(BufferedBinaryReader binaryReader) { fillStyleType = binaryReader.ReadByte(); startColor = null; endColor = null; if (fillStyleType == (byte)MorphFillStyleType.SolidFill) { startColor = new RGBA(); startColor.ReadData(binaryReader); endColor = new RGBA(); endColor.ReadData(binaryReader); } startGradientMatrix = null; endGradientMatrix = null; MorphGradientCollection gradient = null; if (fillStyleType == (byte)MorphFillStyleType.LinearGradientFill || fillStyleType == (byte)MorphFillStyleType.RadialGradientFill) { startGradientMatrix = new Matrix(); startGradientMatrix.ReadData(binaryReader); endGradientMatrix = new Matrix(); endGradientMatrix.ReadData(binaryReader); gradient = new MorphGradientCollection(); gradient.ReadData(binaryReader); } bitmapId = 0; startBitmapMatrix = null; endBitmapMatrix = null; if (fillStyleType == (byte)MorphFillStyleType.RepeatingBitmap || fillStyleType == (byte)MorphFillStyleType.ClippedBitmapFill || fillStyleType == (byte)MorphFillStyleType.NonSmoothedClippedBitmap || fillStyleType == (byte)MorphFillStyleType.NonSmoothedRepeatingBitmap) { bitmapId = binaryReader.ReadUInt16(); startBitmapMatrix = new Matrix(); startBitmapMatrix.ReadData(binaryReader); endBitmapMatrix = new Matrix(); endBitmapMatrix.ReadData(binaryReader); } }
/// <summary> /// Creates a new <see cref="MorphGradientFill"/> instance. /// </summary> /// <param name="fillStyleType">Fill style type.</param> /// <param name="startGradientMatrix">Start gradient matrix.</param> /// <param name="endGradientMatrix">End gradient matrix.</param> /// <param name="gradients">Gradients.</param> public MorphGradientFill(byte fillStyleType, Matrix startGradientMatrix, Matrix endGradientMatrix, MorphGradientCollection gradients) { this.fillStyleType = fillStyleType; this.startGradientMatrix = startGradientMatrix; this.endGradientMatrix = endGradientMatrix; this.gradient = gradients; }
/// <summary> /// Reads the data. /// </summary> /// <param name="binaryReader">Binary reader.</param> public void ReadData(BufferedBinaryReader binaryReader) { fillStyleType = binaryReader.ReadByte(); startColor = null; endColor = null; if (fillStyleType == (byte)MorphFillStyleType.SolidFill) { startColor = new RGBA(); startColor.ReadData(binaryReader); endColor = new RGBA(); endColor.ReadData(binaryReader); } startGradientMatrix = null; endGradientMatrix = null; MorphGradientCollection gradient = null; if (fillStyleType == (byte)MorphFillStyleType.LinearGradientFill || fillStyleType == (byte)MorphFillStyleType.RadialGradientFill) { startGradientMatrix = new Matrix(); startGradientMatrix.ReadData(binaryReader); endGradientMatrix = new Matrix(); endGradientMatrix.ReadData(binaryReader); gradient = new MorphGradientCollection(); gradient.ReadData(binaryReader); } bitmapId = 0; startBitmapMatrix = null; endBitmapMatrix = null; if (fillStyleType == (byte)MorphFillStyleType.RepeatingBitmap || fillStyleType == (byte)MorphFillStyleType.ClippedBitmapFill || fillStyleType == (byte)MorphFillStyleType.NonSmoothedClippedBitmap || fillStyleType == (byte)MorphFillStyleType.NonSmoothedRepeatingBitmap) { bitmapId = binaryReader.ReadUInt16(); startBitmapMatrix = new Matrix(); startBitmapMatrix.ReadData(binaryReader); endBitmapMatrix = new Matrix(); endBitmapMatrix.ReadData(binaryReader); } }