summaryrefslogtreecommitdiff
path: root/xfa/fxfa
diff options
context:
space:
mode:
Diffstat (limited to 'xfa/fxfa')
-rw-r--r--xfa/fxfa/cxfa_ffimage.cpp7
-rw-r--r--xfa/fxfa/cxfa_ffimageedit.cpp8
-rw-r--r--xfa/fxfa/parser/cxfa_node.cpp29
-rw-r--r--xfa/fxfa/parser/cxfa_node.h7
4 files changed, 17 insertions, 34 deletions
diff --git a/xfa/fxfa/cxfa_ffimage.cpp b/xfa/fxfa/cxfa_ffimage.cpp
index a80b19a337..15916de456 100644
--- a/xfa/fxfa/cxfa_ffimage.cpp
+++ b/xfa/fxfa/cxfa_ffimage.cpp
@@ -65,14 +65,11 @@ void CXFA_FFImage::RenderWidget(CXFA_Graphics* pGS,
iVertAlign = para->GetVerticalAlign();
}
- int32_t iImageXDpi = 0;
- int32_t iImageYDpi = 0;
- m_pNode->GetImageDpi(iImageXDpi, iImageYDpi);
-
auto* value = m_pNode->GetFormValueIfExists();
CXFA_Image* image = value ? value->GetImageIfExists() : nullptr;
if (image) {
+ CFX_Size dpi = m_pNode->GetImageDpi();
XFA_DrawImage(pGS, rtImage, mtRotate, pDIBitmap, image->GetAspect(),
- iImageXDpi, iImageYDpi, iHorzAlign, iVertAlign);
+ dpi.width, dpi.height, iHorzAlign, iVertAlign);
}
}
diff --git a/xfa/fxfa/cxfa_ffimageedit.cpp b/xfa/fxfa/cxfa_ffimageedit.cpp
index 40afdb1c4c..f07bc1e267 100644
--- a/xfa/fxfa/cxfa_ffimageedit.cpp
+++ b/xfa/fxfa/cxfa_ffimageedit.cpp
@@ -89,11 +89,9 @@ void CXFA_FFImageEdit::RenderWidget(CXFA_Graphics* pGS,
iAspect = image->GetAspect();
}
- int32_t iImageXDpi = 0;
- int32_t iImageYDpi = 0;
- m_pNode->GetImageEditDpi(iImageXDpi, iImageYDpi);
- XFA_DrawImage(pGS, rtImage, mtRotate, pDIBitmap, iAspect, iImageXDpi,
- iImageYDpi, iHorzAlign, iVertAlign);
+ CFX_Size dpi = m_pNode->GetImageEditDpi();
+ XFA_DrawImage(pGS, rtImage, mtRotate, pDIBitmap, iAspect, dpi.width,
+ dpi.height, iHorzAlign, iVertAlign);
}
bool CXFA_FFImageEdit::AcceptsFocusOnButtonDown(uint32_t dwFlags,
diff --git a/xfa/fxfa/parser/cxfa_node.cpp b/xfa/fxfa/parser/cxfa_node.cpp
index c83c118e73..c3fbf62eb7 100644
--- a/xfa/fxfa/parser/cxfa_node.cpp
+++ b/xfa/fxfa/parser/cxfa_node.cpp
@@ -2907,10 +2907,9 @@ bool CXFA_Node::CalculatePushButtonAutoSize(CXFA_FFDoc* doc, CFX_SizeF* pSize) {
CFX_SizeF CXFA_Node::CalculateImageSize(float img_width,
float img_height,
- float dpi_x,
- float dpi_y) {
- CFX_RectF rtImage(0, 0, XFA_UnitPx2Pt(img_width, dpi_x),
- XFA_UnitPx2Pt(img_height, dpi_y));
+ const CFX_Size& dpi) {
+ CFX_RectF rtImage(0, 0, XFA_UnitPx2Pt(img_width, dpi.width),
+ XFA_UnitPx2Pt(img_height, dpi.height));
CFX_RectF rtFit;
Optional<float> width = TryWidth();
@@ -2941,12 +2940,8 @@ bool CXFA_Node::CalculateImageAutoSize(CXFA_FFDoc* doc, CFX_SizeF* pSize) {
if (!pBitmap)
return CalculateWidgetAutoSize(pSize);
- int32_t iImageXDpi = 0;
- int32_t iImageYDpi = 0;
- GetImageDpi(iImageXDpi, iImageYDpi);
-
*pSize = CalculateImageSize(pBitmap->GetWidth(), pBitmap->GetHeight(),
- iImageXDpi, iImageYDpi);
+ GetImageDpi());
return CalculateWidgetAutoSize(pSize);
}
@@ -2959,12 +2954,8 @@ bool CXFA_Node::CalculateImageEditAutoSize(CXFA_FFDoc* doc, CFX_SizeF* pSize) {
if (!pBitmap)
return CalculateFieldAutoSize(doc, pSize);
- int32_t iImageXDpi = 0;
- int32_t iImageYDpi = 0;
- GetImageEditDpi(iImageXDpi, iImageYDpi);
-
*pSize = CalculateImageSize(pBitmap->GetWidth(), pBitmap->GetHeight(),
- iImageXDpi, iImageYDpi);
+ GetImageEditDpi());
return CalculateFieldAutoSize(doc, pSize);
}
@@ -2980,18 +2971,16 @@ bool CXFA_Node::LoadImageEditImage(CXFA_FFDoc* doc) {
->LoadImageData(doc, this);
}
-void CXFA_Node::GetImageDpi(int32_t& iImageXDpi, int32_t& iImageYDpi) {
+CFX_Size CXFA_Node::GetImageDpi() const {
CXFA_ImageLayoutData* pData =
static_cast<CXFA_ImageLayoutData*>(m_pLayoutData.get());
- iImageXDpi = pData->m_iImageXDpi;
- iImageYDpi = pData->m_iImageYDpi;
+ return CFX_Size(pData->m_iImageXDpi, pData->m_iImageYDpi);
}
-void CXFA_Node::GetImageEditDpi(int32_t& iImageXDpi, int32_t& iImageYDpi) {
+CFX_Size CXFA_Node::GetImageEditDpi() const {
CXFA_ImageEditData* pData =
static_cast<CXFA_ImageEditData*>(m_pLayoutData.get());
- iImageXDpi = pData->m_iImageXDpi;
- iImageYDpi = pData->m_iImageYDpi;
+ return CFX_Size(pData->m_iImageXDpi, pData->m_iImageYDpi);
}
float CXFA_Node::CalculateWidgetAutoWidth(float fWidthCalc) {
diff --git a/xfa/fxfa/parser/cxfa_node.h b/xfa/fxfa/parser/cxfa_node.h
index 32e5cfd861..b12a26ef3b 100644
--- a/xfa/fxfa/parser/cxfa_node.h
+++ b/xfa/fxfa/parser/cxfa_node.h
@@ -312,8 +312,8 @@ class CXFA_Node : public CXFA_Object {
bool LoadImageImage(CXFA_FFDoc* doc);
bool LoadImageEditImage(CXFA_FFDoc* doc);
- void GetImageDpi(int32_t& iImageXDpi, int32_t& iImageYDpi);
- void GetImageEditDpi(int32_t& iImageXDpi, int32_t& iImageYDpi);
+ CFX_Size GetImageDpi() const;
+ CFX_Size GetImageEditDpi() const;
RetainPtr<CFX_DIBitmap> GetImageImage();
RetainPtr<CFX_DIBitmap> GetImageEditImage();
@@ -452,8 +452,7 @@ class CXFA_Node : public CXFA_Object {
bool CalculatePushButtonAutoSize(CXFA_FFDoc* doc, CFX_SizeF* pSize);
CFX_SizeF CalculateImageSize(float img_width,
float img_height,
- float dpi_x,
- float dpi_y);
+ const CFX_Size& dpi);
bool CalculateImageEditAutoSize(CXFA_FFDoc* doc, CFX_SizeF* pSize);
bool CalculateImageAutoSize(CXFA_FFDoc* doc, CFX_SizeF* pSize);
float CalculateWidgetAutoHeight(float fHeightCalc);