Class StreamSource
Το όνομα: Aspose.Imaging.Sources Συγκέντρωση: Aspose.Imaging.dll (25.4.0)
Αντιπροσωπεύει μια πηγή ροής.
[JsonObject(MemberSerialization.OptIn)]
public sealed class StreamSource : Source
Inheritance
object ← Source ← StreamSource
Κληρονομημένα μέλη
Source.GetStreamContainer() , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Examples
Αυτό το παράδειγμα δείχνει τη χρήση του System.IO.Stream για τη δημιουργία ενός νέου αρχείου εικόνας (ένας τύπος JPEG)
//Creates an instance of JpegOptions and set its various properties
Aspose.Imaging.ImageOptions.JpegOptions jpegOptions = new Aspose.Imaging.ImageOptions.JpegOptions();
//Create an instance of System.IO.Stream
System.IO.Stream stream = new System.IO.FileStream(@"C:\temp\sample.jpeg", System.IO.FileMode.Create);
//Define the source property for the instance of JpegOptions
//Second boolean parameter determins if the Stream is disposed once get out of scope
jpegOptions.Source = new Aspose.Imaging.Sources.StreamSource(stream, true);
//Creates an instance of Image and call Create method with JpegOptions as parameter to initialize the Image object
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Create(jpegOptions, 500, 500))
{
//do some image processing
}
Αυτό το παράδειγμα χρησιμοποιεί την κατηγορία γραφικών για να δημιουργήσει πρωτόγονα σχήματα στην επιφάνεια της εικόνας. Για να αποδείξει τη λειτουργία, το παράδειγμα δημιουργεί μια νέα εικόνα σε μορφή PNG και ζωγραφίζει πρωτόγονα σχήματα στην επιφάνεια της εικόνας χρησιμοποιώντας τις μεθόδους ζωγραφικής που εκθέτει η κατηγορία γραφικών
//Creates an instance of FileStream
using (System.IO.FileStream stream = new System.IO.FileStream(@"C:\temp\output.png", System.IO.FileMode.Create))
{
//Create an instance of PngOptions and set its various properties
Aspose.Imaging.ImageOptions.PngOptions pngOptions = new Aspose.Imaging.ImageOptions.PngOptions();
//Set the Source for PngOptions
pngOptions.Source = new Aspose.Imaging.Sources.StreamSource(stream);
//Create an instance of Image
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Create(pngOptions, 500, 500))
{
//Create and initialize an instance of Graphics class
Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(image);
//Clear Graphics surface
graphics.Clear(Aspose.Imaging.Color.Wheat);
//Draw an Arc by specifying the Pen object having Black color,
//a Rectangle surrounding the Arc, Start Angle and Sweep Angle
graphics.DrawArc(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Black, 2), new Aspose.Imaging.Rectangle(200, 200, 100, 200), 0, 300);
//Draw a Bezier by specifying the Pen object having Blue color and co-ordinate Points.
graphics.DrawBezier(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Blue, 2), new Aspose.Imaging.Point(250, 100), new Aspose.Imaging.Point(300, 30), new Aspose.Imaging.Point(450, 100), new Aspose.Imaging.Point(235, 25));
//Draw a Curve by specifying the Pen object having Green color and an array of Points
graphics.DrawCurve(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Green, 2), new[] { new Aspose.Imaging.Point(100, 200), new Aspose.Imaging.Point(100, 350), new Aspose.Imaging.Point(200, 450) });
//Draw an Ellipse using the Pen object and a surrounding Rectangle
graphics.DrawEllipse(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Yellow, 2), new Aspose.Imaging.Rectangle(300, 300, 100, 100));
//Draw a Line
graphics.DrawLine(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Violet, 2), new Aspose.Imaging.Point(100, 100), new Aspose.Imaging.Point(200, 200));
//Draw a Pie segment
graphics.DrawPie(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Silver, 2), new Aspose.Imaging.Rectangle(new Aspose.Imaging.Point(200, 20), new Aspose.Imaging.Size(200, 200)), 0, 45);
//Draw a Polygon by specifying the Pen object having Red color and an array of Points
graphics.DrawPolygon(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Red, 2), new[] { new Aspose.Imaging.Point(20, 100), new Aspose.Imaging.Point(20, 200), new Aspose.Imaging.Point(220, 20) });
//Draw a Rectangle
graphics.DrawRectangle(new Aspose.Imaging.Pen(Aspose.Imaging.Color.Orange, 2), new Aspose.Imaging.Rectangle(new Aspose.Imaging.Point(250, 250), new Aspose.Imaging.Size(100, 100)));
//Create a SolidBrush object and set its various properties
Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush();
brush.Color = Color.Purple;
brush.Opacity = 100;
//Draw a String using the SolidBrush object and Font, at specific Point
graphics.DrawString("This image is created by Aspose.Imaging API", new Aspose.Imaging.Font("Times New Roman", 16), brush, new Aspose.Imaging.PointF(50, 400));
// save all changes.
image.Save();
}
}
Constructors
StreamSource()
Αρχίζει μια νέα περίπτωση της κατηγορίας Aspose.Imaging.Sources.StreamSource.
[JsonConstructor]
public StreamSource()
StreamSource(Stream)
Αρχίζει μια νέα περίπτωση της κατηγορίας Aspose.Imaging.Sources.StreamSource.
public StreamSource(Stream stream)
Parameters
stream
Stream
Το ρεύμα ανοίγει.
Examples
Αυτό το παράδειγμα δείχνει πώς να φορτώσετε πληροφορίες Pixel σε μια σειρά τύπου χρώματος, χειριστεί τη σειρά και να την τοποθετήσετε πίσω στην εικόνα. Για να εκτελέσετε αυτές τις εργασίες, αυτό το παράδειγμα δημιουργεί ένα νέο αρχείο εικόνας (σε μορφή GIF) uisng αντικείμενο MemoryStream.
//Create an instance of MemoryStream
using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
{
//Create an instance of GifOptions and set its various properties including the Source property
Aspose.Imaging.ImageOptions.GifOptions gifOptions = new Aspose.Imaging.ImageOptions.GifOptions();
gifOptions.Source = new Aspose.Imaging.Sources.StreamSource(stream);
//Create an instance of Image
using (Aspose.Imaging.RasterImage image = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Create(gifOptions, 500, 500))
{
//Get the pixels of image by specifying the area as image boundary
Aspose.Imaging.Color[] pixels = image.LoadPixels(image.Bounds);
//Loop over the Array and sets color of alrenative indexed pixel
for (int index = 0; index < pixels.Length; index++)
{
if (index % 2 == 0)
{
//Set the indexed pixel color to yellow
pixels[index] = Aspose.Imaging.Color.Yellow;
}
else
{
//Set the indexed pixel color to blue
pixels[index] = Aspose.Imaging.Color.Blue;
}
}
//Apply the pixel changes to the image
image.SavePixels(image.Bounds, pixels);
// save all changes.
image.Save();
}
// Write MemoryStream to File
using (System.IO.FileStream fileStream = new System.IO.FileStream(@"C:\temp\output.gif", System.IO.FileMode.Create))
{
stream.WriteTo(fileStream);
}
}
StreamSource(Πυροβολισμοί, Bool)
Αρχίζει μια νέα περίπτωση της κατηγορίας Aspose.Imaging.Sources.StreamSource.
public StreamSource(Stream stream, bool disposeStream)
Parameters
stream
Stream
Το ρεύμα ανοίγει.
disposeStream
bool
Εάν ορίσετε το “πραγματικό” το ρεύμα θα διαγραφεί.
Examples
Αυτό το παράδειγμα δείχνει τη χρήση του System.IO.Stream για τη δημιουργία ενός νέου αρχείου εικόνας (ένας τύπος JPEG)
//Creates an instance of JpegOptions and set its various properties
Aspose.Imaging.ImageOptions.JpegOptions jpegOptions = new Aspose.Imaging.ImageOptions.JpegOptions();
//Create an instance of System.IO.Stream
System.IO.Stream stream = new System.IO.FileStream(@"C:\temp\sample.jpeg", System.IO.FileMode.Create);
//Define the source property for the instance of JpegOptions
//Second boolean parameter determins if the Stream is disposed once get out of scope
jpegOptions.Source = new Aspose.Imaging.Sources.StreamSource(stream, true);
//Creates an instance of Image and call Create method with JpegOptions as parameter to initialize the Image object
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Create(jpegOptions, 500, 500))
{
//do some image processing
}
Properties
DisposeStream
Λαμβάνει μια τιμή που υποδεικνύει εάν το ρεύμα πρέπει να απορριφθεί κάθε φορά που το δοχείο απορριφθεί.
public bool DisposeStream { get; }
Αξία ιδιοκτησίας
Stream
Πάρτε το ρεύμα.
public Stream Stream { get; }
Αξία ιδιοκτησίας
Methods
GetStreamContainer()
Πάρτε το δοχείο ροής.
public override StreamContainer GetStreamContainer()
Returns
Η ροή του δοχείου.
Remarks
Χρησιμοποιήστε με προσοχή.Θα χρειαστεί να διαλύσετε το δοχείο ροής μετά την ανάκτηση.