本文整理汇总了C++中CPDFDoc_Environment::FFI_Invalidate方法的典型用法代码示例。如果您正苦于以下问题:C++ CPDFDoc_Environment::FFI_Invalidate方法的具体用法?C++ CPDFDoc_Environment::FFI_Invalidate怎么用?C++ CPDFDoc_Environment::FFI_Invalidate使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CPDFDoc_Environment
的用法示例。
在下文中一共展示了CPDFDoc_Environment::FFI_Invalidate方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: InvalidateRect
void CFX_SystemHandler::InvalidateRect(FX_HWND hWnd, FX_RECT rect) {
// g_pFormFillApp->FFI_Invalidate();
CPDFSDK_Annot* pSDKAnnot = (CPDFSDK_Annot*)hWnd;
CPDF_Page* pPage = NULL;
CPDFSDK_PageView* pPageView = NULL;
pPageView = pSDKAnnot->GetPageView();
pPage = pSDKAnnot->GetPDFPage();
if (!pPage || !pPageView)
return;
CPDF_Matrix page2device;
pPageView->GetCurrentMatrix(page2device);
CPDF_Matrix device2page;
device2page.SetReverse(page2device);
FX_FLOAT left, top, right, bottom;
device2page.Transform((FX_FLOAT)rect.left, (FX_FLOAT)rect.top, left, top);
device2page.Transform((FX_FLOAT)rect.right, (FX_FLOAT)rect.bottom, right,
bottom);
// m_pEnv->FFI_DeviceToPage(pPage, rect.left, rect.top, (double*)&left,
// (double*)&top);
// m_pEnv->FFI_DeviceToPage(pPage, rect.right, rect.bottom, (double*)&right,
// (double*)&bottom);
CPDF_Rect rcPDF(left, bottom, right, top);
rcPDF.Normalize();
m_pEnv->FFI_Invalidate(pPage, rcPDF.left, rcPDF.top, rcPDF.right,
rcPDF.bottom);
}
示例2: UpdateView
void CPDFSDK_PageView::UpdateView(CPDFSDK_Annot* pAnnot)
{
CPDF_Rect rcWindow = pAnnot->GetRect();
CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv();
pEnv->FFI_Invalidate(
m_page, rcWindow.left, rcWindow.top, rcWindow.right, rcWindow.bottom);
}
示例3: UpdateRects
void CPDFSDK_PageView::UpdateRects(CFX_RectArray& rects) {
for (int i = 0; i < rects.GetSize(); i++) {
CPDF_Rect rc = rects.GetAt(i);
CPDFDoc_Environment* pEnv = m_pSDKDoc->GetEnv();
pEnv->FFI_Invalidate(m_page, rc.left, rc.top, rc.right, rc.bottom);
}
}