本文整理汇总了C++中ImgFile_Ptr::GetLayerSize方法的典型用法代码示例。如果您正苦于以下问题:C++ ImgFile_Ptr::GetLayerSize方法的具体用法?C++ ImgFile_Ptr::GetLayerSize怎么用?C++ ImgFile_Ptr::GetLayerSize使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ImgFile_Ptr
的用法示例。
在下文中一共展示了ImgFile_Ptr::GetLayerSize方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: IEIO_LoadImgFile
IEIO_EXPORT bool IEIO_LoadImgFile(
const char* filePath,
ImgFile_Ptr pFile)
{
if(filePath == NULL) return NULL;
FILE* fp;
errno_t err;
//if(err = fopen_s(&fp, filePath, "rb") != 0){
if(!(fp = fopen(filePath, "rb"))){
char str[256];
int last_err = GetLastError();
sprintf(str, "PSDファイルの読み込みに失敗しました。 %s err = %d lasterror = %d", filePath, last_err);
OutputError::Alert(str);
return false;
}
//read psd header
PsdHeader header;
if(!read_psd_header(fp, pFile, &header)){
fclose(fp);
return false;
}
//
if(!read_psd_color_mode_data(fp, pFile)){
fclose(fp);
return false;
}
//
if(!read_psd_image_resource(fp, pFile)){
fclose(fp);
return false;
}
//
if(!read_psd_layer_and_mask(fp, pFile, &header)){
fclose(fp);
return false;
}
//
if(pFile->GetLayerSize() == 0){
if(!read_psd_merged_image(fp, pFile, &header)){
fclose(fp);
return false;
}
}
fclose(fp);
//
NullHandle* null_handle = (NullHandle*) pFile->CreateImgFileHandle(IFH_NULL);
strcpy_s(null_handle->handle_name, MAX_IMG_FILE_HANDLE_NAME, "PSDファイル読み込み");
pFile->DoImgFileHandle( null_handle );
return true;
}