当前位置: 首页>>代码示例>>C++>>正文


C++ ImgFile_Ptr::GetLayerSize方法代码示例

本文整理汇总了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;
}
开发者ID:,项目名称:,代码行数:55,代码来源:


注:本文中的ImgFile_Ptr::GetLayerSize方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。