TEST_F(FPDFViewEmbeddertest, Page) { EXPECT_TRUE(OpenDocument("about_blank.pdf")); FPDF_PAGE page = LoadPage(0); EXPECT_NE(nullptr, page); EXPECT_EQ(612.0, FPDF_GetPageWidth(page)); EXPECT_EQ(792.0, FPDF_GetPageHeight(page)); UnloadPage(page); EXPECT_EQ(nullptr, LoadPage(1)); }
Status FillPersistentMemory(Reference reference, int count, byte data) { Status result = OK; int pageIndex = reference / FLASH_PAGE_SIZE; int pageOffset = pageIndex * FLASH_PAGE_SIZE; Reference pageBase = pageOffset; int workIndex = reference - pageOffset; while ((result == OK) && (count > 0)) { int i; int end = workIndex + count; if (end > FLASH_PAGE_SIZE) { end = FLASH_PAGE_SIZE; } LoadPage(pageBase); for (i = workIndex; i < end; ++i) { workMemory[i] = data; } result = StorePage(pageBase); workIndex = 0; pageBase += FLASH_PAGE_SIZE; count -= end - workIndex; } return result; }
BOOL CuDlgIpmTabCtrl::OnInitDialog() { CDialog::OnInitDialog(); VERIFY (m_staticHeader.SubclassDlgItem (IDC_STATIC, this)); m_staticHeader.SetImage (-1); // No Image for Now CWnd* pParent1 = GetParent(); // The view: CImView2 ASSERT (pParent1); CdIpmDoc* pDoc = (CdIpmDoc*)((CView*)pParent1)->GetDocument(); ASSERT (pDoc); if (!pDoc->GetCurrentProperty()) return TRUE; // // When the document is Loaded ... try { CfIpmFrame* pFrame = (CfIpmFrame*)GetParentFrame(); CvIpmLeft* pIpmView1= (CvIpmLeft*)pFrame->GetLeftPane(); CTreeCtrl& treeCtrl = pIpmView1->GetTreeCtrl(); HTREEITEM hSelected= treeCtrl.GetSelectedItem (); ASSERT (hSelected); if (!hSelected) return TRUE; CTreeItem* pItem = (CTreeItem*)treeCtrl.GetItemData (hSelected); CuPageInformation* pPageInfo = pDoc->GetCurrentProperty()->GetPageInfo(); LPIPMUPDATEPARAMS pUps = pPageInfo->GetUpdateParam(); pUps->nType = pItem->GetType(); pUps->pStruct = pItem->GetPTreeItemData()? pItem->GetPTreeItemData()->GetDataPtr(): NULL; pUps->pSFilter= pDoc->GetFilter(); int nImage = -1, nSelectedImage = -1; CImageList* pImageList = treeCtrl.GetImageList (TVSIL_NORMAL); HICON hIcon = NULL; int nImageCount = pImageList? pImageList->GetImageCount(): 0; if (pImageList && treeCtrl.GetItemImage(hSelected, nImage, nSelectedImage)) { if (nImage < nImageCount) hIcon = pImageList->ExtractIcon(nImage); } pPageInfo->SetImage (hIcon); LoadPage (pDoc->GetCurrentProperty()); m_bIsLoading = TRUE; if (m_pCurrentPage) { UINT nMask = IPMMASK_FONT|IPMMASK_SHOWGRID; m_pCurrentPage->SendMessage (WMUSRMSG_CHANGE_SETTING, (UINT)nMask, (LPARAM)&(pDoc->GetProperty())); } } catch (CMemoryException* e) { theApp.OutOfMemoryMessage (); m_pCurrentPage = NULL; m_pCurrentProperty = NULL; e->Delete(); } return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
TEST_F(FPDFStructTreeEmbedderTest, GetType) { ASSERT_TRUE(OpenDocument("tagged_alt_text.pdf")); FPDF_PAGE page = LoadPage(0); ASSERT_TRUE(page); { ScopedFPDFStructTree struct_tree(FPDF_StructTree_GetForPage(page)); ASSERT_TRUE(struct_tree); ASSERT_EQ(1, FPDF_StructTree_CountChildren(struct_tree.get())); FPDF_STRUCTELEMENT element = FPDF_StructTree_GetChildAtIndex(struct_tree.get(), 0); ASSERT_NE(nullptr, element); unsigned short buffer[12]; memset(buffer, 0, sizeof(buffer)); // Deliberately pass in a small buffer size to make sure |buffer| remains // untouched. ASSERT_EQ(18U, FPDF_StructElement_GetType(element, buffer, 1)); for (size_t i = 0; i < FX_ArraySize(buffer); ++i) EXPECT_EQ(0U, buffer[i]); ASSERT_EQ(18U, FPDF_StructElement_GetType(element, buffer, sizeof(buffer))); const wchar_t kExpected[] = L"Document"; EXPECT_EQ(WideString(kExpected), WideString::FromUTF16LE(buffer, FXSYS_len(kExpected))); } UnloadPage(page); }
void CGUIManager::PushPage(const CStrW& pageName, shared_ptr<ScriptInterface::StructuredClone> initData) { m_PageStack.push_back(SGUIPage()); m_PageStack.back().name = pageName; m_PageStack.back().initData = initData; LoadPage(m_PageStack.back()); }
void CGUIManager::PushPage(const CStrW& pageName, CScriptVal initData) { m_PageStack.push_back(SGUIPage()); m_PageStack.back().name = pageName; m_PageStack.back().initData = CScriptValRooted(m_ScriptInterface.GetContext(), initData); LoadPage(m_PageStack.back()); }
int OGRESRIFeatureServiceDataset::LoadNextPage() { if( !poCurrent->HasOtherPages() ) return FALSE; nLastOffset += poCurrent->GetLayer(0)->GetFeatureCount(); return LoadPage(); }
TEST_F(FPDFDocEmbedderTest, ActionURI) { EXPECT_TRUE(OpenDocument("uri_action.pdf")); FPDF_PAGE page = LoadPage(0); ASSERT_TRUE(page); // The target action is nearly the size of the whole page. FPDF_LINK link = FPDFLink_GetLinkAtPoint(page, 100, 100); ASSERT_TRUE(link); FPDF_ACTION action = FPDFLink_GetAction(link); ASSERT_TRUE(action); EXPECT_EQ(static_cast<unsigned long>(PDFACTION_URI), FPDFAction_GetType(action)); const char kExpectedResult[] = "https://example.com/page.html"; const unsigned long kExpectedLength = sizeof(kExpectedResult); unsigned long bufsize = FPDFAction_GetURIPath(document(), action, nullptr, 0); ASSERT_EQ(kExpectedLength, bufsize); char buf[1024]; EXPECT_EQ(bufsize, FPDFAction_GetURIPath(document(), action, buf, bufsize)); EXPECT_STREQ(kExpectedResult, buf); // Other public methods are not appropriate for URI actions EXPECT_EQ(nullptr, FPDFAction_GetDest(document(), action)); EXPECT_EQ(0u, FPDFAction_GetFilePath(action, buf, sizeof(buf))); UnloadPage(page); }
void CreateAndInitializeFormPDF() { EXPECT_TRUE(OpenDocument("text_form_multiple.pdf")); m_page = LoadPage(0); ASSERT_TRUE(m_page); m_pFormFillEnv = CPDFSDKFormFillEnvironmentFromFPDFFormHandle(form_handle()); CPDFSDK_AnnotIterator iter(m_pFormFillEnv->GetPageView(0), CPDF_Annot::Subtype::WIDGET); // Normal text field. m_pAnnot = iter.GetFirstAnnot(); ASSERT_TRUE(m_pAnnot); ASSERT_EQ(CPDF_Annot::Subtype::WIDGET, m_pAnnot->GetAnnotSubtype()); // Read-only text field. CPDFSDK_Annot* pAnnotReadOnly = iter.GetNextAnnot(m_pAnnot); // Pre-filled text field with char limit of 10. m_pAnnotCharLimit = iter.GetNextAnnot(pAnnotReadOnly); ASSERT_TRUE(m_pAnnotCharLimit); ASSERT_EQ(CPDF_Annot::Subtype::WIDGET, m_pAnnotCharLimit->GetAnnotSubtype()); CPDFSDK_Annot* pLastAnnot = iter.GetLastAnnot(); ASSERT_EQ(m_pAnnotCharLimit, pLastAnnot); }
Status WritePage(Reference pageBase, int index, int length, void* buffer, int* written) { LoadPage(pageBase); *written = (index + length <= FLASH_PAGE_SIZE) ? length : FLASH_PAGE_SIZE - index; ModifyPageData(index, *written, buffer); return StorePage(pageBase); }
TEST_F(FPDFParserEmbeddertest, Bug_481363) { // Test colorspace object with malformed dictionary. EXPECT_TRUE(OpenDocument("testing/resources/bug_481363.pdf")); FPDF_PAGE page = LoadPage(0); EXPECT_NE(nullptr, page); UnloadPage(page); }
void InitFCode( void ) { //========================= // Setup for accessing F-Codes from object memory. LoadPage( 0 ); ObjPtr = ObjCode; }
Status CGUIManager::ReloadAllPages() { // TODO: this can crash if LoadPage runs an init script which modifies the page stack and breaks our iterators for (PageStackType::iterator it = m_PageStack.begin(); it != m_PageStack.end(); ++it) LoadPage(*it); return INFO::OK; }
SceneryPage* SceneryZone::GetOrCreatePage(const SceneryPageKey& key) { PAGEMAP::iterator it = mPages.find(key); if(it != mPages.end()) return &it->second; return LoadPage(key); }
//--------------------------------------------------------------------------- void GUI_Main_HTML::GUI_Refresh() { std::string Temp(wxConvUTF8.cWX2MB(C->Inform_Get().c_str())); wxFileSystem::AddHandler(new wxMemoryFSHandler); wxMemoryFSHandler::AddFile(__T("index.html"), Temp.c_str(), Temp.size()); LoadPage(__T("memory:index.html")); wxMemoryFSHandler::RemoveFile(__T("index.html")); }
WebPageWindow::WebPageWindow(QString givenUrl,QWidget *parent) : QMainWindow(parent), ui(new Ui::WebPageWindow) { m_pUrl = new QUrl(givenUrl); this->Init(); LoadPage(); }
/// Retrieve BLOB from storage TThinMIn TPgBlob::Get(const TPgBlobPt& Pt) { char* Pg = LoadPage(Pt); TPgBlobPageItem* Item = GetItemRec(Pg, Pt.GetIIx()); char* Data; int Len = Item->Len; GetItem(Pg, Pt.GetIIx(), &Data, Len); return TThinMIn(Data, Len); }
TEST_F(FXGETextEmbedderTest, BadItalic) { // Shouldn't crash. EXPECT_TRUE(OpenDocument("bug_601362.pdf")); FPDF_PAGE page = LoadPage(0); EXPECT_NE(nullptr, page); FPDF_BITMAP bitmap = RenderPage(page); FPDFBitmap_Destroy(bitmap); UnloadPage(page); }
TEST_F(FXCodecEmbedderTest, Bug_631912) { // Test jbig2 image in PDF file can be loaded successfully. // Should not crash. EXPECT_TRUE(OpenDocument("bug_631912.pdf")); FPDF_PAGE page = LoadPage(0); ASSERT_TRUE(page); ScopedFPDFBitmap bitmap = RenderLoadedPage(page); CompareBitmap(bitmap.get(), 691, 432, "24d75af646f8772c5ee7ced260452ae4"); UnloadPage(page); }
TEST_F(FXCodecEmbeddertest, Bug_631912) { // Test jbig2 image in PDF file can be loaded successfully. // Should not crash. EXPECT_TRUE(OpenDocument("bug_631912.pdf")); FPDF_PAGE page = LoadPage(0); EXPECT_NE(nullptr, page); FPDF_BITMAP bitmap = RenderPage(page); FPDFBitmap_Destroy(bitmap); UnloadPage(page); }
TEST_F(FPDFRenderLoadImageEmbeddertest, Bug_557223) { // Should not crash EXPECT_TRUE(OpenDocument("bug_557223.pdf")); FPDF_PAGE page = LoadPage(0); EXPECT_NE(nullptr, page); FPDF_BITMAP bitmap = RenderPage(page); CompareBitmap(bitmap, 24, 24, "dc0ea1b743c2edb22c597cadc8537f7b"); FPDFBitmap_Destroy(bitmap); UnloadPage(page); }
TEST_F(FPDFRenderLoadImageEmbeddertest, Bug_603518) { // Should not crash EXPECT_TRUE(OpenDocument("bug_603518.pdf")); FPDF_PAGE page = LoadPage(0); EXPECT_NE(nullptr, page); FPDF_BITMAP bitmap = RenderPage(page); CompareBitmap(bitmap, 749, 749, "b9e75190cdc5edf0069a408744ca07dc"); FPDFBitmap_Destroy(bitmap); UnloadPage(page); }
static void JoinValue( void *ptr, int size, int part_1 ) { //============================================================ // Join value that is split across pages. memcpy( ptr, ObjPtr, part_1 ); LoadPage( CurrPage + 1 ); ObjPtr = ObjCode; memcpy( (char *)ptr + part_1, ObjPtr, size - part_1 ); ObjPtr += size - part_1; }
/// Create new page and return pointers to it void TPgBlob::CreateNewPage(TPgBlobPgPt& Pt, char** Bf) { // determine if last file is empty if (Files.Len() > 0) { // try to add to last file long Pg = Files.Last()->CreateNewPage(); if (Pg >= 0) { Pt.Set(Files.Len() - 1, (uint32)Pg); *Bf = LoadPage(Pt, false); InitPageP(*Bf); return; } } TStr NewFNm = FNm + ".bin" + TStr::GetNrNumFExt(Files.Len()); Files.Add(TPgBlobFile::New(NewFNm, TFAccess::faCreate, MxBlobFLen)); long Pg = Files.Last()->CreateNewPage(); EAssert(Pg >= 0); Pt.Set(Files.Len() - 1, (uint32)Pg); *Bf = LoadPage(Pt, false); InitPageP(*Bf); }
TEST_F(FPDFRenderLoadImageEmbeddertest, Bug_554151) { // Test scanline downsampling with a BitsPerComponent of 4. // Should not crash. EXPECT_TRUE(OpenDocument("bug_554151.pdf")); FPDF_PAGE page = LoadPage(0); EXPECT_NE(nullptr, page); FPDF_BITMAP bitmap = RenderPage(page); CompareBitmap(bitmap, 612, 792, "a14d7ee573c1b2456d7bf6b7762823cf"); FPDFBitmap_Destroy(bitmap); UnloadPage(page); }
int OGRESRIFeatureServiceDataset::ResetReading() { if( nLastOffset > nFirstOffset ) { nLastOffset = nFirstOffset; return LoadPage(); } poCurrent->GetLayer(0)->ResetReading(); return TRUE; }
// Test that the page has characters despite a bad stream length. TEST_F(FPDFTextEmbeddertest, StreamLengthPastEndOfFile) { EXPECT_TRUE(OpenDocument("testing/resources/bug_57.pdf")); FPDF_PAGE page = LoadPage(0); EXPECT_NE(nullptr, page); FPDF_TEXTPAGE textpage = FPDFText_LoadPage(page); EXPECT_NE(nullptr, textpage); EXPECT_EQ(13, FPDFText_CountChars(textpage)); FPDFText_ClosePage(textpage); UnloadPage(page); }
// NOTE: this must be called after all the other settings // to have the window and its controls displayed properly void CResizableSheet::EnableSaveRestore(LPCTSTR pszSection, BOOL bRectOnly, BOOL bWithPage) { m_sSection = pszSection; m_bSavePage = bWithPage; m_bEnableSaveRestore = TRUE; m_bRectOnly = bRectOnly; // restore immediately LoadWindowRect(pszSection, bRectOnly); LoadPage(); }
obj_ptr FCodeSeek( obj_ptr new_obj ) { //==================================== // Set ObjPtr to specified location. obj_ptr curr_obj; curr_obj = CurrPage; curr_obj = _MakeVirtual( curr_obj, ObjPtr ); LoadPage( _PageNumber( new_obj ) ); ObjPtr = _PageOffset( new_obj ); return( curr_obj ); }
obj_ptr ObjSeek( obj_ptr new_obj ) { //================================== // Seek to specifed location in F-Code stream. obj_ptr curr_obj; curr_obj = CurrPage; curr_obj = _MakeVirtual( curr_obj, ObjPtr ); LoadPage( _PageNumber( new_obj ) ); ObjPtr = _PageOffset( new_obj ); return( curr_obj ); }