Skip to content

Commit 59141ee

Browse files
committed
Add a patch for the dvisvgm issue observed in openwebwork/pg#1023.
This patch is applied in the docker build. It can be applied on your server with the command `sudo patch -p1 -d / < /opt/webwork/webwork2/docker-config/pgfsys-dvisvmg-bbox-fix.patch.patch` Note this patch is specific to Ubuntu 22.04, so don't try it on other versions of Ubuntu or other linux distributions. This was the change made in pgf-tikz/pgf#1276 that was merged into the master branch of the to the pgf-tikz latex package on October 23, 2023 that fixes the issue reported in pgf-tikz/pgf#1275.
1 parent 8e3ca63 commit 59141ee

File tree

3 files changed

+27
-2
lines changed

3 files changed

+27
-2
lines changed

Dockerfile

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,7 @@ COPY --from=base /opt/base/pg $APP_ROOT/pg
213213

214214
# Patch files that are applied below
215215
COPY docker-config/imagemagick-allow-pdf-read.patch /tmp
216+
COPY docker-config/pgfsys-dvisvmg-bbox-fix.patch /tmp
216217

217218
RUN echo "PATH=$PATH:$APP_ROOT/webwork2/bin" >> /root/.bashrc \
218219
&& mkdir /run/webwork2 /etc/ssl/local \
@@ -230,7 +231,9 @@ RUN echo "PATH=$PATH:$APP_ROOT/webwork2/bin" >> /root/.bashrc \
230231
&& cd $PG_ROOT/htdocs \
231232
&& npm install \
232233
&& patch -p1 -d / < /tmp/imagemagick-allow-pdf-read.patch \
233-
&& rm /tmp/imagemagick-allow-pdf-read.patch
234+
&& rm /tmp/imagemagick-allow-pdf-read.patch \
235+
&& patch -p1 -d / < /tmp/pgfsys-dvisvmg-bbox-fix.patch \
236+
&& rm /tmp/pgfsys-dvisvmg-bbox-fix.patch
234237

235238
# ==================================================================
236239
# Phase 7 - Final setup and prepare docker-entrypoint.sh

DockerfileStage2

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ COPY --from=base /opt/base/pg $APP_ROOT/pg
7575

7676
# Patch files that are applied below
7777
COPY docker-config/imagemagick-allow-pdf-read.patch /tmp
78+
COPY docker-config/pgfsys-dvisvmg-bbox-fix.patch /tmp
7879

7980
RUN echo "PATH=$PATH:$APP_ROOT/webwork2/bin" >> /root/.bashrc \
8081
&& mkdir /run/webwork2 /etc/ssl/local \
@@ -92,7 +93,9 @@ RUN echo "PATH=$PATH:$APP_ROOT/webwork2/bin" >> /root/.bashrc \
9293
&& cd $PG_ROOT/htdocs \
9394
&& npm install \
9495
&& patch -p1 -d / < /tmp/imagemagick-allow-pdf-read.patch \
95-
&& rm /tmp/imagemagick-allow-pdf-read.patch
96+
&& rm /tmp/imagemagick-allow-pdf-read.patch \
97+
&& patch -p1 -d / < /tmp/pgfsys-dvisvmg-bbox-fix.patch \
98+
&& rm /tmp/pgfsys-dvisvmg-bbox-fix.patch
9699

97100
# ==================================================================
98101
# Phase 5 - Final setup and prepare docker-entrypoint.sh
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
--- a/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvisvgm.def 2024-02-22 13:30:26.167777811 -0600
2+
+++ b/usr/share/texlive/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvisvgm.def 2024-02-22 13:36:29.820956330 -0600
3+
@@ -127,7 +127,15 @@
4+
\dp#1=0pt%
5+
\leavevmode%
6+
\pgf@xa=\pgf@trimleft@final\relax \ifdim\pgf@xa=0pt \else\kern\pgf@xa\fi%
7+
- \raise-\pgf@ya\hbox{\ifpgf@sys@svg@inpicture\else\special{dvisvgm:bbox \pgf@sys@tonumber\pgf@picmaxx\space\pgf@sys@tonumber\pgf@picmaxy}\fi\box#1}%
8+
+ \raise-\pgf@ya\hbox{%
9+
+ \ifpgf@sys@svg@inpicture
10+
+ \box#1%
11+
+ \else
12+
+ \special{dvisvgm:bbox \pgf@sys@tonumber\pgf@picmaxx\space\pgf@sys@tonumber\pgf@picmaxy}%
13+
+ \special{dvisvgm:bbox lock}%
14+
+ \box#1%
15+
+ \special{dvisvgm:bbox unlock}%
16+
+ \fi}%
17+
\pgf@xa=\pgf@trimright@final\relax \ifdim\pgf@xa=0pt \else\kern\pgf@xa\fi%
18+
}
19+

0 commit comments

Comments
 (0)