Giriş yapmadınız.

#1 17.04.2019 22:34:03

GkyKrkc
Üye
Yer: Seyyah
Kayıtlı: 04.04.2017
Mesajlar: 252

Fatura Print

Merhabalar kolay gelsin arkadaşlar, stok takip proğramı yaptım ve giriş çıkış faturalarını yazdırmak istiyorum, jquery ile faturayı yazdırabiliriyorm buraya kadar sorun yok, ama fatura ikinci sayfaya taştığı zaman  faturanın header ve footer kısımlarının ikinci sayfada da yazdırılmasını istiyorum bunu nasıl yapabilirim , css kısmında

<style media="print">
    .header {
        display:block;
        position:fixed;
    }
</style>

bunlarıda denedim  ama olmadı. farklı bir çözümü olan var ise paylaşırsa sevinirim. şimdiden çok teşekkür ederim

Çevrimdışı

#2 18.04.2019 13:08:05

sineld
Yönetici
Yer: Bursa
Kayıtlı: 26.12.2012
Mesajlar: 1,474
Website

Yanıt: Fatura Print

Yazdırma ekranında, pc'de ayarlanabiliyor.
JS veya CSS'te bilen varsa yazsın.

Çevrimdışı

#3 18.04.2019 14:13:59

mgsmus
Moderatör
Yer: Mersin
Kayıtlı: 17.08.2013
Mesajlar: 1,623
Website

Yanıt: Fatura Print

Ben genellikle PDF'e çevirdiğim için hiç CSS ile yapma gereği hissetmedim ama şöyle bir şey buldum:

<table>
  <thead><tr><td>
    <div class="header-space">&nbsp;</div>
  </td></tr></thead>
  <tbody><tr><td>
    <div class="content">
        İçerik buraya
    </div>
  </td></tr></tbody>
  <tfoot><tr><td>
    <div class="footer-space">&nbsp;</div>
  </td></tr></tfoot>
</table>
<div class="header">Header buraya</div>
<div class="footer">Footer buraya</div>
.header, .header-space,
.footer, .footer-space {
  height: 100px;
}
.header {
  position: fixed;
  top: 0;
}
.footer {
  position: fixed;
  bottom: 0;
}

Bu da demosu (yazdır deyince çalıştığını gördüm):
https://next.plnkr.co/edit/lWk6Yd?preview

Çevrimdışı

#4 18.04.2019 14:20:14

sineld
Yönetici
Yer: Bursa
Kayıtlı: 26.12.2012
Mesajlar: 1,474
Website

Çevrimdışı

#5 18.04.2019 14:46:46

GkyKrkc
Üye
Yer: Seyyah
Kayıtlı: 04.04.2017
Mesajlar: 252

Yanıt: Fatura Print

teşekkür ederim üstadlar, sanırım mgsmus üstadımın paylaşımı işimi görecek, bu arada DOM Pdf ile yapmaya çalışıyordum, onunda header ve bottom ayarlarını yapabilirsem on numara olur, burada paylaşırım tekrar teşekkürler elinize sağlık

Çevrimdışı

#6 18.04.2019 22:31:51

GkyKrkc
Üye
Yer: Seyyah
Kayıtlı: 04.04.2017
Mesajlar: 252

Yanıt: Fatura Print

mgsmus bu olayı pdf ile yapabiliyormusun ? yani ikinci yada üçüncü  sayfaya taşan değerleri header ve bottom kısımları her sayfada olacak şekilde DomPDF ile nasıl yaparız, rica etsem  kodları burada paylaşabilir misin sana zahmet

Çevrimdışı

#7 18.04.2019 22:53:22

mgsmus
Moderatör
Yer: Mersin
Kayıtlı: 17.08.2013
Mesajlar: 1,623
Website

Yanıt: Fatura Print

Ben bunu kullanıyorum (güncel)
https://github.com/mpdf/mpdf

$mpdf = new \Mpdf\Mpdf();
$mpdf->SetHTMLHeader('<div style="font-weight: bold;">Header</div>');
$mpdf->SetHTMLFooter('<div style="font-weight: bold;">Footer</div>');
$mpdf->WriteHTML('İçerik');
$mpdf->Output();

Çevrimdışı

#8 19.04.2019 08:31:13

deathisonitsway
Üye
Kayıtlı: 01.02.2016
Mesajlar: 445

Yanıt: Fatura Print

Güzelmiş bu mgsmus.keşke forklayabileceğim bir şey olsa idi smile tembel adamlar için not alması çok zor iş smile @gkykrkc sen at bunu repona forklayalım hadi smile


Laravel does not save you. Php knowledge only save you. Do not become a Laravel programmer, just the opposite,become php developer.

Çevrimdışı

#9 19.04.2019 08:58:05

mgsmus
Moderatör
Yer: Mersin
Kayıtlı: 17.08.2013
Mesajlar: 1,623
Website

Yanıt: Fatura Print

Ben bir ara böyle bir şey yapmaya niyetlendim, ne olduğunu gördüm, o günden beri her sabah aynaya bakıp "Tembel adam olmanın neresi kötü, o da bir karakter, önemli olan karakter sahibi olmak değil mi" deyip kendimi rahatlatıyorum. big_smile

Çevrimdışı

#10 19.04.2019 09:10:57

GkyKrkc
Üye
Yer: Seyyah
Kayıtlı: 04.04.2017
Mesajlar: 252

Yanıt: Fatura Print

mgsmus yazdı:

Ben bunu kullanıyorum (güncel)
https://github.com/mpdf/mpdf

$mpdf = new \Mpdf\Mpdf();
$mpdf->SetHTMLHeader('<div style="font-weight: bold;">Header</div>');
$mpdf->SetHTMLFooter('<div style="font-weight: bold;">Footer</div>');
$mpdf->WriteHTML('İçerik');
$mpdf->Output();

üstad bunun model view controller kısmınıda paylaşabilirmisin ? ingilizcem çok iyi değil, bu bileşende ikinci sayfalar dediğim mantıkta yazdırılabiliyor degil mi ?

Çevrimdışı

#11 19.04.2019 09:38:42

mgsmus
Moderatör
Yer: Mersin
Kayıtlı: 17.08.2013
Mesajlar: 1,623
Website

Yanıt: Fatura Print

public function pdfFatura($id)
{
    // Yazdıracağımız model
    $fatura = Fatura::findOrFail($id);

    // Bir tane fatura.blade.php şeklinde şablonumuz olsun. İçine Fatura'yı
    // gönderip şablondan faturanın htmlsini oluşturalım
    $faturaHtml = view('fatura', compact('fatura'));

    $mpdf = new \Mpdf\Mpdf();
    $mpdf->SetHTMLHeader('<div style="font-weight: bold;">Header</div>');
    $mpdf->SetHTMLFooter('<div style="font-weight: bold;">Footer</div>');
    $mpdf->WriteHTML($faturaHtml);
    
    // PDF yi yazdırmak için direk ekrana gösterelim
    $mpdf->Output();

    // Direk ekrana PDF göstermek yerine bir yere kaydetmek istersek $mpdf->Output() yerine
    // $mpdf->Output('dosyaadi.pdf', \Mpdf\Output\Destination::FILE); ya da
    // $mpdf->Output(public_path('faturalar/dosyaadi.pdf'), \Mpdf\Output\Destination::FILE);
}

Örnek fatura.blade.php

<!DOCTYPE html>
<html lang="tr">
<head>
    <meta charset="UTF-8">
    <title>{{ $fatura->title }}</title>
    <style>
        {{-- Fatura için CSS varsa inline olarak buraya aktaralım --}}
        {!! File::get(public_path('assets/fatura/style.css')) !!}
    </style>
</head>
<body>
    <table style="border: 0; border-collapse: collapse;width: 100%">
        <tbody>
        <tr>
            <td><img src="{{ asset('assets/fatura/logo.png') }}" alt="Fatura Logo"></td>
            <td class="text-right">
                {{ $fatura->amount }}
            </td>
        </tr>
        </tbody>
    </table>
    <!-- vs vs -->
</body>
</html>

Çevrimdışı

#12 19.04.2019 11:46:32

deathisonitsway
Üye
Kayıtlı: 01.02.2016
Mesajlar: 445

Yanıt: Fatura Print

mgsmus yazdı:

Ben bir ara böyle bir şey yapmaya niyetlendim, ne olduğunu gördüm, o günden beri her sabah aynaya bakıp "Tembel adam olmanın neresi kötü, o da bir karakter, önemli olan karakter sahibi olmak değil mi" deyip kendimi rahatlatıyorum. big_smile

ahahaha smile iyiymiş.Halinden memnun olma hissiyatına iyi bir kılıf işte.Artık ömür boyu bu kılıfın dışına çıkamayız.Aynı aynı bende de var o smile


Laravel does not save you. Php knowledge only save you. Do not become a Laravel programmer, just the opposite,become php developer.

Çevrimdışı

#13 24.04.2019 19:26:01

GkyKrkc
Üye
Yer: Seyyah
Kayıtlı: 04.04.2017
Mesajlar: 252

Yanıt: Fatura Print

üstadlar yukarıdaki bir çok yöntemi denedim fatura kısmını kendime göre yeterince dizayn edemedim. yani bu işi ilk ben yapıyomuşum gibi hisettim kendimi smile) invoice template tamam proje içerisinde çok güzel çalışıyor. ama yazdır dediğim zaman  orta content de yer alan ürünler, ikinci sayfaya geçtiğinde headerin üzerine çıkıyor,  gerek pdf ile yaptığımda gerekse megasmus'un paylaştığı css ile yapılan örnekte bunu bir türlü başaramadım. internette arama yaptım bulamadım. Çok rica ediyorum elinde html ile çalışan 2.sayfaya geçtiğinde de header ve fotter kısımları sabit yazdırılabilir bir şablonu olan var ise paylaşırsa sevinirim .

Son düzenleyen GkyKrkc (24.04.2019 19:27:05)

Çevrimdışı

#14 24.04.2019 22:28:54

mgsmus
Moderatör
Yer: Mersin
Kayıtlı: 17.08.2013
Mesajlar: 1,623
Website

Yanıt: Fatura Print

$mpdf = new \Mpdf\Mpdf([
    'setAutoTopMargin' => 'stretch',
    'setAutoBottomMargin' => 'stretch'
]);
// ...

Böyle deneyin.

Çevrimdışı

#15 26.04.2019 20:43:30

GkyKrkc
Üye
Yer: Seyyah
Kayıtlı: 04.04.2017
Mesajlar: 252

Yanıt: Fatura Print

mgsmus yazdı:
$mpdf = new \Mpdf\Mpdf([
    'setAutoTopMargin' => 'stretch',
    'setAutoBottomMargin' => 'stretch'
]);
// ...

Böyle deneyin.

Üstadım bunu denedim istediğim  oldu aslında , fakat header kısmında gereğinden fazla yükseklik atadı, sabit header ve footterin yükseklik ayarlamasını yapabileceğim bir yer var mı ?

Çevrimdışı

#16 26.04.2019 23:24:50

mgsmus
Moderatör
Yer: Mersin
Kayıtlı: 17.08.2013
Mesajlar: 1,623
Website

Yanıt: Fatura Print

Tam olarak ne yaptığınızı bilmiyorum ama setAutoTopMargin header yüksekliği kadar boşluk atıyor. O yüzden önce header kısmını kontrol edin orası fazla boşluk bırakıyor olabilir.

Ayrıca HTML Header eklediğiniz için sonuçta CSS ile yükseklik verebilirsiniz değil mi

$mpdf->SetHTMLHeader('<div style="height:300px;">Header</div>');

gibi...

Çevrimdışı

#17 27.04.2019 01:05:50

Kevin-Mitnick
Üye
Kayıtlı: 26.05.2016
Mesajlar: 482

Yanıt: Fatura Print

css te page break var bunu otomotik yapıyor bilginize


Mister Koder

Çevrimdışı

Forum alt kısmı