LibreOffice Module sw (master)  1
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
SwEnhancedPDFExportHelper Class Reference

#include <EnhancedPDFExportHelper.hxx>

Collaboration diagram for SwEnhancedPDFExportHelper:
[legend]

Public Member Functions

 SwEnhancedPDFExportHelper (SwEditShell &rSh, OutputDevice &rOut, const OUString &rPageRange, bool bSkipEmptyPages, bool bEditEngineOnly, const SwPrintData &rPrintData)
 
 ~SwEnhancedPDFExportHelper ()
 
tools::Rectangle SwRectToPDFRect (const SwPageFrame *pCurrPage, const tools::Rectangle &rRectangle) const
 

Static Public Member Functions

static TableColumnsMapGetTableColumnsMap ()
 
static LinkIdMapGetLinkIdMap ()
 
static NumListIdMapGetNumListIdMap ()
 
static NumListBodyIdMapGetNumListBodyIdMap ()
 
static FrameTagIdMapGetFrameTagIdMap ()
 
static LanguageType GetDefaultLanguage ()
 

Private Member Functions

void EnhancedPDFExport ()
 
void ExportAuthorityEntryLinks ()
 Exports bibliography entry links. More...
 
sal_Int32 CalcOutputPageNum (const SwRect &rRect) const
 
std::vector< sal_Int32 > CalcOutputPageNums (const SwRect &rRect) const
 
void MakeHeaderFooterLinks (vcl::PDFExtOutDevData &rPDFExtOutDevData, const SwTextNode &rTNd, const SwRect &rLinkRect, sal_Int32 nDestId, const OUString &rURL, bool bIntern) const
 

Private Attributes

SwEditShellmrSh
 
OutputDevicemrOut
 
std::unique_ptr< StringRangeEnumeratormpRangeEnum
 
std::vector< sal_Int32 > maPageNumberMap
 The problem is that numbers in StringRangeEnumerator aren't accordant to real page numbers if mbSkipEmptyPages is true, because in this case empty pages are excluded from a page range and numbers in StringRangeEnumerator are shifted. More...
 
bool mbSkipEmptyPages
 
bool mbEditEngineOnly
 
const SwPrintDatamrPrintData
 

Static Private Attributes

static TableColumnsMap s_aTableColumnsMap
 
static LinkIdMap s_aLinkIdMap
 
static NumListIdMap s_aNumListIdMap
 
static NumListBodyIdMap s_aNumListBodyIdMap
 
static FrameTagIdMap s_aFrameTagIdMap
 
static LanguageType s_eLanguageDefault = LANGUAGE_SYSTEM
 

Detailed Description

Definition at line 191 of file EnhancedPDFExportHelper.hxx.

Constructor & Destructor Documentation

SwEnhancedPDFExportHelper::SwEnhancedPDFExportHelper ( SwEditShell rSh,
OutputDevice rOut,
const OUString &  rPageRange,
bool  bSkipEmptyPages,
bool  bEditEngineOnly,
const SwPrintData rPrintData 
)
SwEnhancedPDFExportHelper::~SwEnhancedPDFExportHelper ( )

Definition at line 1508 of file EnhancedPDFExportHelper.cxx.

Member Function Documentation

sal_Int32 SwEnhancedPDFExportHelper::CalcOutputPageNum ( const SwRect rRect) const
private

Definition at line 2251 of file EnhancedPDFExportHelper.cxx.

References CalcOutputPageNums().

Referenced by EnhancedPDFExport().

std::vector< sal_Int32 > SwEnhancedPDFExportHelper::CalcOutputPageNums ( const SwRect rRect) const
private
void SwEnhancedPDFExportHelper::EnhancedPDFExport ( )
private

Definition at line 1535 of file EnhancedPDFExportHelper.cxx.

References sw::sidebar::aArr, SwIndex::Assign(), aURL, CalcOutputPageNum(), CalcOutputPageNums(), vcl::PDFNote::Contents, vcl::PDFExtOutDevData::CreateDest(), vcl::PDFExtOutDevData::CreateLink(), vcl::PDFExtOutDevData::CreateNamedDest(), vcl::PDFExtOutDevData::CreateNote(), vcl::PDFExtOutDevData::CreateOutlineItem(), vcl::PDFExtOutDevData::CreateScreen(), CRSR_SKIP_CHARS, INetURLObject::decode(), SwCursorShell::DeleteCurrent, vcl::PDFExtOutDevData::DescribeRegisteredDest(), ExportAuthorityEntryLinks(), SwFrameFormat::FindLayoutRect(), SwFrameFormat::FindRealSdrObject(), Fly, SwFieldType::GatherFields(), SwFormat::GetAnchor(), SwFormatAnchor::GetAnchorId(), SwFormat::GetAttrSet(), vcl::PDFExtOutDevData::GetBookmarks(), IDocumentMarkAccess::getBookmarksBegin(), IDocumentMarkAccess::getBookmarksEnd(), SwCursorShell::GetCharRect(), SwFormatAnchor::GetContentAnchor(), SwCursorShell::GetCursor_(), SwPostItField::GetDate(), GetDefaultLanguage(), SwViewShell::GetDoc(), OutputDevice::GetExtOutDevData(), SwEditShell::GetFieldType(), SwDoc::GetFootnoteIdxs(), GetFrameOfModify(), SwDoc::getIDocumentMarkAccess(), SwViewShell::getIDocumentOutlineNodesAccess(), SwDoc::getIDocumentRedlineAccess(), SwEditShell::GetINetAttrs(), SwTextAttr::GetINetFormat(), vcl::PDFExtOutDevData::GetIsExportBookmarks(), vcl::PDFExtOutDevData::GetIsExportNamedDestinations(), vcl::PDFExtOutDevData::GetIsExportNotes(), SfxItemSet::GetItemState(), SwField::GetLanguage(), SwViewShell::GetLayout(), getLocale(), OutputDevice::GetMapMode(), SwNodeIndex::GetNode(), SwViewShell::GetNodes(), SvNumberFormatter::GetNullDate(), SwDoc::GetNumberFormatter(), IDocumentOutlineNodes::getOutlineLevel(), SwNodes::GetOutLineNds(), IDocumentOutlineNodes::getOutlineNodesCount(), IDocumentOutlineNodes::getOutlineText(), SvNumberFormatter::GetOutputString(), SwRootFrame::GetPageAtPos(), SwRootFrame::GetPageByPageNum(), SwPostItField::GetPar1(), SwPaM::GetPoint(), SwTextINetFormat::GetpTextNode(), GetRef, SwPostItField::GetResolved(), SwFrame::getRootFrame(), SwGetRefField::GetSeqNo(), SwGetRefField::GetSetRefName(), SwDoc::GetSpzFrameFormats(), SvNumberFormatter::GetStandardFormat(), SwTextAttr::GetStart(), SwGetRefField::GetSubType(), SwTextNode::GetText(), SwPostItField::GetText(), SwTextFootnote::GetTextNode(), SwNode::GetTextNode(), SwFormatINetFormat::GetValue(), SwCursorShell::GotoFootnoteAnchor(), SwCursorShell::GotoFootnoteText(), SwCursorShell::GotoINetAttr(), SwCursorShell::GotoOutline(), SwCursorShell::GotoRefMark(), SwRect::Height(), i, sw::IsFootnoteDeleted(), SwTextNode::IsHidden(), SwRootFrame::IsHideRedlines(), SwDoc::IsInHeaderFooter(), sw::IsParaPropsNode(), SwViewShell::IsViewLocked(), JumpToSwMark(), SwRect::Left(), SwViewShell::LockView(), SwLayoutFrame::Lower(), MakeHeaderFooterLinks(), mbEditEngineOnly, mrOut, mrSh, n, SwPosition::nContent, SwPosition::nNode, p, pObject, Point, OutputDevice::Pop(), SwRect::Pos(), Postit, OutputDevice::Push(), RES_DRAWFRMFMT(), RES_TXTATR_INETFMT(), RES_URL(), SwCursor::RestoreSavePos(), SwRect::Right(), SwGetINetAttr::rINetAttr, s_aLinkIdMap, SwCursorShell::SelectHiddenRange(), vcl::PDFExtOutDevData::SetDocumentLocale(), vcl::PDFExtOutDevData::SetLinkDest(), vcl::PDFExtOutDevData::SetLinkURL(), OutputDevice::SetMapMode(), vcl::PDFExtOutDevData::SetScreenStream(), vcl::PDFExtOutDevData::SetScreenURL(), o3tl::sorted_vector< Value, Compare, Find, class >::size(), SwFrameFormats::size(), SwRect::SVRect(), SwRectToPDFRect(), SwResId(), vcl::PDFNote::Title, SwRect::Top(), INetURLObject::Unambiguous, SwFormat::Which(), and SwRect::Width().

Referenced by SwEnhancedPDFExportHelper().

void SwEnhancedPDFExportHelper::ExportAuthorityEntryLinks ( )
private
static LanguageType SwEnhancedPDFExportHelper::GetDefaultLanguage ( )
inlinestatic
static FrameTagIdMap& SwEnhancedPDFExportHelper::GetFrameTagIdMap ( )
inlinestatic
static LinkIdMap& SwEnhancedPDFExportHelper::GetLinkIdMap ( )
inlinestatic

Definition at line 245 of file EnhancedPDFExportHelper.hxx.

References s_aLinkIdMap.

Referenced by SwTaggedPDFHelper::SetAttributes().

static NumListBodyIdMap& SwEnhancedPDFExportHelper::GetNumListBodyIdMap ( )
inlinestatic
static NumListIdMap& SwEnhancedPDFExportHelper::GetNumListIdMap ( )
inlinestatic
static TableColumnsMap& SwEnhancedPDFExportHelper::GetTableColumnsMap ( )
inlinestatic
void SwEnhancedPDFExportHelper::MakeHeaderFooterLinks ( vcl::PDFExtOutDevData rPDFExtOutDevData,
const SwTextNode rTNd,
const SwRect rLinkRect,
sal_Int32  nDestId,
const OUString &  rURL,
bool  bIntern 
) const
private
tools::Rectangle SwEnhancedPDFExportHelper::SwRectToPDFRect ( const SwPageFrame pCurrPage,
const tools::Rectangle rRectangle 
) const

Member Data Documentation

std::vector< sal_Int32 > SwEnhancedPDFExportHelper::maPageNumberMap
private

The problem is that numbers in StringRangeEnumerator aren't accordant to real page numbers if mbSkipEmptyPages is true, because in this case empty pages are excluded from a page range and numbers in StringRangeEnumerator are shifted.

maPageNumberMap[real_page_number] is either a corresponding page number in a page range without empty pages, or -1 if this page is empty.

Definition at line 206 of file EnhancedPDFExportHelper.hxx.

Referenced by CalcOutputPageNums(), and SwEnhancedPDFExportHelper().

bool SwEnhancedPDFExportHelper::mbEditEngineOnly
private

Definition at line 209 of file EnhancedPDFExportHelper.hxx.

Referenced by EnhancedPDFExport().

bool SwEnhancedPDFExportHelper::mbSkipEmptyPages
private

Definition at line 208 of file EnhancedPDFExportHelper.hxx.

Referenced by CalcOutputPageNums(), and SwEnhancedPDFExportHelper().

std::unique_ptr<StringRangeEnumerator> SwEnhancedPDFExportHelper::mpRangeEnum
private

Definition at line 198 of file EnhancedPDFExportHelper.hxx.

Referenced by CalcOutputPageNums(), and SwEnhancedPDFExportHelper().

OutputDevice& SwEnhancedPDFExportHelper::mrOut
private
const SwPrintData& SwEnhancedPDFExportHelper::mrPrintData
private

Definition at line 211 of file EnhancedPDFExportHelper.hxx.

Referenced by SwRectToPDFRect().

SwEditShell& SwEnhancedPDFExportHelper::mrSh
private
FrameTagIdMap SwEnhancedPDFExportHelper::s_aFrameTagIdMap
staticprivate

Definition at line 217 of file EnhancedPDFExportHelper.hxx.

Referenced by GetFrameTagIdMap(), and SwEnhancedPDFExportHelper().

LinkIdMap SwEnhancedPDFExportHelper::s_aLinkIdMap
staticprivate
NumListBodyIdMap SwEnhancedPDFExportHelper::s_aNumListBodyIdMap
staticprivate

Definition at line 216 of file EnhancedPDFExportHelper.hxx.

Referenced by GetNumListBodyIdMap(), and SwEnhancedPDFExportHelper().

NumListIdMap SwEnhancedPDFExportHelper::s_aNumListIdMap
staticprivate

Definition at line 215 of file EnhancedPDFExportHelper.hxx.

Referenced by GetNumListIdMap(), and SwEnhancedPDFExportHelper().

TableColumnsMap SwEnhancedPDFExportHelper::s_aTableColumnsMap
staticprivate

Definition at line 213 of file EnhancedPDFExportHelper.hxx.

Referenced by GetTableColumnsMap(), and SwEnhancedPDFExportHelper().

LanguageType SwEnhancedPDFExportHelper::s_eLanguageDefault = LANGUAGE_SYSTEM
staticprivate

Definition at line 219 of file EnhancedPDFExportHelper.hxx.

Referenced by GetDefaultLanguage(), and SwEnhancedPDFExportHelper().


The documentation for this class was generated from the following files: