diff --git a/app/Entities/Tools/ExportFormatter.php b/app/Entities/Tools/ExportFormatter.php
index 7f377cadb..f993d332d 100644
--- a/app/Entities/Tools/ExportFormatter.php
+++ b/app/Entities/Tools/ExportFormatter.php
@@ -92,6 +92,7 @@ class ExportFormatter
         $html = view('pages.export', [
             'page'   => $page,
             'format' => 'pdf',
+            'engine' => $this->pdfGenerator->getActiveEngine(),
         ])->render();
 
         return $this->htmlToPdf($html);
@@ -113,6 +114,7 @@ class ExportFormatter
             'chapter' => $chapter,
             'pages'   => $pages,
             'format'  => 'pdf',
+            'engine'  => $this->pdfGenerator->getActiveEngine(),
         ])->render();
 
         return $this->htmlToPdf($html);
@@ -130,6 +132,7 @@ class ExportFormatter
             'book'         => $book,
             'bookChildren' => $bookTree,
             'format'       => 'pdf',
+            'engine'       => $this->pdfGenerator->getActiveEngine(),
         ])->render();
 
         return $this->htmlToPdf($html);
diff --git a/app/Entities/Tools/PdfGenerator.php b/app/Entities/Tools/PdfGenerator.php
index a14f29d4b..c2e8f3d4c 100644
--- a/app/Entities/Tools/PdfGenerator.php
+++ b/app/Entities/Tools/PdfGenerator.php
@@ -7,14 +7,15 @@ use Barryvdh\Snappy\Facades\SnappyPdf;
 
 class PdfGenerator
 {
+    const ENGINE_DOMPDF = 'dompdf';
+    const ENGINE_WKHTML = 'wkhtml';
+
     /**
      * Generate PDF content from the given HTML content.
      */
     public function fromHtml(string $html): string
     {
-        $useWKHTML = config('snappy.pdf.binary') !== false && config('app.allow_untrusted_server_fetching') === true;
-
-        if ($useWKHTML) {
+        if ($this->getActiveEngine() === self::ENGINE_WKHTML) {
             $pdf = SnappyPDF::loadHTML($html);
             $pdf->setOption('print-media-type', true);
         } else {
@@ -23,4 +24,14 @@ class PdfGenerator
 
         return $pdf->output();
     }
+
+    /**
+     * Get the currently active PDF engine.
+     * Returns the value of an `ENGINE_` const on this class.
+     */
+    public function getActiveEngine(): string
+    {
+        $useWKHTML = config('snappy.pdf.binary') !== false && config('app.allow_untrusted_server_fetching') === true;
+        return $useWKHTML ? self::ENGINE_WKHTML : self::ENGINE_DOMPDF;
+    }
 }
diff --git a/resources/views/common/export-styles.blade.php b/resources/views/common/export-styles.blade.php
index ae26613b1..ee10637dd 100644
--- a/resources/views/common/export-styles.blade.php
+++ b/resources/views/common/export-styles.blade.php
@@ -47,8 +47,15 @@
             display: block;
         }
 
+        @if($engine === \BookStack\Entities\Tools\PdfGenerator::ENGINE_DOMPDF)
+        {{-- Fix for full width linked image sizes on DOMPDF --}}
         .page-content a > img {
-            max-width: none;
+            max-width: 700px;
         }
+        {{-- Undoes the above for table images to prevent visually worse scenario, Awaiting next DOMPDF release for patch --}}
+        .page-content td a > img {
+            max-width: 100%;
+        }
+        @endif
     </style>
 @endif
\ No newline at end of file
diff --git a/resources/views/layouts/export.blade.php b/resources/views/layouts/export.blade.php
index 55df43a45..a951e262d 100644
--- a/resources/views/layouts/export.blade.php
+++ b/resources/views/layouts/export.blade.php
@@ -4,7 +4,7 @@
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
     <title>@yield('title')</title>
 
-    @include('common.export-styles', ['format' => $format])
+    @include('common.export-styles', ['format' => $format, 'engine' => $engine ?? ''])
     @include('common.export-custom-head')
 </head>
 <body>