Postingan lainnya
Cara buat table tidak loncat halaman ketika generate pdf laravel
misal saya punya file hasil generate seperti ini
image.pngimage.png
kalau dilihat dari hasilnya, dari gambar 1 itu kan ada space kosong kebawah yang seharusnya itu diisi oleh data nomor 2. tapi karena data nomor 2 isi kontennya terlalu panjang, mengakibatkan data no 2 malah loncat ke halaman selanjutnya. kira" ada yg tau ga yaa caranya biar data nomor 2 itu sebagian nya ada di halaman 1, dan sebagiannya lagi ada di halaman 2. jadi expectednya itu ga ada konten yg loncat ke halaman selanjutnya kalau misal isi kontennya itu banyak
terimakasihh
1 Jawaban:
<div>ini isi kodingannnya</div><pre><!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> @page { margin: 0.5cm; }
body {
font-size: 7pt;
font-family: 'Open Sans', sans-serif;
}
.header-table {
width: 100%;
border: 1px solid black;
border-collapse: collapse;
}
.header-table td{
border: 1px solid black;
padding: 5px;
font-size: 8pt;
}
.title-table {
width: 100%;
border: 1px solid black;
border-collapse: collapse;
}
.title-table td{
border: 1px solid black;
padding: 4px;
font-weight: bold;
}
.content-table {
width: 100%;
margin-top: 10px;
border: 1px solid black;
border-collapse: collapse;
overflow: wrap;
}
.content-table td, th {
border: 1px solid black;
padding: 6px;
vertical-align: top;
font-size: 7pt;
}
.signing-table {
width: 100%;
margin-top: 20px;
margin-left: 160px;
}
.content-table .content-title {
text-align: center;
font-weight: bold;
background-color: #CCFFCC;
}
&lt;/style&gt;
</head> <body> {{-- set locale --}} @php \Carbon\Carbon::setLocale('id'); $baseUrlImage = 'link base url'; @endphp
{{-- SECTION HEADER --}}
&lt;table class="header-table"&gt;
&lt;tr&gt;
&lt;td rowspan="3" style="text-align: center; width: 98px"&gt;&lt;img src="link image" width="80px"&gt;&lt;/img&gt;&lt;/td&gt;
&lt;td style="text-align: center"&gt;&lt;b&gt;TELKOM UNIVERSITY&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;&lt;td style="text-align: center"&gt;&lt;b&gt;Jl. Telekomunikasi No. 1 Ters. Buah Batu Bandung 40257&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="text-align: center"&gt;&lt;b&gt;{{ $meeting-&gt;meeting_name }}&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
{{-- SECTION TITLE --}}
&lt;table class="title-table" style="margin-top: 10px;"&gt;
{{-- Set date time --}}
&lt;tr&gt;
&lt;td style="width: 95px"&gt;Hari/Tanggal/Waktu&lt;/td&gt;
&lt;td style="width: 8px"&gt;:&lt;/td&gt;
&lt;td&gt;{{ \Carbon\Carbon::parse($meeting-&gt;start_date)-&gt;translatedFormat('l / d F Y') }} / {{ substr($meeting-&gt;start_time, 0, -3) }} - {{ substr($meeting-&gt;end_time, 0, -3) }} WIB&lt;/td&gt;
&lt;/tr&gt;
{{-- Set location --}}
&lt;tr&gt;
&lt;td style="width: 95px"&gt;Tempat&lt;/td&gt;
&lt;td style="width: 8px"&gt;:&lt;/td&gt;
&lt;td&gt;{{ ($meeting-&gt;other_meeting_location == null) ? $meeting-&gt;location-&gt;name : $meeting-&gt;other_meeting_location }}&lt;/td&gt;
&lt;/tr&gt;
{{-- Set meeting agenda --}}
&lt;tr&gt;
&lt;td rowspan="{{ count($meeting-&gt;agenda) }}" style="width: 95px; vertical-align:top"&gt;Agenda&lt;/td&gt;
&lt;td style="width: 8px; vertical-align: top"&gt;:&lt;/td&gt;
&lt;td style="vertical-align: top"&gt;
&lt;p&gt;{!! $meeting-&gt;agenda[0]-&gt;agenda_content !!}&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
@foreach ($meeting-&gt;agenda as $key =&gt; $agenda)
@if ($key == 0)
@continue
@endif
&lt;tr&gt;
&lt;td style="width: 8px; vertical-align:top"&gt;:&lt;/td&gt;
&lt;td style="vertical-align: top"&gt;
&lt;p&gt;{!! $agenda-&gt;agenda_content !!}&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
@endforeach
&lt;/table&gt;
{{-- SECTION CONTENT --}}
&lt;table class="content-table" style="overflow: wrap" autosize="2.4"&gt;
&lt;tr class="content-title"&gt;
&lt;th style="width: 3%;"&gt;No&lt;/th&gt;
&lt;th style="width: 15%;"&gt;Agenda&lt;/th&gt;
&lt;th style="width: 22%;"&gt;Pembahasan/Permasalahan&lt;/th&gt;
&lt;th style="width: 20%;"&gt;Rencana Tindakan/Perbaikan&lt;/th&gt;
&lt;th style="width: 15%;"&gt;Luaran/Outcomes&lt;/th&gt;
&lt;th style="width: 10%;"&gt;PIC&lt;/th&gt;
&lt;th style="width: 10%;"&gt;Target&lt;/th&gt;
&lt;th style="width: 5%;"&gt;Status&lt;/th&gt;
&lt;/tr&gt;
@php $no = 1; @endphp
@foreach ($data as $key =&gt; $content)
&lt;tr&gt;
{{-- Nomor --}}
{{-- kondisonal border untuk rowspan --}}
@if ($key &gt; 0 &amp;&amp; $data[$key]-&gt;agenda_content_id != $data[$key-1]-&gt;agenda_content_id)
&lt;td style="border-top: 2px solid black"&gt;
@else
&lt;td style="{{ ($key == count($data)-1) ? 'border-bottom: 2px solid black' : '' }}"&gt;
@endif
{{-- Pengisian value --}}
@if ($key == 0)
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;
{{ $no++ }}
&lt;/p&gt;
@else
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;
{{ ($data[$key]-&gt;agenda_content_id != $data[$key-1]-&gt;agenda_content_id) ? $no++ : '' }}
&lt;/p&gt;
@endif
&lt;/td&gt;
{{-- Agenda --}}
{{-- kondisonal border untuk rowspan --}}
@if ($key &gt; 0 &amp;&amp; $data[$key]-&gt;agenda_content_id != $data[$key-1]-&gt;agenda_content_id)
&lt;td style="border-top: 2px solid black"&gt;
@else
&lt;td style="{{ ($key == count($data)-1) ? 'border-bottom: 2px solid black' : '' }}"&gt;
@endif
{{-- Pengisian value --}}
@if ($key == 0)
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;{!! $content-&gt;agenda_content !!}&lt;/p&gt;
@else
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;{!! ($data[$key]-&gt;agenda_content_id != $data[$key-1]-&gt;agenda_content_id) ? $content-&gt;agenda_content : '' !!}&lt;/p&gt;
@endif
&lt;/td&gt;
{{-- Pembahasan --}}
{{-- kondisonal border untuk rowspan --}}
@if ($key &gt; 0 &amp;&amp; $data[$key]-&gt;agenda_content_id != $data[$key-1]-&gt;agenda_content_id)
&lt;td style="border-top: 2px solid black"&gt;
@else
&lt;td style="{{ ($key == count($data)-1) ? 'border-bottom: 2px solid black' : '' }}"&gt;
@endif
{{-- Pengisian value --}}
@if ($key == 0)
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;{!! $content-&gt;discussion_content !!}&lt;/p&gt;
@if($content-&gt;image_url != null)
&lt;img style="page-break-inside: avoid; page-break-after: avoid; width: 190px" src="{{ $baseUrlImage.$content-&gt;image_url }}" width="190px"&gt;
@endif
@else
@if($data[$key]-&gt;discussion_content_id != $data[$key-1]-&gt;discussion_content_id)
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;{!! $content-&gt;discussion_content !!}&lt;/p&gt;
@if($content-&gt;image_url != null)
&lt;img style="page-break-inside: avoid; page-break-after: avoid; width: 190px" src="{{ $baseUrlImage.$content-&gt;image_url }}" width="190px"&gt;
@endif
@endif
@endif
&lt;/td&gt;
{{-- Rencana Tindakan --}}
{{-- kondisonal border untuk rowspan --}}
@if ($key &gt; 0 &amp;&amp; $data[$key]-&gt;agenda_content_id != $data[$key-1]-&gt;agenda_content_id)
&lt;td style="border-top: 2px solid black"&gt;
@else
&lt;td style="{{ ($key == count($data)-1) ? 'border-bottom: 2px solid black' : '' }}"&gt;
@endif
{{-- Pengisian value --}}
@if ($key == 0)
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;{!! $content-&gt;follow_up_content !!}&lt;/p&gt;
@else
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;{!! ($data[$key]-&gt;follow_up_content_id != $data[$key-1]-&gt;follow_up_content_id) ? $content-&gt;follow_up_content : '' !!}&lt;/p&gt;
@endif
&lt;/td&gt;
{{-- Outcome --}}
{{-- kondisonal border untuk rowspan --}}
@if ($key &gt; 0 &amp;&amp; $data[$key]-&gt;agenda_content_id != $data[$key-1]-&gt;agenda_content_id)
&lt;td style="border-top: 2px solid black"&gt;
@else
&lt;td style="{{ ($key == count($data)-1) ? 'border-bottom: 2px solid black' : '' }}"&gt;
@endif
{{-- Pengisian value --}}
@if ($key == 0)
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;{!! $content-&gt;outcome_content !!}&lt;/p&gt;
@else
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;{!! ($data[$key]-&gt;follow_up_outcome_id != $data[$key-1]-&gt;follow_up_outcome_id) ? $content-&gt;outcome_content : '' !!}&lt;/p&gt;
@endif
&lt;/td&gt;
{{-- PIC --}}
{{-- kondisonal border untuk rowspan --}}
@if ($key &gt; 0 &amp;&amp; $data[$key]-&gt;agenda_content_id != $data[$key-1]-&gt;agenda_content_id)
&lt;td style="border-top: 2px solid black"&gt;
@else
&lt;td style="{{ ($key == count($data)-1) ? 'border-bottom: 2px solid black' : '' }}"&gt;
@endif
{{-- Pengisian value --}}
@if ($key == 0 &amp;&amp; $content-&gt;follow_up_outcome_id != null)
@foreach ($content-&gt;pic as $dataPic)
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;
{!! (count($content-&gt;pic) &gt; 1) ? '• ' : '' !!}{!! $dataPic-&gt;full_name !!} ({!! $dataPic-&gt;position_name !!})
&lt;/p&gt;&lt;br&gt;
@endforeach
@elseif ($key != 0 &amp;&amp; $content-&gt;follow_up_outcome_id != null)
@if($data[$key]-&gt;follow_up_outcome_id != $data[$key-1]-&gt;follow_up_outcome_id)
@foreach ($content-&gt;pic as $dataPic)
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;
{!! (count($content-&gt;pic) &gt; 1) ? '• ' : '' !!}{!! $dataPic-&gt;full_name !!} ({!! $dataPic-&gt;position_name !!})
&lt;/p&gt;&lt;br&gt;
@endforeach
@endif
@endif
&lt;/td&gt;
{{-- Target --}}
{{-- kondisonal border untuk rowspan --}}
@if ($key &gt; 0 &amp;&amp; $data[$key]-&gt;agenda_content_id != $data[$key-1]-&gt;agenda_content_id)
&lt;td style="border-top: 2px solid black"&gt;
@else
&lt;td style="{{ ($key == count($data)-1) ? 'border-bottom: 2px solid black' : '' }}"&gt;
@endif
{{-- Pengisian value --}}
@if ($key == 0 &amp;&amp; $content-&gt;follow_up_outcome_id != null)
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;
{!! \Carbon\Carbon::parse($content-&gt;target_date)-&gt;translatedFormat('l, d F Y') !!}
&lt;/p&gt;
@elseif ($key != 0 &amp;&amp; $content-&gt;follow_up_outcome_id != null)
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;
{!! ($data[$key]-&gt;follow_up_outcome_id != $data[$key-1]-&gt;follow_up_outcome_id) ? \Carbon\Carbon::parse($content-&gt;target_date)-&gt;translatedFormat('l, d F Y') : '' !!}
&lt;/p&gt;
@endif
&lt;/td&gt;
{{-- Status --}}
{{-- kondisonal border untuk rowspan --}}
@if ($key &gt; 0 &amp;&amp; $data[$key]-&gt;agenda_content_id != $data[$key-1]-&gt;agenda_content_id)
&lt;td style="border-top: 2px solid black"&gt;
@else
&lt;td style="{{ ($key == count($data)-1) ? 'border-bottom: 2px solid black' : '' }}"&gt;
@endif
{{-- Pengisian value --}}
@if ($key == 0 &amp;&amp; $content-&gt;follow_up_outcome_id != null)
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;
{!! $content-&gt;status_name !!}
&lt;/p&gt;
@elseif ($key != 0 &amp;&amp; $content-&gt;follow_up_outcome_id != null)
&lt;p style="page-break-inside: avoid; page-break-after: avoid;"&gt;
{!! ($data[$key]-&gt;follow_up_outcome_id != $data[$key-1]-&gt;follow_up_outcome_id) ? $content-&gt;status_name : '' !!}
&lt;/p&gt;
@endif
&lt;/td&gt;
&lt;/tr&gt;
@endforeach
&lt;/table&gt;
{{-- Penandatanganan --}}
&lt;table class="signing-table"&gt;
&lt;tr&gt;
{{-- Pemimpin rapat --}}
&lt;td align="left" width="55%"&gt;
&lt;div&gt;
&lt;div style="margin-bottom: 8px;"&gt;Disetujui oleh,&lt;/div&gt;
@if ($meeting-&gt;qr_path != null)
&lt;br&gt;
&lt;div style="color: #17a2b8"&gt;&lt;i&gt;TTD.&lt;/i&gt;&lt;/div&gt;
&lt;img style="margin-left: 100px" src="link image" width="60px" height="60px" alt=""&gt;
&lt;br&gt;&lt;br&gt;
@else
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;
&lt;div style="color: #17a2b8"&gt;&lt;i&gt;TTD.&lt;/i&gt;&lt;/div&gt;
&lt;br&gt;
@endif
&lt;b style="border-bottom: 1px solid black;"&gt;{{$meeting-&gt;meeting_leader_full_name}}&lt;/b&gt;
&lt;div&gt;{{ucwords(strtolower($meeting-&gt;meeting_leader_position_name))}}&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
{{-- Penerima kuasa --}}
&lt;td align="left" width="45%"&gt;
&lt;div&gt;
&lt;div style="margin-bottom: 8px;"&gt;Dibuat oleh,&lt;/div&gt;
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;
&lt;div style="color: #17a2b8"&gt;&lt;i&gt;TTD.&lt;/i&gt;&lt;/div&gt;
&lt;br&gt;
@if ($meeting-&gt;note_taker != null)
&lt;b style="border-bottom: 1px solid black;"&gt;{{ $meeting-&gt;note_taker-&gt;full_name }}&lt;/b&gt;
&lt;div&gt;{{ ucwords(strtolower($meeting-&gt;note_taker-&gt;position_name)) }}&lt;/div&gt;
@endif
&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
</body> </html></pre>