本文整理汇总了C++中CPDF_PageObject::IsPath方法的典型用法代码示例。如果您正苦于以下问题:C++ CPDF_PageObject::IsPath方法的具体用法?C++ CPDF_PageObject::IsPath怎么用?C++ CPDF_PageObject::IsPath使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CPDF_PageObject
的用法示例。
在下文中一共展示了CPDF_PageObject::IsPath方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ToDictionary
DLLEXPORT FPDF_BOOL STDCALL
FPDFPageObj_HasTransparency(FPDF_PAGEOBJECT pageObject) {
if (!pageObject)
return FALSE;
CPDF_PageObject* pPageObj = reinterpret_cast<CPDF_PageObject*>(pageObject);
int blend_type = pPageObj->m_GeneralState.GetBlendType();
if (blend_type != FXDIB_BLEND_NORMAL)
return TRUE;
CPDF_Dictionary* pSMaskDict =
ToDictionary(pPageObj->m_GeneralState.GetSoftMask());
if (pSMaskDict)
return TRUE;
if (pPageObj->m_GeneralState.GetFillAlpha() != 1.0f)
return TRUE;
if (pPageObj->IsPath() && pPageObj->m_GeneralState.GetStrokeAlpha() != 1.0f) {
return TRUE;
}
if (pPageObj->IsForm()) {
const CPDF_Form* pForm = pPageObj->AsForm()->form();
if (pForm) {
int trans = pForm->m_Transparency;
if ((trans & PDFTRANS_ISOLATED) || (trans & PDFTRANS_GROUP))
return TRUE;
}
}
return FALSE;
}