diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2018-08-14 19:15:43 +0000 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2018-08-14 19:15:43 +0000 |
commit | 46b437333e53295869afde696ed31043c1f6c717 (patch) | |
tree | 25c8b199bd5b601d18c1c87f8e20bae9c8510c50 /fpdfsdk/fpdf_editpage.cpp | |
parent | 9e4a66449a227ca2a9e62d2f83fdc35f11bb5e2d (diff) | |
download | pdfium-46b437333e53295869afde696ed31043c1f6c717.tar.xz |
Add FPDFFormObj_GetMatrix() API
This is similar to FPDFText_GetMatrix() (wrapping
CPDF_TextObject::GetTextMatrix()) and FPDFPath_GetMatrix() (wrapping
CPDF_PathObject::m_Matrix), but wraps the matrix of form objects:
CPDF_FormObject::form_matrix().
Change-Id: Ic4ce7ad8050012f54de356bb936263d3e4f097ca
Reviewed-on: https://pdfium-review.googlesource.com/39930
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Diffstat (limited to 'fpdfsdk/fpdf_editpage.cpp')
-rw-r--r-- | fpdfsdk/fpdf_editpage.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/fpdfsdk/fpdf_editpage.cpp b/fpdfsdk/fpdf_editpage.cpp index 438a0624f3..0ff7a119a0 100644 --- a/fpdfsdk/fpdf_editpage.cpp +++ b/fpdfsdk/fpdf_editpage.cpp @@ -842,3 +842,30 @@ FPDFFormObj_GetObject(FPDF_PAGEOBJECT form_object, unsigned long index) { return FPDFPageObjectFromCPDFPageObject( pObjectList->GetPageObjectByIndex(index)); } + +FPDF_EXPORT FPDF_BOOL FPDF_CALLCONV +FPDFFormObj_GetMatrix(FPDF_PAGEOBJECT form_object, + double* a, + double* b, + double* c, + double* d, + double* e, + double* f) { + if (!form_object || !a || !b || !c || !d || !e || !f) + return false; + + auto* pPageObj = CPDFPageObjectFromFPDFPageObject(form_object); + CPDF_FormObject* pFormObj = pPageObj->AsForm(); + if (!pFormObj) + return false; + + const CFX_Matrix& matrix = pFormObj->form_matrix(); + *a = matrix.a; + *b = matrix.b; + *c = matrix.c; + *d = matrix.d; + *e = matrix.e; + *f = matrix.f; + + return true; +} |