summaryrefslogtreecommitdiffstats
path: root/external/pdfium/0008-svx-correct-the-positioning-of-PDF-Paths-and-the-str.patch.2
blob: d85b33177f06d55deae209364dcf2e6630f70a12 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
From 92e382401059237c84c13114d4612ceaa5b0c214 Mon Sep 17 00:00:00 2001
From: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
Date: Tue, 5 Jun 2018 11:32:12 +0200
Subject: [PATCH 08/14] svx: correct the positioning of PDF Paths and the
 stroke width

---
 pdfium/core/fpdfapi/page/cpdf_page.cpp           |  3 +++
 pdfium/core/fpdfapi/render/cpdf_renderstatus.cpp |  2 +-
 pdfium/core/fxge/cfx_pathdata.cpp                |  2 ++
 pdfium/fpdfsdk/fpdf_editpath.cpp                 | 16 ++++++++--------
 4 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/pdfium/core/fpdfapi/page/cpdf_page.cpp b/pdfium/core/fpdfapi/page/cpdf_page.cpp
index eee6673..00657d6 100644
--- a/pdfium/core/fpdfapi/page/cpdf_page.cpp
+++ b/pdfium/core/fpdfapi/page/cpdf_page.cpp
@@ -37,12 +37,14 @@ CPDF_Page::CPDF_Page(CPDF_Document* pDocument,
   CFX_FloatRect mediabox = GetBox("MediaBox");
   if (mediabox.IsEmpty())
     mediabox = CFX_FloatRect(0, 0, 612, 792);
+  fprintf(stderr, "Page mediabox: %f, %f, %f, %f\n", mediabox.left, mediabox.right, mediabox.top, mediabox.bottom);
 
   m_BBox = GetBox("CropBox");
   if (m_BBox.IsEmpty())
     m_BBox = mediabox;
   else
     m_BBox.Intersect(mediabox);
+  fprintf(stderr, "Page cropbox: %f, %f, %f, %f\n", m_BBox.left, m_BBox.right, m_BBox.top, m_BBox.bottom);
 
   m_PageSize.width = m_BBox.Width();
   m_PageSize.height = m_BBox.Height();
@@ -50,6 +52,7 @@ CPDF_Page::CPDF_Page(CPDF_Document* pDocument,
   int rotate = GetPageRotation();
   if (rotate % 2)
     std::swap(m_PageSize.width, m_PageSize.height);
+  fprintf(stderr, "Page rotate: %d, Page Width: %f, Page Height: %f\n", rotate, m_PageSize.width, m_PageSize.height);
 
   switch (rotate) {
     case 0:
diff --git a/pdfium/core/fpdfapi/render/cpdf_renderstatus.cpp b/pdfium/core/fpdfapi/render/cpdf_renderstatus.cpp
index 87301d3..bf82d55 100644
--- a/pdfium/core/fpdfapi/render/cpdf_renderstatus.cpp
+++ b/pdfium/core/fpdfapi/render/cpdf_renderstatus.cpp
@@ -1767,7 +1767,7 @@ bool CPDF_RenderStatus::ProcessText(CPDF_TextObject* textobj,
     return true;
 
   float font_size = textobj->m_TextState.GetFontSize();
-  fprintf(stderr, "Font size: %f, matrix a: %f, b: %f, c: %f, d: %f, e: %f, f: %f\n", font_size, text_matrix.a, text_matrix.b, text_matrix.c, text_matrix.d, text_matrix.e, text_matrix.f);
+//   fprintf(stderr, "Font size: %f, matrix a: %f, b: %f, c: %f, d: %f, e: %f, f: %f\n", font_size, text_matrix.a, text_matrix.b, text_matrix.c, text_matrix.d, text_matrix.e, text_matrix.f);
   if (bPattern) {
     DrawTextPathWithPattern(textobj, pObj2Device, pFont, font_size,
                             &text_matrix, bFill, bStroke);
diff --git a/pdfium/core/fxge/cfx_pathdata.cpp b/pdfium/core/fxge/cfx_pathdata.cpp
index ac1ff42..a483edf 100644
--- a/pdfium/core/fxge/cfx_pathdata.cpp
+++ b/pdfium/core/fxge/cfx_pathdata.cpp
@@ -199,6 +199,7 @@ void CFX_PathData::Append(const CFX_PathData* pSrc, const CFX_Matrix* pMatrix) {
 void CFX_PathData::AppendPoint(const CFX_PointF& point,
                                FXPT_TYPE type,
                                bool closeFigure) {
+  fprintf(stderr, "Append: %f, %f (%s)\n", point.x, point.y, closeFigure ? "CLOSE" : "OPEN");
   m_Points.push_back(FX_PATHPOINT(point, type, closeFigure));
 }
 
@@ -294,6 +295,7 @@ CFX_FloatRect CFX_PathData::GetBoundingBox(float line_width,
 void CFX_PathData::Transform(const CFX_Matrix* pMatrix) {
   if (!pMatrix)
     return;
+  fprintf(stderr, "XForm: %f, %f %f, %f, %f, %f\n", pMatrix->a, pMatrix->b, pMatrix->c, pMatrix->d, pMatrix->e, pMatrix->f);
   for (auto& point : m_Points)
     point.m_Point = pMatrix->Transform(point.m_Point);
 }
-- 
2.16.3