34 #include <document.hxx>
36 #include <rtl/strbuf.hxx>
46 SdrPage* pDrawPage = pDrawLayer->
GetPage( static_cast<sal_uInt16>(nTab) );
50 bTabHasGraphics =
true;
51 FillGraphList( pDrawPage, nTab, nStartCol, nStartRow, nEndCol, nEndRow );
52 size_t ListSize = aGraphList.size();
53 for (
size_t i = 0;
i < ListSize; ++
i )
58 bTabAlignedLeft =
true;
72 aRect = pDoc->GetMMRect( nStartCol, nStartRow, nEndCol, nEndRow, nTab );
81 ScRange aR = pDoc->GetRange( nTab, aObjRect );
86 pDoc->ExtendOverlapped( aR );
92 bool bInCell = pDoc->IsEmptyData( nCol1, nRow1, nCol2, nRow2, nTab );
96 nCol1, nRow1, nCol2, nRow2, nTab );
97 aSpace = MMToPixel(
Size(
100 aSpace.
AdjustWidth((nCol2-nCol1) * (nCellSpacing+1) );
105 aGraphList.emplace_back( pObject,
106 aR, aSize, bInCell, aSpace );
108 pObject = aIter.
Next();
117 append(static_cast<sal_Int32>(pE->
aSize.
Width()));
119 append(static_cast<sal_Int32>(pE->
aSize.
Height()));
123 append(static_cast<sal_Int32>(pE->
aSpace.
Width()));
127 OString aOpt = aBuf.makeStringAndClear();
130 case SdrObjKind::Graphic:
133 std::unique_ptr<SdrGrafObjGeoData> pGeo(static_cast<SdrGrafObjGeoData*>(pSGO->
GetGeoData().release()));
134 sal_uInt16 nMirrorCase = (pGeo->maGeo.nRotationAngle == 18000_deg100 ?
135 ( pGeo->bMirrored ? 3 : 4 ) : ( pGeo->bMirrored ? 2 : 1 ));
136 bool bHMirr = ( ( nMirrorCase == 2 ) || ( nMirrorCase == 4 ) );
137 bool bVMirr = ( ( nMirrorCase == 3 ) || ( nMirrorCase == 4 ) );
140 nXOutFlags |= XOutFlags::MirrorHorz;
142 nXOutFlags |= XOutFlags::MirrorVert;
146 WriteImage( aLinkName, pSGO->
GetGraphic(), aOpt, nXOutFlags );
150 case SdrObjKind::OLE2:
156 WriteImage( aLinkName, *pGraphic, aOpt );
165 WriteImage( aLinkName, aGraph, aOpt );
172 std::string_view rImgOptions,
XOutFlags nXOutFlags )
175 if( rLinkName.isEmpty() )
177 if( !aStreamPath.isEmpty() )
180 OUString aGrfNm( aStreamPath );
181 nXOutFlags |= XOutFlags::UseNativeIfPossible;
198 if( bCopyLocalFileToINet )
200 CopyLocalFileToINet( rLinkName, aStreamPath );
211 if( !rLinkName.isEmpty() )
217 if ( !rImgOptions.empty() )
#define OOO_STRING_SVTOOLS_HTML_O_src
#define OOO_STRING_SVTOOLS_HTML_O_vspace
virtual const tools::Rectangle & GetCurrentBoundRect() const
void WriteImage(OUString &rLinkName, const Graphic &, std::string_view rImgOptions, XOutFlags nXOutFlags=XOutFlags::NONE)
void setWidth(tools::Long nWidth)
const OUString & GetFileName() const
void WriteGraphEntry(ScHTMLGraphEntry *)
size_t GetObjCount() const
bool HasObjectsInRows(SCTAB nTab, SCROW nStartRow, SCROW nEndRow)
virtual SdrObjKind GetObjIdentifier() const
EmbeddedObjectRef * pObject
SVL_DLLPUBLIC OUString simpleNormalizedMakeRelative(OUString const &baseUriReference, OUString const &uriReference)
SvStream & WriteCharPtr(const char *pBuf)
constexpr tools::Long Width() const
virtual std::unique_ptr< SdrObjGeoData > GetGeoData() const
#define OOO_STRING_SVTOOLS_HTML_O_height
static Graphic GetObjGraphic(const SdrObject &rSdrObject)
static ErrCode WriteGraphic(const Graphic &rGraphic, OUString &rFileName, const OUString &rFilterName, const XOutFlags nFlags, const Size *pMtfSize_100TH_MM=nullptr, const css::uno::Sequence< css::beans::PropertyValue > *pFilterData=nullptr)
#define OOO_STRING_SVTOOLS_HTML_O_hspace
SVL_DLLPUBLIC Link< OUString *, bool > const & GetMaybeFileHdl()
const Graphic & GetGraphic() const
const SdrPage * GetPage(sal_uInt16 nPgNum) const
bool IsLinkedGraphic() const
static SVT_DLLPUBLIC SvStream & Out_String(SvStream &, const OUString &, OUString *pNonConvertableChars=nullptr)
SvStream & WriteOString(std::string_view rStr)
constexpr tools::Long Height() const
tools::Long AdjustWidth(tools::Long n)
#define OOO_STRING_SVTOOLS_HTML_image
SvStream & WriteChar(char nChar)
tools::Long AdjustHeight(tools::Long n)
void FillGraphList(const SdrPage *, SCTAB nTab, SCCOL nStartCol, SCROW nStartRow, SCCOL nEndCol, SCROW nEndRow)
void setHeight(tools::Long nHeight)
static bool IsNoteCaption(SdrObject *pObj)
Returns true, if the passed object is the caption of a cell note.
void PrepareGraphics(ScDrawLayer *, SCTAB nTab, SCCOL nStartCol, SCROW nStartRow, SCCOL nEndCol, SCROW nEndRow)
#define OOO_STRING_SVTOOLS_HTML_O_width
#define SAL_NEWLINE_STRING
SVL_DLLPUBLIC OUString SmartRel2Abs(INetURLObject const &rTheBaseURIRef, OUString const &rTheRelURIRef, Link< OUString *, bool > const &rMaybeFileHdl=Link< OUString *, bool >(), bool bCheckFileExists=true, bool bIgnoreFragment=false, INetURLObject::EncodeMechanism eEncodeMechanism=INetURLObject::EncodeMechanism::WasEncoded, INetURLObject::DecodeMechanism eDecodeMechanism=INetURLObject::DecodeMechanism::ToIUri, rtl_TextEncoding eCharset=RTL_TEXTENCODING_UTF8, FSysStyle eStyle=FSysStyle::Detect)