diff --git a/pdf_using_mpdf.info.yml b/pdf_using_mpdf.info.yml
index fdcb4f0..0cc6522 100644
--- a/pdf_using_mpdf.info.yml
+++ b/pdf_using_mpdf.info.yml
@@ -1,7 +1,6 @@
 name: PDF using mPDF
 type: module
 description: 'HTML to PDF conversion using mPDF Library'
-core: 8.x 
-core_version_requirement: ^8 || ^9
+core_version_requirement: ^9.4 || ^10
 package: 'PDF Conversion'
 configure: pdf_using_mpdf.admin_form
diff --git a/src/Controller/GeneratePdf.php b/src/Controller/GeneratePdf.php
index 10f3062..41c4353 100644
--- a/src/Controller/GeneratePdf.php
+++ b/src/Controller/GeneratePdf.php
@@ -77,7 +77,8 @@ class GeneratePdf extends ControllerBase {
   public function generate($node = NULL) {
     // Use 'full' view mode, this can be altered via hooks, if needed.
     $view = $this->entityTypeManager->getViewBuilder('node')->view($node);
-    $renderedNode = render($view)->__toString();
+    // Replace the deprecated render() function with the recommended method.
+	$renderedNode = \Drupal::service('renderer')->render($view)->__toString();
 
     // Let other modules alter HTML for PDF generation.
     $this->moduleHandler->alter('mpdf_html', $renderedNode, $node);
diff --git a/src/Conversion/ConvertToPdf.php b/src/Conversion/ConvertToPdf.php
index e8284ae..bf48f05 100644
--- a/src/Conversion/ConvertToPdf.php
+++ b/src/Conversion/ConvertToPdf.php
@@ -183,7 +183,7 @@ class ConvertToPdf implements ConvertToPdfInterface {
       if (isset($image_id[0])) {
         $file = File::load($image_id[0]);
         $image_path = $file->getFileUri();
-        $image_path = file_create_url($image_path);
+        $image_path = \Drupal::service('file_url_generator')->generateAbsoluteString($image_path);
         $this->mpdf->SetWatermarkImage($image_path, $watermark_opacity);
         $this->mpdf->showWatermarkImage = TRUE;
       }
diff --git a/tests/src/Functional/PdfUsingMpdfConfigurationFormTest.php b/tests/src/Functional/PdfUsingMpdfConfigurationFormTest.php
index 0bae5cc..5a966b3 100644
--- a/tests/src/Functional/PdfUsingMpdfConfigurationFormTest.php
+++ b/tests/src/Functional/PdfUsingMpdfConfigurationFormTest.php
@@ -66,29 +66,29 @@ class PdfUsingMpdfConfigurationFormTest extends PdfUsingMpdfTestBase {
     $this->drupalGet('admin/config/user-interface/mpdf');
 
     // Assert form values.
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-pdf-filename')->getValue(), 'pdf-test-file');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-pdf-save-option-1')->getValue(), '1');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-pdf-set-author')->getValue(), 'pdf-test-author');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-pdf-set-subject')->getValue(), 'pdf-test-subject');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-pdf-set-creator')->getValue(), 'pdf-test-creator');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-margin-top')->getValue(), '24');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-margin-right')->getValue(), '22');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-margin-bottom')->getValue(), '24');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-margin-left')->getValue(), '22');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-margin-header')->getValue(), '11');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-margin-footer')->getValue(), '11');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-pdf-font-size')->getValue(), '16');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-pdf-default-font')->getValue(), 'dejavusanscondensed');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-pdf-page-size')->getValue(), 'A1');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-dpi')->getValue(), '101');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-img-dpi')->getValue(), '105');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-orientation')->getValue(), 'L');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-watermark-opacity')->getValue(), '0.5');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-watermark-option-0')->getValue(), '0');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-pdf-watermark-text')->getValue(), 'pdf-watermark-test-text');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-pdf-header')->getValue(), 'pdf-test-header');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-pdf-footer')->getValue(), 'pdf-test-footer');
-    $this->assertEqual($this->getSession()->getPage()->findById('edit-pdf-css-file')->getValue(), '/path/to/css/file.css');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-pdf-filename')->getValue(), 'pdf-test-file');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-pdf-save-option-1')->getValue(), '1');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-pdf-set-author')->getValue(), 'pdf-test-author');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-pdf-set-subject')->getValue(), 'pdf-test-subject');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-pdf-set-creator')->getValue(), 'pdf-test-creator');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-margin-top')->getValue(), '24');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-margin-right')->getValue(), '22');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-margin-bottom')->getValue(), '24');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-margin-left')->getValue(), '22');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-margin-header')->getValue(), '11');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-margin-footer')->getValue(), '11');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-pdf-font-size')->getValue(), '16');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-pdf-default-font')->getValue(), 'dejavusanscondensed');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-pdf-page-size')->getValue(), 'A1');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-dpi')->getValue(), '101');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-img-dpi')->getValue(), '105');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-orientation')->getValue(), 'L');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-watermark-opacity')->getValue(), '0.5');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-watermark-option-0')->getValue(), '0');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-pdf-watermark-text')->getValue(), 'pdf-watermark-test-text');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-pdf-header')->getValue(), 'pdf-test-header');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-pdf-footer')->getValue(), 'pdf-test-footer');
+    $this->assertEquals($this->getSession()->getPage()->findById('edit-pdf-css-file')->getValue(), '/path/to/css/file.css');
 
     $this->drupalLogout();
   }
diff --git a/tests/src/Functional/PdfUsingMpdfMenuAccessTest.php b/tests/src/Functional/PdfUsingMpdfMenuAccessTest.php
index 1a623bf..27cbfc2 100644
--- a/tests/src/Functional/PdfUsingMpdfMenuAccessTest.php
+++ b/tests/src/Functional/PdfUsingMpdfMenuAccessTest.php
@@ -26,7 +26,8 @@ class PdfUsingMpdfMenuAccessTest extends PdfUsingMpdfTestBase {
       ];
       break;
     }
-    $this->drupalPostForm('admin/people/permissions', $edit, 'Save permissions');
+    $this->drupalGet('admin/people/permissions');
+    $this->submitForm($edit, 'Save permissions');
 
     // Create nodes.
     $node_type_a = $this->createNode(['type' => 'type_a']);
diff --git a/tests/src/Functional/PdfUsingMpdfOutputTest.php b/tests/src/Functional/PdfUsingMpdfOutputTest.php
index 540e29a..a7a47d8 100644
--- a/tests/src/Functional/PdfUsingMpdfOutputTest.php
+++ b/tests/src/Functional/PdfUsingMpdfOutputTest.php
@@ -16,11 +16,12 @@ class PdfUsingMpdfOutputTest extends PdfUsingMpdfTestBase {
    */
   public function testOutput() {
     $this->drupalLogin($this->adminUser);
-    $this->drupalPostForm('admin/people/permissions', ['authenticated[generate type_a pdf]' => TRUE], 'Save permissions');
+    $this->drupalGet('admin/people/permissions');
++   $this->submitForm(['authenticated[generate type_a pdf]' => TRUE], 'Save permissions');
 
     $node_type_a = $this->createNode(['type' => 'type_a']);
     $this->drupalGet('node/' . $node_type_a->id() . '/pdf');
-    $this->assertResponse(200);
+    $this->assertSession()->statusCodeEquals(200);
     $this->assertSession()->responseHeaderContains('Content-Type', 'application/pdf');
   }
 
