←Select platform

ReadFromImage(string,int) Method

Summary
Loads an embedded ICC profile from a file.
Syntax
C#
C++/CLI
Python
public void ReadFromImage( 
   string fileName, 
   int pageNumber 
) 
public: 
void ReadFromImage(  
   String^ fileName, 
   int pageNumber 
)  
def ReadFromImage(self,fileName,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.

Remarks
  • ICC profiles can be loaded from EPS, JPEG, PNG, PICT, PSD or TIFF 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.
Example

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

C#
using Leadtools; 
using Leadtools.ColorConversion; 
 
using Leadtools.Codecs; 
 
public string IccfileName = Path.Combine(LEAD_VARS.ImagesDir, "ReadFromImage.icc"); 
 
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, "11800-Embedded_RGB.png"); 
 
   // If image has ICC profile then load it 
   if (IccProfileExtended.ImageHasIccProfile(fileName, 1)) 
      iccProfile.ReadFromImage(fileName, 1); 
   else 
      throw new Exception("ICC Profile not found"); 
 
   // At this point, the iccProfile object contains the ICC profile that was found in the image 
   // For this example, save it in a seperate ICC profile file 
   // Generate the profileId. For the time being, it will be filled with 0's 
   iccProfile.GenerateProfileId(); 
 
   // Generate the new ICC profile by updating the Data Array and then generating the file 
   iccProfile.UpdateDataArray(); 
   iccProfile.GenerateIccFile(IccfileName); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.ColorConversion Assembly

Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.