Class DataStreamSupporter
Namespace: Aspose.Imaging
Assembly: Aspose.Imaging.dll (25.2.0)
Veri akışı konteyneri.
[JsonObject(MemberSerialization.OptIn)]
public abstract class DataStreamSupporter : DisposableObject, IDisposable
Miras
object ← DisposableObject ← DataStreamSupporter
Türetilmiş
Uygulamalar
Miras Alınan Üyeler
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()
Yapıcılar
DataStreamSupporter()
Aspose.Imaging.DataStreamSupporter sınıfının yeni bir örneğini başlatır.
[JsonConstructor]
protected DataStreamSupporter()
Alanlar
timeout
Senkranizasyon için bekleme süresi
[JsonProperty]
protected int timeout
Alan Değeri
Özellikler
DataStreamContainer
Nesnenin veri akışını alır.
public StreamContainer DataStreamContainer { get; }
Özellik Değeri
IsCached
Nesnenin verisinin şu anda önbelleğe alınıp alınmadığını ve veri okumasına gerek olup olmadığını gösteren bir değer alır.
public abstract bool IsCached { get; }
Özellik Değeri
Metotlar
CacheData()
Veriyi önbelleğe alır ve temel Aspose.Imaging.DataStreamSupporter.DataStreamContainer’dan ek veri yüklemesi yapılmayacağını garanti eder.
public abstract void CacheData()
Örnekler
Aşağıdaki örnek, resim önbelleğe almanın performansı nasıl etkilediğini gösterir. Genel durumda, önbelleğe alınmış verilerin okunması, önbelleğe alınmamış verilerin okunmasından daha hızlıdır.```csharp [C#]
string dir = "c:\\temp\\";
// Bir PNG dosyasından bir resim yükle.
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
// Temel veri akışından ek veri yüklemesi yapılmayacağından tüm piksel verilerini önbelleğe al
image.CacheData();
System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch();
stopwatch.Start();
// Tüm piksellerin okunması oldukça hızlıdır.
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("Tüm önbelleğe alınmış piksellerin okunması {0} ms sürdü.", stopwatch.ElapsedMilliseconds);
}
// Bir PNG dosyasından bir resim yükle
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch();
stopwatch.Start();
// Tüm piksellerin okunması önbelleğe alma ile olduğu kadar hızlı değildir
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("Önceden önbelleğe almadan tüm piksellerin okunması {0} ms sürdü.", stopwatch.ElapsedMilliseconds);
}
// Çıktı şu şekilde görünebilir:
// Tüm önbelleğe alınmış piksellerin okunması 1500 ms sürdü.
// Önceden önbelleğe almadan tüm piksellerin okunması 150000 ms sürdü.
### <a id="Aspose_Imaging_DataStreamSupporter_OnDataStreamContainerChanging_Aspose_Imaging_StreamContainer_"></a> OnDataStreamContainerChanging\(StreamContainer\)
Veri akış konteyneri değiştiğinde çağrılır.
```csharp
protected virtual void OnDataStreamContainerChanging(StreamContainer streamContainer)
Parametreler
streamContainer
StreamContainer
Akış konteyneri.
ReleaseManagedResources()
Yönetilen kaynakları serbest bırakır. Burada yönetilmeyen kaynakların serbest bırakılmadığından emin olun, çünkü bunlar zaten serbest bırakılmış olabilir.
protected override void ReleaseManagedResources()
Save()
Nesnenin verilerini mevcut Aspose.Imaging.DataStreamSupporter’a kaydeder.
public virtual void Save()
Save(Stream)
Nesnenin verilerini belirtilen akışa kaydeder.
public void Save(Stream stream)
Parametreler
stream
Stream
Nesnenin verilerini kaydetmek için kullanılan akış.
Save(string)
Nesnenin verilerini belirtilen dosya konumuna kaydeder.
public virtual void Save(string filePath)
Parametreler
filePath
string
Nesnenin verilerini kaydetmek için kullanılan dosya yolu.
Save(string, bool)
Nesnenin verilerini belirtilen dosya konumuna kaydeder.
public virtual void Save(string filePath, bool overWrite)
Parametreler
filePath
string
Nesnenin verilerini kaydetmek için kullanılan dosya yolu.
overWrite
bool
Eğer ```cstrue olarak ayarlandıysa, dosya içeriğini üzerine yazar, aksi takdirde ekleme yapılır.
SaveData(Stream)
Verileri kaydeder.
protected abstract void SaveData(Stream stream)
Parametreler
stream
Stream
Verileri kaydetmek için kullanılan akış.