Class StreamHelper
Helper class for working with streams and detecting image types.
Inheritance
Namespace: IronWord.Models.Extensions
Assembly: IronWord.dll
Syntax
public static class StreamHelper : Object
StreamHelper reads image data straight from a stream so a developer can detect a picture's format and encode it without first writing it to disk. The two methods are extensions, so they read as methods on the stream itself once the IronWord.Models.Extensions namespace is in scope. They are useful when an image arrives as an upload, a database blob, or an in-memory buffer rather than a file on disk.
GetImageType inspects the content of a stream and returns the detected format as an ImageType value (such as Png or Jpeg), with overloads for a FileStream, a MemoryStream, and a general Stream, so detection works regardless of how the bytes were obtained. ToBase64 reads a stream and returns its Base64 string, ready to embed in markup or store as text, with overloads for a FileStream and a general Stream. Each call works from the stream you already hold, so an uploaded picture can be checked for its type and converted to Base64 in the same pass before it is added to a document.
using FileStream stream = File.OpenRead("logo.png");
ImageType type = stream.GetImageType();The add image how-to inserts a picture, and the extract images how-to reads them back out.
Methods
GetImageType(FileStream)
Determines the image type based on the content of the file stream.
Declaration
public static ImageType GetImageType(this FileStream stream)
Parameters
| Type | Name | Description |
|---|---|---|
| System.IO.FileStream | stream | The input file stream to analyze. |
Returns
| Type | Description |
|---|---|
| ImageType | The detected image type. |
GetImageType(MemoryStream)
Determines the image type based on the content of the stream.
Declaration
public static ImageType GetImageType(this MemoryStream stream)
Parameters
| Type | Name | Description |
|---|---|---|
| System.IO.MemoryStream | stream | The input stream to analyze. |
Returns
| Type | Description |
|---|---|
| ImageType | The detected image type. |
GetImageType(Stream)
Determines the image type based on the content of the stream.
Declaration
public static ImageType GetImageType(this Stream stream)
Parameters
| Type | Name | Description |
|---|---|---|
| System.IO.Stream | stream | The input stream to analyze. |
Returns
| Type | Description |
|---|---|
| ImageType | The detected image type. |
ToBase64(FileStream)
Converts the content of the file stream to a base64-encoded string.
Declaration
public static string ToBase64(this FileStream stream)
Parameters
| Type | Name | Description |
|---|---|---|
| System.IO.FileStream | stream | The input file stream to convert. |
Returns
| Type | Description |
|---|---|
| System.String | A base64-encoded string representing the file stream content. |
ToBase64(Stream)
Converts the content of the stream to a base64-encoded string.
Declaration
public static string ToBase64(this Stream stream)
Parameters
| Type | Name | Description |
|---|---|---|
| System.IO.Stream | stream | The input stream to convert. |
Returns
| Type | Description |
|---|---|
| System.String | A base64-encoded string representing the stream content. |