LICCProfile::ConvertDoubleTo2bFixed2bNumber

#include "ltwrappr.h"

static L_UINT32 LICCProfile::ConvertDoubleTo2bFixed2bNumber(dNumber);

L_DOUBLE dNumber;

/* double value */

Converts a fraction number into a 2-bytes fixed, 2-bytes fraction format.

Parameter

Description

dNumber

A value that represents the double fractional value to convert.

Returns

A 4-byte (2-bytes fixed, 2-bytes fraction) value that represents the value passed to the function.

Comments

This function is used for ICC profiles purposes. The returned value must be cast into one of the following types: L_IccS15Fixed16Number or L_IccU16Fixed16Number.

Each of these types is 4-bytes, divided into 2-bytes that contain the fixed part of the number, and 2-bytes that contain the fractional part of the number.

The (2b) found in the function name means (2-bytes).

Required DLLs and Libraries

LTCLR

LTFIL

For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application.

See Also

Functions:

LICCProfile::Free, LICCProfile::Initialize, LICCProfile::Load, LICCProfile::Save, LICCProfile::Fill, LICCProfile::InitHeader, LICCProfile::SetCMMType, LICCProfile::SetDeviceClass, LICCProfile::SetColorSpace, LICCProfile::SetConnectionSpace, LICCProfile::SetPrimaryPlatform, LICCProfile::SetFlags, LICCProfile::SetDevManufacturer, LICCProfile::SetDevModel, LICCProfile::SetDeviceAttributes, LICCProfile::SetRenderingIntent, LICCProfile::SetCreator, LICCProfile::SetDateTime, LICCProfile::Convert2bFixed2bNumberToDouble, LICCProfile::SetTagData, LICCProfile::GetTagData, LICCProfile::CreateTagData, LICCProfile::DeleteTag, LICCProfile::GenerateFile, LICCProfile::GeneratePointer, LICCProfile::GetTagTypeSig, LICCProfile::FreeTagType, Class Members

Topics:

Using ICC Profile Functions

 

ICC Profile Functions: Tags

Example

L_VOID Test()
{
   /* This example defines a double fractional value, and converts it into 2-bytes fixed, 2-bytes fraction value, and then converts it back into double */
   L_DOUBLE dNumber; 
   L_IccU16Fixed16Number uIccNumber; 
   dNumber = 1.9858; 
   uIccNumber = (L_IccU16Fixed16Number) LICCProfile::ConvertDoubleTo2bFixed2bNumber(dNumber); 
   dNumber = LICCProfile::Convert2bFixed2bNumberToDouble (uIccNumber); 
}