summaryrefslogtreecommitdiff
path: root/source/html/html-doc.c
diff options
context:
space:
mode:
authorTor Andersson <tor.andersson@artifex.com>2015-05-14 00:19:44 +0200
committerTor Andersson <tor.andersson@artifex.com>2015-05-15 16:12:23 +0200
commit5179418ae7f4497ad6fec2e7d1ac2a8ad7492fd8 (patch)
treea974080219ab4ecf51594d88a29d8d0b45ce46a4 /source/html/html-doc.c
parenteaaca0513d26fa9e7cc515dbba950536c0005c06 (diff)
downloadmupdf-5179418ae7f4497ad6fec2e7d1ac2a8ad7492fd8.tar.xz
epub: Apply @page selector margins.
Diffstat (limited to 'source/html/html-doc.c')
-rw-r--r--source/html/html-doc.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/source/html/html-doc.c b/source/html/html-doc.c
index 90033717..04286f7c 100644
--- a/source/html/html-doc.c
+++ b/source/html/html-doc.c
@@ -44,13 +44,19 @@ static void
htdoc_layout(fz_context *ctx, fz_document *doc_, float w, float h, float em)
{
html_document *doc = (html_document*)doc_;
- doc->page_margin[T] = em;
- doc->page_margin[B] = em;
- doc->page_margin[L] = 0;
- doc->page_margin[R] = 0;
+
+ if (doc->box)
+ {
+ doc->page_margin[T] = fz_from_css_number(doc->box->style.margin[T], em, em);
+ doc->page_margin[B] = fz_from_css_number(doc->box->style.margin[B], em, em);
+ doc->page_margin[L] = fz_from_css_number(doc->box->style.margin[L], em, em);
+ doc->page_margin[R] = fz_from_css_number(doc->box->style.margin[R], em, em);
+ }
+
doc->page_w = w - doc->page_margin[L] - doc->page_margin[R];
doc->page_h = h - doc->page_margin[T] - doc->page_margin[B];
doc->em = em;
+
fz_layout_html(ctx, doc->box, doc->page_w, doc->page_h, doc->em);
}