Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [Laravel] Cambiare orientamento pagina in dompdf

    ciao!

    in pratica ho questo problema.
    tutte le pagine hanno l'orientamento "normale", mentre l'ultima deve essere in landscape.
    però sinceramente non ho capito se dompdf è in grado di farlo.

    vi posto un pò di codice:
    codice:
    namespace App\Http\Controllers;
    
    use Barryvdh\DomPDF\Facade as PDF;
    
    class TestController extends Controller {
    
        public function index() {
            try {
                $data = array('nome' => 'matteo');
                $pdf = PDF::loadView('test', ['data' => $data]);
                return $pdf->download('test.pdf');
            } catch (\RuntimeException $ex) {
                return response()->json([
                    'res' => 'ko',
                    'message' => 'Errore: ' . $ex->getMessage()
                ]);
            }
        }
    
    }
    e questo il template:
    codice:
    <!DOCTYPE html>
    <html lang="en">
        <head>
            <meta charset="UTF-8">
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
            <title></title>
        </head>
        <body>
            <style>
                @page {
                    margin: 0 0;
                }
    
                body {
                    margin-top: 3.3cm;
                    margin-left: 2cm;
                    margin-right: 2cm;
                    margin-bottom: 2cm;
                    font-size: 16px;
                }
    
                #prev_footer {
                    position: fixed;
                    bottom: 0;
                    left: 0;
                    right: 0;
                    height: 2cm;
                    text-align: center;
                }
    
                .pagenum:before {
                    content: counter(page);
                }
            </style>
    
            <footer id="prev_footer">
                <span class="pagenum"></span>
            </footer>
    
            <main>
    
                <!-- PAG 1 -->
                <div style="page-break-after: always;">
                    <h2>{{$data['nome']}}</h2>
                </div>
    
                <!-- PAG 2 -->
                <div class="landscape">
                    <h2>{{$data['nome']}}</h2>
                </div>
    
            </main>
    
        </body>
    </html>
    ho fatto anche svariate prove coi CSS, ma ottenevo solo il contenuto traslato, non l'orientamento della pagina.
    qualche idea??

  2. #2

  3. #3
    Quote Originariamente inviata da filippo.toso Visualizza il messaggio
    $dompdf->set_paper('A4', 'landscape');
    ciao!

    eh ok, ma questo lo cambia su tutte le pagine.
    io devo cambiarlo solo sull'ultima!
    nell'esempio io ho due pagine, ma nel file real sono una decina, e solo l'ultima deve essere in landscape.

  4. #4
    se non ho capito male devo creare due pdf e poi unirli: https://stackoverflow.com/questions/...e-and-portrait

    da quello che ho capito dompdf non può cambiare questa impostazione a seconda delle pagine.

  5. #5
    alla fine ho usato laravel-pdfmerger per unire i due pdf.

    quindi ne creo due distinti salvandoli sul server, e poi li unisco e li mando in download.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.