We sacrifice by not doing any other technology, so that you get the best of Magento.

We sacrifice by not doing any other technology, so that you get the best of Magento.

    1. Create Index.php at app/code/Magemonkeys/Pdf/Controller/Index folder with following code:
      <?php
      namespace MagemonkeysPdfControllerIndex;
       
      use MagentoFrameworkAppActionAction;
      use MagentoFrameworkAppActionContext;
      use MagentoFrameworkAppResponseHttpFileFactory;
       
      class Index extends Action
      {
          protected $fileFactory;
       
          public function __construct(
              Context $context,
              FileFactory $fileFactory
          ) {
              $this->fileFactory = $fileFactory;
              parent::__construct($context);
          }
       
          public function execute()
          {
              $pdf = new Zend_Pdf();
              $pdf->pages[] = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
              $page = $pdf->pages[0]; // this will get reference to the first page.
              $style = new Zend_Pdf_Style();
              $style->setLineColor(new Zend_Pdf_Color_Rgb(0,0,0));
              $font = Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_TIMES);
              $style->setFont($font,13);
              $page->setStyle($style);
              $width = $page->getWidth();
              $hight = $page->getHeight();
              $x = 30;
              $pageTopalign = 850; 
              $this->y = 850 - 100; 
              
              $style->setFont($font,14);
              $page->setStyle($style);
              $page->drawRectangle(30, $this->y + 10, $page->getWidth()-30, $this->y +70, Zend_Pdf_Page::SHAPE_DRAW_STROKE);
              
              $style->setFont($font,13);
              $page->setStyle($style);
              $page->drawText(__("Customer Details"), $x + 5, $this->y+50, 'UTF-8');
              $style->setFont($font,11);
              $page->setStyle($style);
              $page->drawText(__("Name : %1", "Jayeshkumar Lakum"), $x + 5, $this->y+33, 'UTF-8');
              $page->drawText(__("Email : %1","jayesh@webtechsystem.com"), $x + 5, $this->y+16, 'UTF-8');
       
              $style->setFont($font,11);
              $page->setStyle($style);
              
              $page->drawText(__("PRODUCT NAME"), $x + 60, $this->y-10, 'UTF-8');
              $page->drawText(__("PRODUCT PRICE"), $x + 200, $this->y-10, 'UTF-8');
              $page->drawText(__("QTY"), $x + 310, $this->y-10, 'UTF-8');
              $page->drawText(__("SUB TOTAL"), $x + 440, $this->y-10, 'UTF-8');
       
              $style->setFont($font,10);
              $page->setStyle($style);
              $add = 9;
              
              $page->drawText("$12.00", $x + 210, $this->y-30, 'UTF-8');
              $page->drawText(10, $x + 330, $this->y-30, 'UTF-8');
              $page->drawText("$120.00", $x + 470, $this->y-30, 'UTF-8');
              $pro = "Dummy Product";
              $page->drawText($pro, $x + 65, $this->y-30, 'UTF-8');
              
              $page->drawRectangle(30, $this->y -62, $page->getWidth()-30, $this->y + 10, Zend_Pdf_Page::SHAPE_DRAW_STROKE);
              $page->drawRectangle(30, $this->y -62, $page->getWidth()-30, $this->y - 100, Zend_Pdf_Page::SHAPE_DRAW_STROKE);
              
              $style->setFont($font,15);
              $page->setStyle($style);
              $page->drawText(__("Total : %1", "$50.00"), $x + 435, $this->y-85, 'UTF-8');
              
              $style->setFont($font,10);
              $page->setStyle($style);
              $page->drawText(__("Dummy Footer"), ($page->getWidth()/2)-50, $this->y-200);
       
              $fileName = 'order.pdf';
       
              $this->fileFactory->create(
                 $fileName,
                 $pdf->render(),
                 MagentoFrameworkAppFilesystemDirectoryList::VAR_DIR, // this pdf will be saved in var directory with the name meetanshi.pdf
                 'application/pdf'
              );
          }
      }

       

    Fill the below form if you need any Magento relate help/advise/consulting.

    With Only Agency that provides a 24/7 emergency support.

      Get a Free Quote