public IList<RasterMarkerMetadata> ReadMarkers(
Stream stream
)
- (nullable NSArray<LTRasterMarkerMetadata *> *)readMarkersFromStream:(LTLeadStream *)stream error:(NSError **)error
public List<RasterMarkerMetadata> readMarkers(ILeadStream stream)
public:
IList<RasterMarkerMetadata^>^ ReadMarkers(
Stream^ stream
)
def ReadMarkers(self,stream):
stream
A Stream containing the input file image data.
A collection of RasterMarkerMetadata objects containing the metadata marker data.
This method reads all the metadata markers from a file, and returns a collection of the markers.
Typically, JPEG and Exif JPEG files contain markers. Call RasterCodecs.MarkersSupported to find out if a certain file format supports markers.
For Exif files, this metadata collection will contain all the Exif and GPS comments, stored in APP1. It will also contain the audio information stored in APP2.
The marker data in APPn markers will typically start with a string identifying the type of data present in the marker. For example, the APP1 Exif marker will usually start with the 4-byte string "Exif" followed by 2 bytes of 0x00. That is because there can be many types of data stored in an APP1 marker. This simple convention is a good way of distinguishing between an Exif APP1 marker and another type of APP1 marker.
If the file contains no marker, then this method will return an empty collection.
This example will read all the markers from a stream that contains an EXIF file data
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Color;
using Leadtools.Svg;
void ReadMarkersFromStreamExample(Stream theStream)
{
RasterCodecs codecs = new RasterCodecs();
IList<RasterMarkerMetadata> markers = codecs.ReadMarkers(theStream);
Debug.WriteLine("{0} markers found with the following ID's:", markers.Count);
foreach (RasterMarkerMetadata marker in markers)
Debug.WriteLine(marker.Id);
codecs.Dispose();
}
import java.io.*;
import java.net.*;
import java.nio.file.Paths;
import java.util.*;
import java.time.Instant;
import java.time.Duration;
import org.junit.*;
import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;
import static org.junit.Assert.*;
import leadtools.*;
import leadtools.codecs.*;
import leadtools.codecs.RasterCodecs.FeedCallbackThunk;
import leadtools.drawing.internal.*;
import leadtools.imageprocessing.*;
import leadtools.imageprocessing.color.ChangeIntensityCommand;
import leadtools.svg.*;
public void readMarkersFromStreamExample() throws IOException {
final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images";
final String exifFileName = "cannon.jpg";
RasterCodecs codecs = new RasterCodecs();
ILeadStream ls = LeadStreamFactory.create(combine(LEAD_VARS_IMAGES_DIR, exifFileName));
List<RasterMarkerMetadata> markers = codecs.readMarkers(ls);
System.out.println(markers.size() + " markers found with the following ID's:");
for (RasterMarkerMetadata marker : markers)
System.out.println(marker.getId());
ls.close();
codecs.dispose();
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document