LEADTOOLS Color Conversion (Leadtools.ColorConversion assembly) Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.29
ReadFromImage(String,Int32) Method
See Also 
Leadtools.ColorConversion Namespace > IccProfileExtended Class > ReadFromImage Method : ReadFromImage(String,Int32) Method



fileName
Character string containing the name of the file that contains the embedded ICC profile.
pageNumber
1-based index of the page within the file that contains the ICC profile.
fileName
Character string containing the name of the file that contains the embedded ICC profile.
pageNumber
1-based index of the page within the file that contains the ICC profile.
Loads an embedded ICC profile from a file.

Syntax

Visual Basic (Declaration) 
Overloads Public Sub ReadFromImage( _
   ByVal fileName As String, _
   ByVal pageNumber As Integer _
) 
Visual Basic (Usage)Copy Code
Dim instance As IccProfileExtended
Dim fileName As String
Dim pageNumber As Integer
 
instance.ReadFromImage(fileName, pageNumber)
C# 
public void ReadFromImage( 
   string fileName,
   int pageNumber
)
C++/CLI 
public:
void ReadFromImage( 
   String^ fileName,
   int pageNumber
) 

Parameters

fileName
Character string containing the name of the file that contains the embedded ICC profile.
pageNumber
1-based index of the page within the file that contains the ICC profile.

Example

This example loads an ICC profile that is embedded in an image, and saves it as a seperate ICC profile file.

Visual BasicCopy Code
Public Sub ReadFromImageExample()
      ' create an ICC profile object
      Dim iccProfile As New IccProfileExtended()

      ' load the ICC from an image, by specifying the image's name, and the 1-based page number that contains the ICC.
      ' to load the ICC from an Image that is in a stream, put the stream instead of the file name.
      iccProfile.ReadFromImage(Path.Combine(LEAD_VARS.ImagesDir, "ImageWithIcc.tif"), 1)

      ' at this point, the iccProfile object contains the ICC profile that was found in the image,
      ' you can use it as you want, but for this example, we will save it in a seperate ICC profile file.
      ' generate the profileId. For the time being, it will be filled with 0's
      iccProfile.GenerateProfileId()

      ' finally generate the new Icc Profile by updating the Data Array
      ' and then generating the file
      iccProfile.UpdateDataArray()
      iccProfile.GenerateIccFile(Path.Combine(LEAD_VARS.ImagesDir, "ReadFromImageVB.icc"))
   End Sub

Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
C#Copy Code
public void ReadFromImageExample()
   {
      // create an ICC profile object
      IccProfileExtended iccProfile = new IccProfileExtended();

      // load the ICC from an image, by specifying the image's name, and the 1-based page number that contains the ICC.
      // to load the ICC from an Image that is in a stream, put the stream instead of the file name.
      string fileName = Path.Combine(LEAD_VARS.ImagesDir, "ImageWithIcc.tif");
      iccProfile.ReadFromImage(fileName, 1);

      // at this point, the iccProfile object contains the ICC profile that was found in the image,
      // you can use it as you want, but for this example, we will save it in a seperate ICC profile file.
      // generate the profileId. For the time being, it will be filled with 0's
      iccProfile.GenerateProfileId();

      // finally generate the new Icc Profile by updating the Data Array
      // and then generating the file
      iccProfile.UpdateDataArray();
      string IccfileName = Path.Combine(LEAD_VARS.ImagesDir, "ReadFromImageCS.icc");
      iccProfile.GenerateIccFile(IccfileName);
   }

static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
SilverlightCSharpCopy Code
SilverlightVBCopy Code

Remarks

ICC profiles can be loaded from JPEG, TIFF or EPS files. For multipage files, you can save the profile to a particular page using the pageNumber parameter. If the ICC profile loaded was version 4.0 or 4.2, its data will be extracted into the class members. Otherwise, the ICC profile is kept as one piece in the Data array.

Requirements

Target Platforms: Silverlight 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only)

See Also