DefaultFrameTime
ApngOptions.DefaultFrameTime property
Obtiene o establece la duración del marco predeterminado.
public uint DefaultFrameTime { get; set; }
El valor de la propiedad
La duración predeterminada del cuadro, en milisegundos.
Ejemplos
El siguiente ejemplo muestra cómo exportar el formato de archivo apng APNG desde otro formato de varias páginas no animadas.
[C#]
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using (Image image = Image.Load("img4.tif")) {
// Configuración de la duración del cuadro por defecto
image.Save("img4.tif.500ms.png", new ApngOptions() { DefaultFrameTime = 500 }); // 500ms
image.Save("img4.tif.250ms.png", new ApngOptions() { DefaultFrameTime = 250 }); // 250ms
}
El siguiente ejemplo muestra cómo crear una imagen APNG a partir de otra imagen ráster de una sola página.
[C#]
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.FileFormats.Apng;
const int AnimationDuration = 1000; // 1 segundo
const int FrameDuration = 70; // 70ms
using (RasterImage sourceImage = (RasterImage)Image.Load("not_animated.png"))
{
ApngOptions createOptions = new ApngOptions
{
Source = new FileCreateSource("raster_animation.png", false),
DefaultFrameTime = (uint)FrameDuration,
ColorType = PngColorType.TruecolorWithAlpha,
};
using (ApngImage apngImage = (ApngImage)Image.Create(
createOptions,
sourceImage.Width,
sourceImage.Height))
{
// Es posible establecer el tiempo de cuadro predeterminado de la imagen allí: apngImage.DefaultFrameTime = (uint)FrameDuration;
int numOfFrames = AnimationDuration / FrameDuration;
int numOfFrames2 = numOfFrames / 2;
// Limpieza porque la imagen contiene un cuadro por defecto
apngImage.RemoveAllFrames();
// agrega el primer cuadro
apngImage.AddFrame(sourceImage);
// agregar marcos intermedios
for (int frameIndex = 1; frameIndex < numOfFrames - 1; ++frameIndex)
{
apngImage.AddFrame(sourceImage);
ApngFrame lastFrame = (ApngFrame)apngImage.Pages[apngImage.PageCount - 1];
float gamma = frameIndex >= numOfFrames2 ? numOfFrames - frameIndex - 1 : frameIndex;
lastFrame.AdjustGamma(gamma);
}
// agrega el último cuadro
apngImage.AddFrame(sourceImage);
apngImage.Save();
}
}
Ver también
- class ApngOptions
- espacio de nombres Aspose.Imaging.ImageOptions
- asamblea Aspose.Imaging