Class DataStreamSupporter

Class DataStreamSupporter

nazivni prostor: Aspose.Imaging Sastav: Aspose.Imaging.dll (25.4.0)

Kontejner za protok podataka.

[JsonObject(MemberSerialization.OptIn)]
public abstract class DataStreamSupporter : DisposableObject, IDisposable

Inheritance

object DisposableObject DataStreamSupporter

Derived

Image

Implements

IDisposable

naslijeđeni članovi

DisposableObject.Dispose() , DisposableObject.ReleaseManagedResources() , DisposableObject.ReleaseUnmanagedResources() , DisposableObject.VerifyNotDisposed() , DisposableObject.Disposed , object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Constructors

DataStreamSupporter()

Inicijalizira novu primjenu Aspose.Imaging.DataStreamSupporter klase.

[JsonConstructor]
protected DataStreamSupporter()

Fields

Vrijeme

Vrijeme čekanja za sinhronizaciju

[JsonProperty]
protected int timeout

Vrijednost polja

int

Properties

DataStreamContainer

Pronađite protok podataka objekta.

public StreamContainer DataStreamContainer { get; }

Vrijednost nekretnina

StreamContainer

IsCached

Dobiva vrijednost koja ukazuje na to da li su podaci objekta trenutno sakriveni i da se ne zahtijeva čitanje podataka.

public abstract bool IsCached { get; }

Vrijednost nekretnina

bool

Methods

CacheData()

Čišćenje podataka i osigurava da se neće izvršiti dodatni teret podataka iz podrijetla Aspose.Imaging.DataStreamSupporter.

public abstract void CacheData()

Examples

Sljedeći primjer pokazuje kako slikovni caching utječe na performanse.U općem slučaju, čitanje cache podataka obavlja se brže nego što čitaju ne-cache podatke.

string dir = "c:\\temp\\";

                                                                                                                                                                    // Load an image from a PNG file.
                                                                                                                                                                    using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
                                                                                                                                                                    {
                                                                                                                                                                        // Cache all pixel data so that no additional data loading will be performed from the underlying data stream
                                                                                                                                                                        image.CacheData();

                                                                                                                                                                        System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch();
                                                                                                                                                                        stopwatch.Start();

                                                                                                                                                                        // Reading all pixels is pretty fast.
                                                                                                                                                                        Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
                                                                                                                                                                        for (int y = 0; y < image.Height; y++)
                                                                                                                                                                        {
                                                                                                                                                                            for (int x = 0; x < image.Width; x++)
                                                                                                                                                                            {
                                                                                                                                                                                int color = rasterImage.GetArgb32Pixel(x, y);
                                                                                                                                                                            }
                                                                                                                                                                        }

                                                                                                                                                                        stopwatch.Stop();
                                                                                                                                                                        System.Console.WriteLine("Reading all cached pixels took {0} ms.", stopwatch.ElapsedMilliseconds);
                                                                                                                                                                    }

                                                                                                                                                                    // Load an image from a PNG file
                                                                                                                                                                    using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
                                                                                                                                                                    {
                                                                                                                                                                        System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch();
                                                                                                                                                                        stopwatch.Start();

                                                                                                                                                                        // Reading all pixels is not as fast as when caching
                                                                                                                                                                        Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
                                                                                                                                                                        for (int y = 0; y < image.Height; y++)
                                                                                                                                                                        {
                                                                                                                                                                            for (int x = 0; x < image.Width; x++)
                                                                                                                                                                            {
                                                                                                                                                                                int color = rasterImage.GetArgb32Pixel(x, y);
                                                                                                                                                                            }
                                                                                                                                                                        }

                                                                                                                                                                        stopwatch.Stop();
                                                                                                                                                                        System.Console.WriteLine("Reading all pixels without preliminary caching took {0} ms.", stopwatch.ElapsedMilliseconds);
                                                                                                                                                                    }

                                                                                                                                                                    // The output may look like this:
                                                                                                                                                                    // Reading all cached pixels took 1500 ms.
                                                                                                                                                                    // Reading all pixels without preliminary caching took 150000 ms.

OnDataStreamContainerChanging(StreamContainer)

Naziva se kada se mijenja kontejner za protok podataka.

protected virtual void OnDataStreamContainerChanging(StreamContainer streamContainer)

Parameters

streamContainer StreamContainer

Kontejner za struju.

ReleaseManagedResources()

Uklonite upravljane resurse. pobrinite se da se ovdje ne otpuštaju nekontrolirani resursi, budući da su možda već otpušteni.

protected override void ReleaseManagedResources()

Save()

Shrani podatke o objektu na trenutni Aspose.Imaging.DataStreamSupporter.

public virtual void Save()

Save(Stream)

Shrani podatke o objektu u određenom toku.

public void Save(Stream stream)

Parameters

stream Stream

U toku za spašavanje podataka objekta na.

Save(String)

Shrani podatke o objektu na određeno mjesto datoteke.

public virtual void Save(string filePath)

Parameters

filePath string

Put datoteke za spašavanje podataka objekta na.

Save(Sljedeći Članak Bool)

Shrani podatke o objektu na određeno mjesto datoteke.

public virtual void Save(string filePath, bool overWrite)

Parameters

filePath string

Put datoteke za spašavanje podataka objekta na.

overWrite bool

ako je postavljen na ‘pravda’ nad pisanjem sadržaja datoteke, inače će se pojaviti dodatak.

SaveData(Stream)

Sačuvajte podatke.

protected abstract void SaveData(Stream stream)

Parameters

stream Stream

Proljev za spašavanje podataka na.

 Hrvatski