I read the documentation and use dictionary for inserting bmp image into pdf file......
CosDoc cosDoc = PDDocGetCosDoc(doc);
CosObj imgDict = CosNewDict(cosDoc, false , 8);
CosDictPutKeyString(imgDict, "Type" , CosNewNameFromString(cosDoc, false , "XObject" ));
CosDictPutKeyString(imgDict, "Subtype" , CosNewNameFromString(cosDoc, false , "Image" ));
CosDictPutKeyString(imgDict, "ColorSpace" , CosNewNameFromString(cosDoc, false , "DeviceRGB" ));
CosDictPutKeyString(imgDict, "BitsPerComponent" , CosNewInteger(cosDoc, false , 8));
CosDictPutKeyString(imgDict, "Filter" , CosNewNameFromString(cosDoc, false , "DCTDecode" ));
CosDictPutKeyString(imgDict, "Height" , CosNewInteger(cosDoc, false , width));
CosDictPutKeyString(imgDict, "Width" , CosNewInteger(cosDoc, false , height));
// Construct a Cos stream from the input image data stream
//
cosStm = CosNewStream64(
cosDoc, // cos document to use the newly created stream
true , // cos stream is indirect object?
asStm, // input stream
0, // start reading from stream position
false , // stream is decoded?
imgDict, // attributes dictionary
CosNewNull(), // encode params
-1, // decode length
false // allowing delayed reading of input stream
);
pdeImage = PDEImageCreateFromCosObj(&cosStm, &imageMatrix, NULL, NULL);
But pdeImage is not creating............ It's again showing message "Out of memory".....