Class ApngImage
名称: Aspose.Imaging.FileFormats.Apng アセンション: Aspose.Imaging.dll (25.4.0)
API for Animated PNG (Animated Portable Network Graphics) 画像ファイルフォーマットは、開発者が統合しようとする多様なソリューションです。アプリケーションにアニメ化されたコンテンツ. この API は幅広いフレーム設定を制御し、ユーザーがフレーム特性を定義できるようにする。パラメーター、ループ期間およびPNGファイル設定を含む。機能豊富なツールで、簡単にディスプレイを管理し、最適化できます。APNG画像、輸入および輸出画像、ダイナミックおよびアプリケーションのインタラクティブな要素
[JsonObject(MemberSerialization.OptIn)]
public sealed class ApngImage : RasterCachedMultipageImage, IDisposable, IObjectWithBounds, IRasterImageArgb32PixelLoader, IRasterImageRawDataLoader, IHasXmpData, IHasMetadata, IMultipageImageExt, IMultipageImage
Inheritance
object ← DisposableObject ← DataStreamSupporter ← Image ← RasterImage ← RasterCachedImage ← RasterCachedMultipageImage ← ApngImage
Implements
IDisposable , IObjectWithBounds , IRasterImageArgb32PixelLoader , IRasterImageRawDataLoader , IHasXmpData , IHasMetadata , IMultipageImageExt , IMultipageImage
相続人
RasterCachedMultipageImage.AdjustBrightness(int) , RasterCachedMultipageImage.AdjustContrast(float) , RasterCachedMultipageImage.AdjustGamma(float, float, float) , RasterCachedMultipageImage.AdjustGamma(float) , RasterCachedMultipageImage.Blend(Point, RasterImage, Rectangle, byte) , RasterCachedMultipageImage.BinarizeFixed(byte) , RasterCachedMultipageImage.BinarizeBradley(double, int) , RasterCachedMultipageImage.BinarizeBradley(double) , RasterCachedMultipageImage.BinarizeOtsu() , RasterCachedMultipageImage.Crop(Rectangle) , RasterCachedMultipageImage.Crop(int, int, int, int) , RasterCachedMultipageImage.Dither(DitheringMethod, int, IColorPalette) , RasterCachedMultipageImage.Grayscale() , RasterCachedMultipageImage.NormalizeHistogram() , RasterCachedMultipageImage.Rotate(float, bool, Color) , RasterCachedMultipageImage.RotateFlip(RotateFlipType) , RasterCachedMultipageImage.RotateFlipAll(RotateFlipType) , RasterCachedMultipageImage.Resize(int, int, ResizeType) , RasterCachedMultipageImage.Resize(int, int, ImageResizeSettings) , RasterCachedMultipageImage.ResizeWidthProportionally(int, ResizeType) , RasterCachedMultipageImage.ResizeHeightProportionally(int, ResizeType) , RasterCachedMultipageImage.ReplaceColor(int, byte, int) , RasterCachedMultipageImage.ReplaceNonTransparentColors(int) , RasterCachedMultipageImage.Filter(Rectangle, FilterOptionsBase) , RasterCachedMultipageImage.NormalizeAngle(bool, Color) , RasterCachedMultipageImage.CacheData() , RasterCachedMultipageImage.GetSerializedStream(ImageOptionsBase, Rectangle, out int) , RasterCachedMultipageImage.Height , RasterCachedMultipageImage.Width , RasterCachedMultipageImage.BitsPerPixel , RasterCachedMultipageImage.IsCached , RasterCachedMultipageImage.PageCount , RasterCachedMultipageImage.Pages , RasterCachedMultipageImage.HasAlpha , RasterCachedMultipageImage.HasTransparentColor , RasterCachedMultipageImage.ImageOpacity , RasterCachedMultipageImage.BackgroundColor , RasterCachedMultipageImage.XmpData , RasterCachedMultipageImage.PageExportingAction , RasterCachedImage.CacheData() , RasterCachedImage.Blend(Point, RasterImage, Rectangle, byte) , RasterCachedImage.Resize(int, int, ResizeType) , RasterCachedImage.Resize(int, int, ImageResizeSettings) , RasterCachedImage.RotateFlip(RotateFlipType) , RasterCachedImage.Rotate(float, bool, Color) , RasterCachedImage.Crop(Rectangle) , RasterCachedImage.Dither(DitheringMethod, int, IColorPalette) , RasterCachedImage.Grayscale() , RasterCachedImage.NormalizeHistogram() , RasterCachedImage.BinarizeFixed(byte) , RasterCachedImage.BinarizeOtsu() , RasterCachedImage.BinarizeBradley(double, int) , RasterCachedImage.BinarizeBradley(double) , RasterCachedImage.AdjustBrightness(int) , RasterCachedImage.AdjustContrast(float) , RasterCachedImage.AdjustGamma(float, float, float) , RasterCachedImage.AdjustGamma(float) , RasterCachedImage.IsCached , RasterImage.RemoveMetadata() , RasterImage.Save(Stream, ImageOptionsBase, Rectangle) , RasterImage.GetModifyDate(bool) , RasterImage.Dither(DitheringMethod, int) , RasterImage.Dither(DitheringMethod, int, IColorPalette) , RasterImage.GetDefaultPixels(Rectangle, IPartialArgb32PixelLoader) , RasterImage.GetDefaultRawData(Rectangle, IPartialRawDataLoader, RawDataSettings) , RasterImage.GetDefaultArgb32Pixels(Rectangle) , RasterImage.GetDefaultRawData(Rectangle, RawDataSettings) , RasterImage.GetArgb32Pixel(int, int) , RasterImage.GetPixel(int, int) , RasterImage.SetArgb32Pixel(int, int, int) , RasterImage.SetPixel(int, int, Color) , RasterImage.ReadScanLine(int) , RasterImage.ReadArgb32ScanLine(int) , RasterImage.WriteScanLine(int, Color[]) , RasterImage.WriteArgb32ScanLine(int, int[]) , RasterImage.LoadPartialArgb32Pixels(Rectangle, IPartialArgb32PixelLoader) , RasterImage.LoadPartialPixels(Rectangle, IPartialPixelLoader) , RasterImage.LoadArgb32Pixels(Rectangle) , RasterImage.LoadArgb64Pixels(Rectangle) , RasterImage.LoadPartialArgb64Pixels(Rectangle, IPartialArgb64PixelLoader) , RasterImage.LoadPixels(Rectangle) , RasterImage.LoadCmykPixels(Rectangle) , RasterImage.LoadCmyk32Pixels(Rectangle) , RasterImage.LoadRawData(Rectangle, RawDataSettings, IPartialRawDataLoader) , RasterImage.LoadRawData(Rectangle, Rectangle, RawDataSettings, IPartialRawDataLoader) , RasterImage.SaveRawData(byte[], int, Rectangle, RawDataSettings) , RasterImage.SaveArgb32Pixels(Rectangle, int[]) , RasterImage.SavePixels(Rectangle, Color[]) , RasterImage.SaveCmykPixels(Rectangle, CmykColor[]) , RasterImage.SaveCmyk32Pixels(Rectangle, int[]) , RasterImage.SetResolution(double, double) , RasterImage.SetPalette(IColorPalette, bool) , RasterImage.Resize(int, int, ImageResizeSettings) , RasterImage.Rotate(float, bool, Color) , RasterImage.Rotate(float) , RasterImage.BinarizeFixed(byte) , RasterImage.BinarizeOtsu() , RasterImage.BinarizeBradley(double) , RasterImage.BinarizeBradley(double, int) , RasterImage.Blend(Point, RasterImage, Rectangle, byte) , RasterImage.Blend(Point, RasterImage, byte) , RasterImage.Grayscale() , RasterImage.NormalizeHistogram() , RasterImage.AdjustBrightness(int) , RasterImage.AdjustContrast(float) , RasterImage.AdjustGamma(float, float, float) , RasterImage.AdjustGamma(float) , RasterImage.GetSkewAngle() , RasterImage.NormalizeAngle() , RasterImage.NormalizeAngle(bool, Color) , RasterImage.Filter(Rectangle, FilterOptionsBase) , RasterImage.ReplaceColor(Color, byte, Color) , RasterImage.ReplaceColor(int, byte, int) , RasterImage.ReplaceNonTransparentColors(Color) , RasterImage.ReplaceNonTransparentColors(int) , RasterImage.ToBitmap() , RasterImage.PremultiplyComponents , RasterImage.UseRawData , RasterImage.UpdateXmpData , RasterImage.XmpData , RasterImage.RawIndexedColorConverter , RasterImage.RawCustomColorConverter , RasterImage.RawFallbackIndex , RasterImage.RawDataSettings , RasterImage.UsePalette , RasterImage.RawDataFormat , RasterImage.RawLineSize , RasterImage.IsRawDataAvailable , RasterImage.HorizontalResolution , RasterImage.VerticalResolution , RasterImage.HasTransparentColor , RasterImage.HasAlpha , RasterImage.TransparentColor , RasterImage.ImageOpacity , Image.CanLoad(string) , Image.CanLoad(string, LoadOptions) , Image.CanLoad(Stream) , Image.CanLoad(Stream, LoadOptions) , Image.Create(ImageOptionsBase, int, int) , Image.Create(Image[]) , Image.Create(MultipageCreateOptions) , Image.Create(string[], bool) , Image.Create(string[]) , Image.Create(Image[], bool) , Image.GetFileFormat(string) , Image.GetFileFormat(Stream) , Image.GetFittingRectangle(Rectangle, int, int) , Image.GetFittingRectangle(Rectangle, int[], int, int) , Image.Load(string, LoadOptions) , Image.Load(string) , Image.Load(Stream, LoadOptions) , Image.Load(Stream) , Image.GetProportionalWidth(int, int, int) , Image.GetProportionalHeight(int, int, int) , Image.RemoveMetadata() , Image.CanSave(ImageOptionsBase) , Image.Resize(int, int) , Image.Resize(int, int, ResizeType) , Image.Resize(int, int, ImageResizeSettings) , Image.GetDefaultOptions(object[]) , Image.GetOriginalOptions() , Image.ResizeWidthProportionally(int) , Image.ResizeHeightProportionally(int) , Image.ResizeWidthProportionally(int, ResizeType) , Image.ResizeHeightProportionally(int, ResizeType) , Image.ResizeWidthProportionally(int, ImageResizeSettings) , Image.ResizeHeightProportionally(int, ImageResizeSettings) , Image.RotateFlip(RotateFlipType) , Image.Rotate(float) , Image.Crop(Rectangle) , Image.Crop(int, int, int, int) , Image.Save() , Image.Save(string) , Image.Save(string, ImageOptionsBase) , Image.Save(string, ImageOptionsBase, Rectangle) , Image.Save(Stream, ImageOptionsBase) , Image.Save(Stream, ImageOptionsBase, Rectangle) , Image.GetSerializedStream(ImageOptionsBase, Rectangle, out int) , Image.SetPalette(IColorPalette, bool) , Image.BitsPerPixel , Image.Bounds , Image.Container , Image.Height , Image.Palette , Image.UsePalette , Image.Size , Image.Width , Image.InterruptMonitor , Image.BufferSizeHint , Image.AutoAdjustPalette , Image.HasBackgroundColor , Image.FileFormat , Image.BackgroundColor , DataStreamSupporter.CacheData() , DataStreamSupporter.Save() , DataStreamSupporter.Save(Stream) , DataStreamSupporter.Save(string) , DataStreamSupporter.Save(string, bool) , DataStreamSupporter.DataStreamContainer , DataStreamSupporter.IsCached , DisposableObject.Dispose() , DisposableObject.Disposed , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Examples
下記の例では、他の非アニメ化されたマルチページ形式からAPNGファイル形式をエクスポートする方法を示しています。
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using (Image image = Image.Load("img4.tif")) {
// Setting up the default frame duration
image.Save("img4.tif.500ms.png", new ApngOptions() { DefaultFrameTime = 500 }); // 500 ms
image.Save("img4.tif.250ms.png", new ApngOptions() { DefaultFrameTime = 250 }); // 250 ms
}
下記の例では、APNGファイル形式にエクスポートする方法を示しています。
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using (Image image = Image.Load("Animation1.webp")) {
// Export to APNG animation with unlimited animation cycles as default
image.Save("Animation1.webp.png", new ApngOptions());
// Setting up animation cycles
image.Save("Animation2.webp.png", new ApngOptions() { NumPlays = 5 }); // 5 cycles
}
下記の例では、別のラスター単ページ画像からAPNG画像を作成する方法を示しています。
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.FileFormats.Apng;
const int AnimationDuration = 1000; // 1 s
const int FrameDuration = 70; // 70 ms
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))
{
// It is possible to set image default frame time there: apngImage.DefaultFrameTime = (uint)FrameDuration;
int numOfFrames = AnimationDuration / FrameDuration;
int numOfFrames2 = numOfFrames / 2;
// Cleaning because the image contains one frame by default
apngImage.RemoveAllFrames();
// add first frame
apngImage.AddFrame(sourceImage);
// add intermediate frames
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);
}
// add last frame
apngImage.AddFrame(sourceImage);
apngImage.Save();
}
}
Constructors
ApngImage(オプション、 int、 int)
Aspose.Imaging.FileFormats.Apng.ApngImage クラスで作業を開始する新しい例は、努力なく、開発者が始めるために完璧です。ApngImage オブジェクトをプロジェクトで迅速かつ効率的に使用します。
public ApngImage(ApngOptions options, int width, int height)
Parameters
options
ApngOptions
オプションです。
width
int
広さ。
height
int
高さです。
Properties
DefaultFrameTime
デフォルトフレームの寿命を簡単に調整して、新しいフレームを作成します。この柔軟な特性. フレームタイミングをカスタマイズしようとする開発者に最適ですアニメーションで効率的に
public uint DefaultFrameTime { get; set; }
不動産価値
Examples
下記の例では、別のラスター単ページ画像からAPNG画像を作成する方法を示しています。
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.FileFormats.Apng;
const int AnimationDuration = 1000; // 1 s
const int FrameDuration = 70; // 70 ms
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))
{
// It is possible to set image default frame time there: apngImage.DefaultFrameTime = (uint)FrameDuration;
int numOfFrames = AnimationDuration / FrameDuration;
int numOfFrames2 = numOfFrames / 2;
// Cleaning because the image contains one frame by default
apngImage.RemoveAllFrames();
// add first frame
apngImage.AddFrame(sourceImage);
// add intermediate frames
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);
}
// add last frame
apngImage.AddFrame(sourceImage);
apngImage.Save();
}
}
FileFormat
この便利な属性でファイル形式に関する情報に迅速にアクセスできます。フォーマットに関する詳細を取得する必要がある開発者に最適です。Apngファイルを簡単に
public override FileFormat FileFormat { get; }
不動産価値
Interlaced
この Aspose.Imaging.FileFormats.Png.PngImage オブジェクトが接続されているかどうかを迅速に確認します。この便利な不動産で、開発者がチェックする必要があるのに最適です。PNG画像の相互接続状態は簡単です。
public bool Interlaced { get; }
不動産価値
NumPlays
このアニメーションで何回走るかをコントロールする多様な特性. 正確なコントロールを求める開発者に最適ですアニメーション行動、無限のローピングをサポートする場合値は0に等しい。
public int NumPlays { get; set; }
不動産価値
PageCount
この属性で画像ファイルのページの合計数を無力に回収します。開発者には、ページ数情報への迅速なアクセスが必要です。
public override int PageCount { get; }
不動産価値
Pages
この便利な所有物であなたの画像のページに簡単にアクセスできます。操作のために個々のページへの迅速かつ簡単なアクセスを求める開発者に最適です。
public override Image[] Pages { get; }
不動産価値
Image ( )
XmpData
これを使用してファイルに関連するXMPメタデータを無効に管理する多様な特性. アクセスまたは更新を求める開発者に最適ですメタデータ情報は簡単。
public override XmpPacketWrapper XmpData { get; set; }
不動産価値
Methods
AddFrame()
このフレームコレクションの終わりに新しいフレームを簡単に追加します。シンプルな方法. 開発者を拡大しようとするための理想的な方法フレームコレクションは、マルチフレーム画像のアニメーションのためのダイナミックです。新しいフレームは、現在の画像のサイズに応じて作成されます。
public ApngFrame AddFrame()
Returns
新しく作成されたAPNGフレーム。
AddFrame(RasterImage)
フレームコレクションを簡単に拡大し、最後に新しいフレームを追加します。この直感的な方法で、開発者を強化しようとする開発者に最適です。マルチフレーム画像をダイナミックに動作させる。新しいフレームのコンテンツは、指定された画像から記入されます。
public void AddFrame(RasterImage frameImage)
Parameters
frameImage
RasterImage
フレーム画像
Examples
下記の例では、別のラスター単ページ画像からAPNG画像を作成する方法を示しています。
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.FileFormats.Apng;
const int AnimationDuration = 1000; // 1 s
const int FrameDuration = 70; // 70 ms
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))
{
// It is possible to set image default frame time there: apngImage.DefaultFrameTime = (uint)FrameDuration;
int numOfFrames = AnimationDuration / FrameDuration;
int numOfFrames2 = numOfFrames / 2;
// Cleaning because the image contains one frame by default
apngImage.RemoveAllFrames();
// add first frame
apngImage.AddFrame(sourceImage);
// add intermediate frames
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);
}
// add last frame
apngImage.AddFrame(sourceImage);
apngImage.Save();
}
}
Exceptions
フレームはゼロです。
AddFrame(レイアウト、UINT)
フレームコレクションを無限に拡大し、フレームに新しいフレームを貼り付けます。この直感的な方法で、開発者に最適です。マルチフレーム画像のアニメーション新しいフレームのコンテンツは、指定された画像から記入されます。
public void AddFrame(RasterImage frameImage, uint frameTime)
Parameters
frameImage
RasterImage
フレーム画像
frameTime
uint
フレームの長さは、ミリ秒で
Exceptions
フレームはゼロです。
AddPage(RasterImage)
この直感的な方法で簡単に画像に新しいページを追加します。画像ファイルのコンテンツをダイナミックに拡張しようとする開発者に最適です。
public void AddPage(RasterImage page)
Parameters
page
RasterImage
追加するページです。
Exceptions
page’ is null.
AdjustBrightness(インタ)
この直感的な方法で画像の<コードクラス=“パラムレフ”>明るさを簡単に調整し、指定された明るさパラメーターを使用します。
public override void AdjustBrightness(int brightness)
Parameters
brightness
int
明るさの価値
AdjustContrast(フラット)
Aspose.Imaging.Image の対比を向上させるこの直感的な方法で詳細を明らかにするために、開発者に最適です。画像の視覚的明確さと影響をダイナミックに向上させようとする。
public override void AdjustContrast(float contrast)
Parameters
contrast
float
対照値(範囲内(100、100)
AdjustGamma(フラット)
画像にガマ修正を適用し、フラットポイント関数を使用します。この直感的な方法で、正確な色制御を求める開発者に最適です。彼らのイメージで。
public override void AdjustGamma(float gamma)
Parameters
gamma
float
レッド・グリーン・ブルー・チャンネルのGAMMA
AdjustGamma(フラット、フラット、フラット)
赤、グリーン、ブルーのチャンネルを別々に画像にガマ修正を行います。この直感的な方法で個々のコーヒーを使用します. 開発者が求めるのに最適です。薄色の色のバランスをとり、画像の視覚的品質を向上させる。
public override void AdjustGamma(float gammaRed, float gammaGreen, float gammaBlue)
Parameters
gammaRed
float
レッドチャンネルのGamma Coefficient
gammaGreen
float
グリーンチャンネルのGamma Coefficient
gammaBlue
float
ブルーチャンネルのGamma Coefficient
BinarizeBradley(二重、 int)
ブラッドリーの適応性限界アルゴリズムを使用してイメージのバイナリ化
public override void BinarizeBradley(double brightnessDifference, int windowSize)
Parameters
brightnessDifference
double
ピクセルの明るさの違いと、s x s ピクセルのウィンドウの平均このピクセルを中心に
windowSize
int
このピクセルの周りに焦点を当てたピクセルのサイズの s x s ウィンドウ
BinarizeFixed(ビート)
事前に定義された範囲を使用して画像を無力にバイナリ化する直感的な方法. 画像をバイナリー形式に変換しようとする開発者に最適です。さらなる処理や分析のためにそれらを簡素化する。
public override void BinarizeFixed(byte threshold)
Parameters
threshold
byte
ピクセルの関連するグレー値が限界を超える場合、255はそれに割り当てられますが、0は別に割り当てられます。
BinarizeOtsu()
この直感的な方法でOtsuの範囲を使用して画像のバイナリ化を実行します。開発者が自動的に最適な範囲を決定しようとするのに最適です。画像をバイナリー形式に変換し、その明確性とさらなる分析の適切性を向上させます。
public override void BinarizeOtsu()
Crop(Rectangle)
この直感的な方法で特定の領域に焦点を当てるために、イメージを無力に栽培します。彼らの画像の構成をダイナミックに改良しようとする開発者に最適です。
public override void Crop(Rectangle rectangle)
Parameters
rectangle
Rectangle
直角です。
Crop(int、 int、 int、 int、 int)
この直感的な方法で変動を調整しながら画像を植える。採掘プロセスの正確なコントロールを求める開発者に最適です。Apng画像の特定の領域に焦点を当てる。
public override void Crop(int leftShift, int rightShift, int topShift, int bottomShift)
Parameters
leftShift
int
左転換。
rightShift
int
正しい転換です。
topShift
int
トップ転換
bottomShift
int
下の転換。
Dither(DitheringMethod, int, IColorパレット)
この直感的な方法で現在のイメージにディタリング効果を簡単に適用します。開発者がテキストを追加したり、画像に色の結合を減らしたりするのに最適です。
public override void Dither(DitheringMethod ditheringMethod, int bitsCount, IColorPalette customPalette)
Parameters
ditheringMethod
DitheringMethod
ダイエット方法です。
bitsCount
int
最後のビットはディタリングのために数える。
customPalette
IColorPalette
ディタリングのためのカスタムパレット。
Filter(Rectangle、FilterOptionsベース)
簡単にフィルターを画像の指定された直角に適用します。直感的な方法. 特定の領域を改善または変更しようとする開発者に最適です。
public override void Filter(Rectangle rectangle, FilterOptionsBase options)
Parameters
rectangle
Rectangle
直角です。
options
FilterOptionsBase
オプションです。
GetDefaultOptions(対象[])
このシンプルな方法でデフォルトオプションを簡単に修復します。デフォルト Apng 画像設定への迅速なアクセスを求める開発者に最適です。
public override ImageOptionsBase GetDefaultOptions(object[] args)
Parameters
args
object
( )
主張は。
Returns
デフォルトオプション
GetModifyDate(ボール)
リソース画像が最後に変更された日付と時間を迅速に取得します。このユーザーフレンドリーな方法で、変化を追跡する必要がある開発者に最適です。資源を効率的に管理する。
public override DateTime GetModifyDate(bool useDefault)
Parameters
useDefault
bool
「真実」に設定されている場合は、FileInfo の情報をデフォルト値として使用します。
Returns
リソース画像の日付と時間が最後に変更されました。
GetOriginalOptions()
この直感的な方法で、オリジナルのファイル設定に基づくオプションを無力に修復します。特性に合致する設定にアクセスし、使用しようとする開発者に最適ですオリジナルファイルから。これは、ビットの深さやオリジナルの画像の他のパラメーターを変えられないようにするのに役立ちます。たとえば、ブラックホワイトのPNG画像をピクセル1ビットで充電し、その後ピクセル1ビットで保存します。Aspose.Imaging.DataStreamSupporter.Save(System.String) 方法で、ピクセルごとに 8 ビットの出力 PNG イメージが生成されます。それを避け、ピクセル1ビットでPNG画像を保存するには、この方法を使用して、適切な保存オプションを取得し、それらを通過します。Aspose.Imaging.Image.Save(System.String、Aspose.Imaging.ImageOptionsBase)の方法は、2番目のパラメーターです。
public override ImageOptionsBase GetOriginalOptions()
Returns
オリジナルファイル設定に基づくオプション
GetPagesAsEnumerable()
ページを数えられるようにする。
protected override IEnumerable<image/> GetPagesAsEnumerable()
Returns
IEnumerable < Image >
自分のページを数えるほど。
Grayscale()
この直感的な方法で簡単にイメージをグレイスケールの表現に変換します。カラー画像をグレイスケールに変換しようとする開発者に最適で、それらの画像を簡素化します。視覚化・分析プロセス
public override void Grayscale()
InsertFrame(インタ)
新しいフレームを指定されたフレームコレクションに簡単に挿入します。この直感的な方法で、正確なコントロールを求める開発者に最適です。マルチフレーム画像のアニメーションにおけるフレームの配置。新しいフレームは、現在の画像のサイズに応じて作成されます。
public ApngFrame InsertFrame(int index)
Parameters
index
int
インデックスです。
Returns
新しく作成されたAPNGフレーム。
Exceptions
index’ is less than 0.or
index’ is greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.
InsertFrame(レストラン レストラン)
新しいフレームを指定されたインデックスのフレームコレクションに挿入します。新しいフレームのコンテンツは、指定された画像から記入されます。
public void InsertFrame(int index, RasterImage frameImage)
Parameters
index
int
インデックスです。
frameImage
RasterImage
フレーム画像
Exceptions
index’ is less than 0.or
index’ is greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.
フレームはゼロです。
InsertFrame(ラスターイメージ、ウィント)
新しいフレームを指定されたインデックスのフレームコレクションに挿入します。新しいフレームのコンテンツは、指定された画像から記入されます。
public void InsertFrame(int index, RasterImage frameImage, uint frameTime)
Parameters
index
int
インデックスです。
frameImage
RasterImage
フレーム画像
frameTime
uint
フレームの長さは、ミリ秒で
Exceptions
index’ is less than 0.or
index’ is greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.
フレームはゼロです。
PopFrameAt(インタ)
フレームコレクションから指定インデックスのフレームを削除および取り戻すこの直感的な方法で、効率的な管理を求める開発者に最適です。彼らのアニメーションのフレーム。
public ApngFrame PopFrameAt(int index)
Parameters
index
int
インデックスです。
Returns
削除されたAPNGフレーム。
Exceptions
index’ is less than 0.or
index’ is equal to or greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.
ReleaseManagedResources()
管理されたリソースをリリースします. 管理されていないリソースがここにリリースされていないことを確認してください。すでにリリース。
protected override void ReleaseManagedResources()
RemoveAllFrames()
この直感的な方法ですべてのフレームを取り除くことによってフレームコレクションをクリアします。アニメーションを再設定または更新しようとする開発者に最適です。
public void RemoveAllFrames()
Examples
下記の例では、別のラスター単ページ画像からAPNG画像を作成する方法を示しています。
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.FileFormats.Apng;
const int AnimationDuration = 1000; // 1 s
const int FrameDuration = 70; // 70 ms
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))
{
// It is possible to set image default frame time there: apngImage.DefaultFrameTime = (uint)FrameDuration;
int numOfFrames = AnimationDuration / FrameDuration;
int numOfFrames2 = numOfFrames / 2;
// Cleaning because the image contains one frame by default
apngImage.RemoveAllFrames();
// add first frame
apngImage.AddFrame(sourceImage);
// add intermediate frames
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);
}
// add last frame
apngImage.AddFrame(sourceImage);
apngImage.Save();
}
}
RemoveFrameAt(インタ)
フレームコレクションから指定されたインデックスのフレームを無効に削除するこの方法で完璧です フレームの精密な管理を求める開発者マルチフレームの画像です。削除されるフレームは削除されます。
public void RemoveFrameAt(int index)
Parameters
index
int
インデックスです。
Exceptions
index’ is less than 0.or
index’ is equal to or greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.
ResetDefaultImage()
この直感的な方法で既定の画像を削除します。アニメーションでデフォルト画像を再設定または削除しようとする開発者に最適です。その後、デフォルトイメージはフレームコレクションの最初のフレームです。(この方法を使用して削除することはできません。
public void ResetDefaultImage()
Resize(int、 int、 resizeType)
この直感的な方法で画像を無駄にリサイクルします 開発者に最適です画像のサイズをダイナミックに調整しようとする。
public override void Resize(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
新しい広さ。
newHeight
int
新しい高さ。
resizeType
ResizeType
リサイクルタイプ。
Resize(int、 int、 ImageResizeSettings)
イメージを取り戻す。
public override void Resize(int newWidth, int newHeight, ImageResizeSettings settings)
Parameters
newWidth
int
新しい広さ。
newHeight
int
新しい高さ。
settings
ImageResizeSettings
リサイクル設定
ResizeHeightProportionally(リズム、リズム)
画像の高さを調整し、その比率を維持する。この直感的な方法で、画像を再編しようとする開発者に最適です。ダイナミックで、その側面の比率を維持する。
public override void ResizeHeightProportionally(int newHeight, ResizeType resizeType)
Parameters
newHeight
int
新しい高さ。
resizeType
ResizeType
リサイクルの種類
ResizeWidthProportionally(リズム、リズム)
この直感的な方法で画像の幅を無力に逆転させます。画像の側面比率を維持しようとする開発者に最適です。次元を調整する。
public override void ResizeWidthProportionally(int newWidth, ResizeType resizeType)
Parameters
newWidth
int
新しい広さ。
resizeType
ResizeType
リサイクルの種類
Rotate(フラット、ボール、色)
この直感的な方法で、その中心の周りのイメージを無力に回転させます。画像の方向性をダイナミックに調整しようとする開発者に最適です。
public override void Rotate(float angle, bool resizeProportionally, Color backgroundColor)
Parameters
angle
float
ポジティブな値は時計的に回転します。
resizeProportionally
bool
「真実」に設定すると、画像のサイズが変更されますが、その他の場合、サイズが触れられなくなり、単にinternal画像のコンテンツが回転します。
backgroundColor
Color
背景の色。
RotateFlip(RotateFlipType)
アクティブなフレームを回転、フリッピング、または両方で操作する。この直感的な方法で開発者向けに最適です。イメージフレームの方向性
public override void RotateFlip(RotateFlipType rotateFlipType)
Parameters
rotateFlipType
RotateFlipType
ローテットフリップタイプ
SaveData(Stream)
データを保存します。
protected override void SaveData(Stream stream)
Parameters
stream
Stream
データを保存するためのストリーム。
SetDefaultImage(RasterImage)
現在のアニメーションのデフォルト画像として指定されたラスター画像を設定します。この方法で無労に完璧です 開発者がカスタマイズしようとしている彼らのアニメーションのデフォルトイメージ。
public void SetDefaultImage(RasterImage image)
Parameters
image
RasterImage
イメージです。
Exceptions
画像はゼロ。
UpdateDimensions(int、 int)
画像のサイズを更新します。
protected override void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
新しい画像の幅。
newHeight
int
新しい画像の高さ。
UpdateMetadata()
画像メタデータを更新します。
protected override void UpdateMetadata()