Class DataStreamSupporter
Der Name: Aspose.Imaging Versammlung: Aspose.Imaging.dll (25.4.0)
Der Datenstrom Container.
[JsonObject(MemberSerialization.OptIn)]
public abstract class DataStreamSupporter : DisposableObject, IDisposable
Inheritance
object ← DisposableObject ← DataStreamSupporter
Derived
Implements
Vererbte Mitglieder
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()
Initialisiert eine neue Instanz der Aspose.Imaging.DataStreamSupporter Klasse.
[JsonConstructor]
protected DataStreamSupporter()
Fields
Zeitabend
Die Zeit für die Synchronisierung warten
[JsonProperty]
protected int timeout
Feldwert
Properties
DataStreamContainer
Erhalten Sie den Datenstrom des Objekts.
public StreamContainer DataStreamContainer { get; }
Eigentumswert
IsCached
Er erhält einen Wert, der angibt, ob die Daten des Objekts derzeit verschlüsselt sind und keine Datenlesung erforderlich ist.
public abstract bool IsCached { get; }
Eigentumswert
Methods
CacheData()
Es versteckt die Daten und sorgt dafür, dass keine zusätzlichen Datenladungen vom unteren Aspose.Imaging.DataStreamSupporter.DataStreamContainer durchgeführt werden.
public abstract void CacheData()
Examples
Das folgende Beispiel zeigt, wie Bildcaching die Leistung beeinflusst. im Allgemeinen wird das Lesen von cached-Daten schneller durchgeführt als das Lesen von nicht cached-Daten.
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)
Es wird angerufen, wenn sich der Datenstrom-Container ändert.
protected virtual void OnDataStreamContainerChanging(StreamContainer streamContainer)
Parameters
streamContainer
StreamContainer
Der Stream Container.
ReleaseManagedResources()
Stellen Sie sicher, dass hier keine nicht verwalteten Ressourcen veröffentlicht werden, da sie möglicherweise bereits veröffentlicht wurden.
protected override void ReleaseManagedResources()
Save()
Speichert die Daten des Objekts in den aktuellen Aspose.Imaging.DataStreamSupporter.
public virtual void Save()
Save(Stream)
Speichert die Daten des Objekts in den angegebenen Strom.
public void Save(Stream stream)
Parameters
stream
Stream
Der Strom, um die Daten des Objekts zu speichern.
Save(String)
Speichert die Daten des Objekts an die angegebenen Datei-Lokation.
public virtual void Save(string filePath)
Parameters
filePath
string
Der Dateiweg, um die Daten des Objekts zu speichern.
Save(String und Bool)
Speichert die Daten des Objekts an die angegebenen Datei-Lokation.
public virtual void Save(string filePath, bool overWrite)
Parameters
filePath
string
Der Dateiweg, um die Daten des Objekts zu speichern.
overWrite
bool
wenn Sie auf “richtig” über das Schreiben der Datei-Inhalte festgelegt werden, sonst wird eine Ergänzung auftreten.
SaveData(Stream)
Sparen Sie die Daten.
protected abstract void SaveData(Stream stream)
Parameters
stream
Stream
Der Stream, um die Daten zu speichern.