Indicates which method should be called when an overlay is detected inside a file.
Syntax
Parameters
- callback
- The method which should be called when an overlay is detected. Use a null reference (Nothing in Visual Basic) to indicate that LEADTOOLS should handle overlays automatically.
- mode
- Indicates when should this method be called. See CodecsOverlayCallbackMode for possible values.
Example
This example will read a PTOKA file and overlays a TIF file on it
Visual Basic | Copy Code |
---|
Private Sub PtokaOverlayExample(ByVal ptokaFileName As String, ByVal ptokaFilesPath As String)
Dim codecs As RasterCodecs = New RasterCodecs()
Dim destFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "PtokaOverlay.tif")
' Set up the private variables used in the callback
myCodecs = codecs
myPtokaFilesPath = ptokaFilesPath
' Set the overlay callback
codecs.StartOverlay(AddressOf MyOverlayCallback, CodecsOverlayCallbackMode.CallLoad)
' Load the PTOKA file
Dim image As RasterImage = codecs.Load(ptokaFileName)
' Stop the overlay by resetting the old callback.
codecs.StopOverlay()
' Save the image as TIFF
codecs.Save(image, destFileName, RasterImageFormat.Tif, 1)
image.Dispose()
' Clean up
codecs.Dispose()
End Sub
Private myCodecs As RasterCodecs
Private myPtokaFilesPath As String
Private Sub MyOverlayCallback(ByVal data As CodecsOverlayData)
' Show overlay information
Console.WriteLine("File: {0}", data.FileName)
Console.WriteLine("Page Number: {0}", data.PageNumber)
Console.WriteLine("Info: {0}", data.Info)
' Construct the overlay file name
Dim overlayFileName As String = Path.Combine(myPtokaFilesPath, data.FileName)
If data.Info Then
' Info, we only need to fill in the .InfoXXX members of the data
Dim imageInfo As CodecsImageInfo = myCodecs.GetInformation(overlayFileName, False)
data.InfoWidth = imageInfo.Width
data.InfoHeight = imageInfo.Height
data.InfoXResolution = imageInfo.XResolution
data.InfoYResolution = imageInfo.YResolution
Else
' We need to load the overlay image into the .Image member
data.Image = myCodecs.Load(overlayFileName)
End If
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class |
C# | Copy Code |
---|
void PtokaOverlayExample(string ptokaFileName, string ptokaFilesPath)
{
RasterCodecs codecs = new RasterCodecs();
string destFileName = Path.Combine(LEAD_VARS.ImagesDir, "PtokaOverlay.tif");
// Set up the private variables used in the callback
myCodecs = codecs;
myPtokaFilesPath = ptokaFilesPath;
// Set the overlay callback
codecs.StartOverlay(MyOverlayCallback, CodecsOverlayCallbackMode.CallLoad);
// Load the PTOKA file
RasterImage image = codecs.Load(ptokaFileName);
// Stop the overlay by resetting the old callback.
codecs.StopOverlay();
// Save the image as TIFF
codecs.Save(image, destFileName, RasterImageFormat.Tif, 1);
image.Dispose();
// Clean up
codecs.Dispose();
}
RasterCodecs myCodecs;
string myPtokaFilesPath;
void MyOverlayCallback(CodecsOverlayData data)
{
// Show overlay information
Console.WriteLine("File: {0}", data.FileName);
Console.WriteLine("Page Number: {0}", data.PageNumber);
Console.WriteLine("Info: {0}", data.Info);
// Construct the overlay file name
string overlayFileName = Path.Combine(myPtokaFilesPath, data.FileName);
if(data.Info)
{
// Info, we only need to fill in the .InfoXXX members of the data
CodecsImageInfo imageInfo = myCodecs.GetInformation(overlayFileName, false);
data.InfoWidth = imageInfo.Width;
data.InfoHeight = imageInfo.Height;
data.InfoXResolution = imageInfo.XResolution;
data.InfoYResolution = imageInfo.YResolution;
}
else
{
// We need to load the overlay image into the .Image member
data.Image = myCodecs.Load(overlayFileName);
}
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
} |
SilverlightCSharp | Copy Code |
---|
|
SilverlightVB | Copy Code |
---|
|
Remarks
Requirements
Target Platforms: Silverlight, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only)
See Also