diff --git a/entity_print.module b/entity_print.module
index f57ceca..d04fd1b 100644
--- a/entity_print.module
+++ b/entity_print.module
@@ -11,6 +11,7 @@ use Drupal\Core\Entity\EntityInterface;
 use Drupal\Core\Form\FormStateInterface;
 use Drupal\Core\Url;
 use Drupal\entity_print\Renderer\ContentEntityRenderer;
+use Drupal\node\NodeTypeInterface;
 
 /**
  * Implements hook_theme().
@@ -154,3 +155,71 @@ function entity_print_form_entity_view_display_edit_form_submit(&$form, FormStat
   }
   $display->save();
 }
+
+/**
+ * Implements hook_form_FORM_ID_alter() for \Drupal\node\NodeTypeForm.
+ *
+ * Adds menu options to the node type form.
+ *
+ * @see NodeTypeForm::form()
+ */
+function entity_print_form_node_type_form_alter(&$form, FormStateInterface $form_state) {
+  $entity_print_settings = \Drupal::config('entity_print.settings');
+  $config_engine = 'print_engines.pdf_engine';
+  $default_pdf_engine = $entity_print_settings->get($config_engine);
+
+  $plugin_manager = \Drupal::service('plugin.manager.entity_print.print_engine');
+  /** @var \Drupal\node\NodeTypeInterface $type */
+  $node_type = $form_state->getFormObject()->getEntity();
+
+  $print_engines = [];
+  foreach ($plugin_manager->getDefinitions() as $plugin_id => $definition) {
+    /** @var \Drupal\entity_print\Plugin\PrintEngineInterface $class */
+    $class = $definition['class'];
+    if ($class::dependenciesAvailable()) {
+      $print_engines[$definition['export_type']][$plugin_id] = $definition['label'];
+    }
+  }
+
+  // Add PDF engine setting to Content type.
+  $form['pdf_engine'] = [
+    '#type' => 'details',
+    '#title' => t('PDF Engine settings'),
+    '#group' => 'additional_settings',
+  ];
+
+  $form['pdf_engine']['pdf_engine_options'] = [
+    '#type' => 'select',
+    '#title' => t('Available and Enabled PDF Engines'),
+    '#description' => t('Entity Print - Select Content type specific PDF Engine.'),
+    '#default_value' => $node_type->getThirdPartySetting('entity_print', 'type_pdf_engine', $default_pdf_engine),
+    '#options' => !empty($print_engines['pdf']) ? $print_engines['pdf'] : [],
+  ];
+
+  $form['#entity_builders'][] = 'entity_print_form_node_type_form_builder';
+}
+
+/**
+ * Entity form builder for the node type form.
+ *
+ * Entity form builder to map 'enable_un_localization'
+ * value to third party settings.
+ *
+ * @param string $entity_type
+ *   Entity type.
+ * @param \Drupal\node\NodeTypeInterface $type
+ *   Node type.
+ * @param array $form
+ *   The form.
+ * @param \Drupal\Core\Form\FormStateInterface $form_state
+ *   The form state.
+ */
+function entity_print_form_node_type_form_builder($entity_type, NodeTypeInterface $type, array &$form, FormStateInterface $form_state) {
+  $pdf_engine_configuration = $form_state->getValue('pdf_engine_options');
+
+  if (isset($pdf_engine_configuration)) {
+    $type->setThirdPartySetting('entity_print', 'type_pdf_engine', $pdf_engine_configuration);
+    return;
+  }
+  $type->unsetThirdPartySetting('entity_print', 'type_pdf_engine');
+}
diff --git a/src/Controller/EntityPrintController.php b/src/Controller/EntityPrintController.php
index 500f1b4..7747d91 100644
--- a/src/Controller/EntityPrintController.php
+++ b/src/Controller/EntityPrintController.php
@@ -85,7 +85,15 @@ class EntityPrintController extends ControllerBase {
     $config = $this->config('entity_print.settings');
     $entity = $this->entityTypeManager->getStorage($entity_type)->load($entity_id);
 
-    $print_engine = $this->pluginManager->createSelectedInstance($export_type);
+    // Call content type specific PDF engine based on parameters.
+    if ($entity_type == 'node' && $export_type == 'pdf') {
+      $bundle = $entity->bundle();
+      $print_engine = $this->pluginManager->createTypePdfInstance($bundle);
+    }
+    else {
+      $print_engine = $this->pluginManager->createSelectedInstance($export_type);
+    }
+
     return (new StreamedResponse(function () use ($entity, $print_engine, $config) {
       // The Print is sent straight to the browser.
       $this->printBuilder->deliverPrintable([$entity], $print_engine, $config->get('force_download'), $config->get('default_css'));
diff --git a/src/Plugin/EntityPrint/PrintEngine/DomPdf.php b/src/Plugin/EntityPrint/PrintEngine/DomPdf.php
index c28e933..f1737b7 100644
--- a/src/Plugin/EntityPrint/PrintEngine/DomPdf.php
+++ b/src/Plugin/EntityPrint/PrintEngine/DomPdf.php
@@ -111,6 +111,7 @@ class DomPdf extends PdfEngineBase implements ContainerFactoryPluginInterface {
     return parent::defaultConfiguration() + [
       'enable_html5_parser' => TRUE,
       'disable_log' => FALSE,
+      'disable_watchdog_logging' => FALSE,
       'enable_remote' => TRUE,
       'cafile' => '',
       'verify_peer' => TRUE,
@@ -137,6 +138,12 @@ class DomPdf extends PdfEngineBase implements ContainerFactoryPluginInterface {
         '@log_file_name' => self::LOG_FILE_NAME,
       ]),
     ];
+    $form['disable_watchdog_logging'] = [
+      '#title' => $this->t('Disable Watchdog Logging'),
+      '#type' => 'checkbox',
+      '#default_value' => $this->configuration['disable_watchdog_logging'],
+      '#description' => $this->t("Check to disable DomPdf logging to watchdog."),
+    ];
     $form['enable_remote'] = [
       '#title' => $this->t('Enable Remote URLs'),
       '#type' => 'checkbox',
@@ -188,8 +195,8 @@ class DomPdf extends PdfEngineBase implements ContainerFactoryPluginInterface {
 
     // Dompdf doesn't have a return value for send so just check the error
     // global it provides.
-    if ($errors = $this->getError()) {
-      throw new PrintEngineException(sprintf('Failed to generate PDF: %s', $errors));
+    if ($errors = $this->getError() && $this->configuration['disable_watchdog_logging'] == TRUE) {
+      watchdog_exception('entity_print', new PrintEngineException(sprintf('Failed to generate PDF: %s', $errors)));
     }
 
     // The Dompdf library internally adds the .pdf extension so we remove it
diff --git a/src/Plugin/EntityPrintPluginManager.php b/src/Plugin/EntityPrintPluginManager.php
index b7e83f7..da69fe1 100644
--- a/src/Plugin/EntityPrintPluginManager.php
+++ b/src/Plugin/EntityPrintPluginManager.php
@@ -105,6 +105,23 @@ class EntityPrintPluginManager extends DefaultPluginManager implements EntityPri
     return $this->createInstance($plugin_id);
   }
 
+  /**
+   * {@inheritdoc}
+   */
+  public function createTypePdfInstance($bundle) {
+    $type_object = $this->entityTypeManager->getStorage('node_type')
+      ->load($bundle);
+
+    $type_pdf_engine = $type_object->getThirdPartySetting('entity_print', 'type_pdf_engine', 0);
+
+    // If no content type specific pdf engine is selected - Return default.
+    if (!($type_pdf_engine)) {
+      return $this->createSelectedInstance('pdf');
+    }
+
+    return $this->createInstance($type_pdf_engine);
+  }
+
   /**
    * {@inheritdoc}
    */
