本文整理汇总了C++中CPDFDoc_Environment::GetCurrentDoc方法的典型用法代码示例。如果您正苦于以下问题:C++ CPDFDoc_Environment::GetCurrentDoc方法的具体用法?C++ CPDFDoc_Environment::GetCurrentDoc怎么用?C++ CPDFDoc_Environment::GetCurrentDoc使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CPDFDoc_Environment
的用法示例。
在下文中一共展示了CPDFDoc_Environment::GetCurrentDoc方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: calculate
FX_BOOL app::calculate(OBJ_PROP_PARAMS)
{
if (vp.IsSetting())
{
bool bVP;
vp >> bVP;
m_bCalculate = (FX_BOOL)bVP;
CJS_Context* pContext = (CJS_Context*)cc;
ASSERT(pContext != NULL);
CPDFDoc_Environment* pApp = pContext->GetReaderApp();
ASSERT(pApp != NULL);
CJS_Runtime* pRuntime = pContext->GetJSRuntime();
ASSERT(pRuntime != NULL);
CJS_Array aDocs(pRuntime->GetIsolate());
// int iNumDocs = pApp->CountDocuments();
//
// for (int iIndex = 0;iIndex < iNumDocs; iIndex++)
// {
if (CPDFSDK_Document* pDoc = pApp->GetCurrentDoc())
{
CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDoc->GetInterForm();
ASSERT(pInterForm != NULL);
pInterForm->EnableCalculate((FX_BOOL)m_bCalculate);
}
// }
}
示例2: activeDocs
FX_BOOL app::activeDocs(OBJ_PROP_PARAMS)
{
if (vp.IsGetting())
{
CJS_Context* pContext = (CJS_Context *)cc;
ASSERT(pContext != NULL);
CPDFDoc_Environment* pApp = pContext->GetReaderApp();
ASSERT(pApp != NULL);
CJS_Runtime* pRuntime = pContext->GetJSRuntime();
ASSERT(pRuntime != NULL);
CPDFSDK_Document* pCurDoc = pContext->GetReaderDocument();
CJS_Array aDocs(pRuntime->GetIsolate());
// int iNumDocs = pApp->CountDocuments();
// for(int iIndex = 0; iIndex<iNumDocs; iIndex++)
// {
CPDFSDK_Document* pDoc = pApp->GetCurrentDoc();
if (pDoc)
{
CJS_Document * pJSDocument = NULL;
if (pDoc == pCurDoc)
{
JSFXObject pObj = JS_GetThisObj(*pRuntime);
if (JS_GetObjDefnID(pObj) == JS_GetObjDefnID(*pRuntime, L"Document"))
{
pJSDocument = (CJS_Document*)JS_GetPrivate(pRuntime->GetIsolate(),pObj);
}
}
else
{
JSFXObject pObj = JS_NewFxDynamicObj(*pRuntime, pContext, JS_GetObjDefnID(*pRuntime,L"Document"));
pJSDocument = (CJS_Document*)JS_GetPrivate(pRuntime->GetIsolate(),pObj);
ASSERT(pJSDocument != NULL);
// pDocument->AttachDoc(pDoc);
}
aDocs.SetElement(0,CJS_Value(pRuntime->GetIsolate(),pJSDocument));
}
// }
if (aDocs.GetLength() > 0)
vp << aDocs;
else
vp.SetNull();
return TRUE;
}
return FALSE;
}
示例3:
DLLEXPORT void STDCALL FPDF_FFLDraw(FPDF_FORMHANDLE hHandle, FPDF_BITMAP bitmap, FPDF_PAGE page, int start_x, int start_y,
int size_x, int size_y, int rotate, int flags)
{
if (!hHandle || !page)
return ;
CPDF_Page* pPage = (CPDF_Page*)page;
CPDF_RenderOptions options;
if (flags & FPDF_LCD_TEXT)
options.m_Flags |= RENDER_CLEARTYPE;
else
options.m_Flags &= ~RENDER_CLEARTYPE;
//Grayscale output
if (flags & FPDF_GRAYSCALE)
{
options.m_ColorMode = RENDER_COLOR_GRAY;
options.m_ForeColor = 0;
options.m_BackColor = 0xffffff;
}
options.m_AddFlags = flags >> 8;
options.m_pOCContext = FX_NEW CPDF_OCContext(pPage->m_pDocument);
//FXMT_CSLOCK_OBJ(&pPage->m_PageLock);
CFX_AffineMatrix matrix;
pPage->GetDisplayMatrix(matrix, start_x, start_y, size_x, size_y, rotate);
FX_RECT clip;
clip.left = start_x;
clip.right = start_x + size_x;
clip.top = start_y;
clip.bottom = start_y + size_y;
#ifdef _SKIA_SUPPORT_
CFX_SkiaDevice* pDevice = FX_NEW CFX_SkiaDevice;
#else
CFX_FxgeDevice* pDevice = NULL;
pDevice = FX_NEW CFX_FxgeDevice;
#endif
if (!pDevice)
return;
pDevice->Attach((CFX_DIBitmap*)bitmap);
pDevice->SaveState();
pDevice->SetClip_Rect(&clip);
CPDF_RenderContext* pContext = NULL;
pContext = FX_NEW CPDF_RenderContext;
if (!pContext)
{
delete pDevice;
pDevice = NULL;
return;
}
// CPDF_Document* pDoc = pPage->m_pDocument;
CPDFDoc_Environment* pEnv = (CPDFDoc_Environment*)hHandle;
CPDFSDK_Document* pFXDoc = pEnv->GetCurrentDoc();
if(!pFXDoc)
{
delete pContext;
delete pDevice;
pContext = NULL;
pDevice = NULL;
return;
}
if(CPDFSDK_PageView* pPageView = pFXDoc->GetPageView(pPage))
{
pPageView->PageView_OnDraw(pDevice, &matrix, &options);
}
pDevice->RestoreState();
if(options.m_pOCContext)
{
delete options.m_pOCContext;
options.m_pOCContext = NULL;
}
if(pContext)
{
delete pContext;
pContext = NULL;
}
if(pDevice)
{
delete pDevice;
pDevice = NULL;
}
}