You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
864B

  1. <?php
  2. namespace App\Http\Controllers\Web\Pdf;
  3. use App\Http\Controllers\Web\WebController;
  4. use Illuminate\Http\Request;
  5. use Illuminate\Http\Response;
  6. use PDF;
  7. class TestController extends WebController
  8. {
  9. public function name(): string
  10. {
  11. return "テスト用PDF出力";
  12. }
  13. public function description(): string
  14. {
  15. return "テスト用PDF出力をする";
  16. }
  17. public function __construct(protected TestParam $param)
  18. {
  19. parent::__construct();
  20. }
  21. protected function run(Request $request): Response
  22. {
  23. $pdf = PDF::loadView("pdf/test");
  24. $filename = "test.pdf";
  25. $ret = $pdf->setPaper("A4")
  26. ->setOption('encoding', 'utf-8')
  27. ->inline()
  28. ->header("Content-Disposition", sprintf('inline; filename=%s', $filename));
  29. return $ret;
  30. }
  31. }