# MPDF Library richtig Nutzen?

**URL:** https://forum.shopware.com/t/mpdf-library-richtig-nutzen/54681
**Category:** Programmierung
**Created:** [18. August 2018 um 11:01 UTC](https://forum.shopware.com/t/mpdf-library-richtig-nutzen/54681 "2018-08-18T11:01:49Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![IKM\_Shop](https://avatars.discourse-cdn.com/v4/letter/i/71c47a/32.png) [@IKM\_Shop](https://forum.shopware.com/u/IKM_Shop)
#### Post date: [18. August 2018 um 11:01 UTC](https://forum.shopware.com/t/mpdf-library-richtig-nutzen/54681/1 "2018-08-18T11:01:49Z")

</div>

Hallo Zusammen,&nbsp;

Ich bin gerade dabei ein Plugin zur generierung von PDFs bei klicken eines Buttons auf&nbsp;der Artikelseite zu erstellen. Ich hab jetzt mit einem js Plugin angefangen und wollte ein Ajax Request an eine php Funktion senden, die für das Rendern verantwortlich ist. Nachdem ich folgenden Beitrag gefunden (&nbsp;[https://forum.shopware.com/discussion/37661/pdf-erstellung-mit-mpdf-in-shopware-oder-anderem-tool-innerhalb-plugin](https://forum.shopware.com/discussion/37661/pdf-erstellung-mit-mpdf-in-shopware-oder-anderem-tool-innerhalb-plugin))&nbsp;habe bin ich mir nicht mehr sicher ob das überhaupt sinnvoll ist oder ob es einen besseren Weg gibt das ganze&nbsp;umzusetzen. Ich hoffe ihr könnt mir da weiterhelfen und ein paar hilfreiche Tipps geben!

Vielen Dank schonmal im vorraus und schönes Wochenende!

Grüße Lukas

---

<div class="post-metadata">

### Author: ![karlharris](https://avatars.discourse-cdn.com/v4/letter/k/58956e/32.png) [@karlharris](https://forum.shopware.com/u/karlharris)
#### Post date: [18. August 2018 um 12:24 UTC](https://forum.shopware.com/t/mpdf-library-richtig-nutzen/54681/2 "2018-08-18T12:24:31Z")

</div>

Hallo Lukas&nbsp;@IKM\_Shop‍,

ich musste mal ein eigenes PDF generieren für dynamische Formular-PDFs - dafür habe ich damals einen eigenen Controller (den du ja auch per Ajax ansprechen kannst) im Plugin angelegt und dort dann die Mpdf-Library per&nbsp;

```
require_once(Shopware()->DocPath().'engine/Library/Mpdf/mpdf.php');

$mpdf = \Mpdf(['mode'=>'utf-8']);

```

geladen…

Alles Weitere findest du dann hier:&nbsp;[https://mpdf.github.io/](https://mpdf.github.io/)

---

<div class="post-metadata">

### Author: ![IKM\_Shop](https://avatars.discourse-cdn.com/v4/letter/i/71c47a/32.png) [@IKM\_Shop](https://forum.shopware.com/u/IKM_Shop)
#### Post date: [18. August 2018 um 12:45 UTC](https://forum.shopware.com/t/mpdf-library-richtig-nutzen/54681/3 "2018-08-18T12:45:54Z")

</div>

okay danke schon mal für den ersten Tip!&nbsp;

ich hab bis jetzt so angefangen und wollte dann über den Ajax ein php funktion aufrufen. Bin ich damit auf dem richtigen Weg oder liege ich da total falsch?&nbsp;

```
;(function ($, window) {
  'use strict';

  $.plugin('pdf', {
    defaults: {

    },

    init: function(){
      var me = this;

      me.applyDataAttributes();
      me.registerEvents();
      console.log('onInit');
    },

    registerEvents:function(){
      var me = this;
      me._on(me.$el, 'click', $.proxy(me.onButtonClick, me));

    },

    onButtonClick: function(event){
      console.log('onInitClick');
      var me = this;
          $.ajax({
            url: 'http://localhost:8080/themes/Frontend/MPDF/_private/smarty/pdf.php',
            type:'_post',
            success: function(response){
            console.log('Success');
              window.location = response

          }
          });
    },

    destroy: function(){

    }
  });
})(jQuery, window);

$('#pdf').pdf();

```

&nbsp;

---

<div class="post-metadata">

### Author: ![karlharris](https://avatars.discourse-cdn.com/v4/letter/k/58956e/32.png) [@karlharris](https://forum.shopware.com/u/karlharris)
#### Post date: [18. August 2018 um 12:58 UTC](https://forum.shopware.com/t/mpdf-library-richtig-nutzen/54681/4 "2018-08-18T12:58:16Z")

</div>

Ich denke du solltest dich erstmal mit den Grundlagen für Plugins auseinandersetzen:&nbsp;[https://developers.shopware.com/plugin-guide/](https://developers.shopware.com/plugin-guide/)

Wenn du deinen eigenen Controller hast, brauchst du als URL bloß “/deinController” angeben

&nbsp;
