Quantcast
Channel: Adobe Community: Message List
Viewing all articles
Browse latest Browse all 142955

How to create new page from master page and refer the previous page text frame ref id ?

$
0
0

I have problem to to apply/create item from master page and how to refer the previos page text frame to create page text

 

 

InterfacePtr<IPageSetupPrefs> iPageSetupPrefs(static_cast<IPageSetupPrefs *>(::QueryPreferences(IID_IPAGEPREFERENCES, docRef)));

                    if (iPageSetupPrefs == nil){

                              ASSERT(iPageSetupPrefs);

  break;

                    }

 

 

 

  InterfacePtr<ICommand> iNewPageCmd(CmdUtils::CreateCommand(kNewPageCmdBoss));

                    if (iNewPageCmd == nil){

                              ASSERT(iNewPageCmd);

  break;

                    }

 

  InterfacePtr<IApplyMasterCmdData> iApplyMasterCmdData( iNewPageCmd, IID_IAPPLYMASTERCMDDATA );

                    if (iApplyMasterCmdData == nil){

                              ASSERT(iPageCmdData);

  break;

                    }

 

  InterfacePtr<IPageCmdData> iPageCmdData(iNewPageCmd,UseDefaultIID());

                    if (iPageCmdData == nil){

                              ASSERT(iPageCmdData);

  break;

                    }

 

                    int32 numPagesToInsert = 1;

                    PMRect pageSizeRect = iPageSetupPrefs->GetPageSizePref();

 

 

                    int32 pos = iPageCmdData->GetNewPageInsertPosition();

 

                    InterfacePtr<IGeometry> iSpreadGeometry(spreadList->QueryNthSpread(0));

                    if (iSpreadGeometry == nil){

                              ASSERT(iSpreadGeometry);

  break;

                    }

                    spreadUIDRef = ::GetUIDRef(iSpreadGeometry);

 

                    PMRect dfltPMRectPageSize = iPageSetupPrefs->GetPageSizePref();

 

                    PMReal pageWidth = dfltPMRectPageSize.Right() - dfltPMRectPageSize.Left();

 

                    PMReal pageHeight = dfltPMRectPageSize.Bottom () - dfltPMRectPageSize.Top ();

 

 

                    PMRect usrDefPMRectPageSize(0, 0, pageWidth, pageHeight);

 

                    K2Vector< PMRect> pageBoundingBoxes;

                    for( int32 i = 0; i < numPagesToInsert; ++i){

                              pageBoundingBoxes.push_back( usrDefPMRectPageSize);

                    }

 

 

                    iPageCmdData->SetNewPageCmdData( spreadUIDRef, numPagesToInsert, pos+1, &pageBoundingBoxes, nil);

  //CreateSpreadFromSpread(docRef,spreadUIDRef);

 

  InterfacePtr<IBoolData> iBoolData(iNewPageCmd,UseDefaultIID());

                    if (iBoolData == nil){

                              ASSERT(iBoolData);

  break;

                    }

                    bool16          allowShuffle;

                    if (this->GetShufflePref(allowShuffle,docRef)==kFailure){

  break;

                    }

 

                    iBoolData->Set(allowShuffle);

 

                    CmdUtils::ProcessCommand(iNewPageCmd);

 

Above code, able to create a page but problem in apply master page?


Viewing all articles
Browse latest Browse all 142955

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>