我正在尝试为在我们网站上购物的访客开具发票,所以我使用了 barryvdh/laravel-snappy 包,但是当我的发票被下载时,我的图片或 CSS 文件都没有工作,它只会给我普通的 html 发票,这不是很给我的客户很漂亮我尝试了很多解决方案,但都没有奏效我什至尝试用 resource_path 或 public_path 替换资产方法,但它只是给了我控制台错误:
“不允许加载本地资源”
所以我唯一的选择是使用资产方法
这是我的 HTML 文件:
<!doctype html>
<html lang="fr">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="{{ asset('assets/bootstrap/dist/css/bootstrap.css') }}">
<!-- Font Awesome -->
<link rel="stylesheet" href="{{ asset('assets/font-awesome/css/all.css') }}">
<!-- Custom Style -->
<link rel="stylesheet" href="{{ asset('assets/front/css/factureTemplate.css') }}">
<title>Nouha | Ma facture</title>
<!-- Favicon -->
<link rel="apple-touch-icon" sizes="180x180" href="{{ asset('assets/favicon/apple-touch-icon.png') }}">
<link rel="icon" type="image/png" sizes="32x32" href="{{ asset('assets/favicon//favicon-32x32.png') }}">
<link rel="icon" type="image/png" sizes="16x16" href="{{asset('assets/favicon//favicon-16x16.png') }}">
<link rel="manifest" href="{{ asset('assets/favicon//site.webmanifest') }}">
</head>
<body>
<div class="row">
<div class="col-12" align="right">
<a class="btn btn-warning" href="{{ URL('factures/'.$facture->id) }}" target="_blank">Exporter <i class="fas fa-file-pdf"></i></a>
<a class="btn btn-secondary" href="{{ URL('mon_panier/'.$facture->id) }}">Retour <i class="fas fa-arrow-circle-left"></i></a>
</div>
</div>
<div class="my-5 page" size="A4">
<div class="p-5">
<section class="top-content bb d-flex justify-content-between">
<div class="logo">
<img src="{{ asset('assets/logo.png')}}" alt="" class="img-fluid">
</div>
<div class="top-left">
<div class="graphic-path">
<h2>ETS SI-KHALID</h2>
</div>
<div class="position-relative">
<p style="text-align: center;">
Vente en gros de matériels et machines manuelles et automatiques <br> destinées à tous usages<br>
RC : N13/001377932/A/14 *** NIF : 189200101209192<br>
NIS : 19820010120919 *** RIP : 0290031322003990001<br>
</div>
</div>
</section>
<section class="store-user mt-5">
<div class="col-10">
<div class="row bb pb-3">
<div class="col-6">
<p>Fournisseur,</p>
<h2>ETS SI-KHALID</h2>
<p class="address"> Cité EL KIFFANE<br> Rue Darrar abd el rahmen N°03 <br> Tlemcen, Algérie </p>
</div>
<div class="col-6">
<p>Client,</p>
<h2>{{ Auth::user()->name }} {{ Auth::user()->prenom }}</h2>
<p class="address"> {{ Auth::user()->ville }}</p>
</div>
</div>
<div class="row extra-info pt-3">
<div class="col-7">
<p>Projet : <span>{{$facture->nom}}</span></p>
<p>Methode de paiment: <span>{{ $facture->methodeDePaiment }}</span></p>
</div>
<div class="col-5">
<p>Date: <span> {{ \Carbon\Carbon::parse(now('Africa/Algiers'))->translatedFormat('d M, Y') }}</span></p>
<p>Facture Proformat: <span> #{{ $facture->id }}</span></p>
</div>
</div>
</div>
</section>
<section class="product-area mt-4">
<table class="table table-hover">
<thead>
<tr>
<td>Produit</td>
<td>Prix</td>
<td>Quantité</td>
<td>Total</td>
</tr>
</thead>
<tbody>
@php
$total =0;
@endphp
@foreach ($produits as $p)
<tr>
<td>
<div class="media">
<div class="media-body">
<p class="mt-0 title">{{ $p->nomProduit }}</p>
{{ $p->description }}
</div>
</div>
</td>
<td>{{number_format( $p->prix , 0,'.', ' ')}} DZD</td>
<td>{{ $p->somme }}</td>
<td>{{ number_format( $p->prix * $p->quantite, 0,'.', ' ') }} DZD</td>
</tr>
@php
$total = $total +($p->prix * $p->quantite);
@endphp
@endforeach
</tbody>
</table>
</section>
<section class="balance-info">
<div class="row">
<div class="col-7">
<p class="m-0 font-weight-bold"> Note: </p>
<p>
<ul>
<li>Facture valable 03 mois.</li>
<li>Délais de livraison: 3 mois.</li>
<li>Garantie : 1 ans.</li>
</ul>
</p>
</div>
<div class="col-5">
<table class="table border-0 table-hover">
<tr>
<td>TOTAL H.T</td>
<td>{{ number_format( $total , 0,'.', ' ') }} DZD</td>
</tr>
<tr>
<td>TVA (19%)</td>
<td>{{ number_format( ($total*19)/100 , 0,'.', ' ') }} DZD</td>
</tr>
<tfoot>
<tr>
<td>TTC:</td>
<td>{{ number_format( (($total*19)/100)+$total , 0,'.', ' ') }} DZD</td>
</tr>
</tfoot>
</table>
<br>
<br>
<!-- Signature -->
<p class="text-center m-0" style="color: #B78D24; font-weight: bold;"> Fournisseur : </p>
<div class="col-12 mt-10">
<img src="{{ asset('assets/fournisseur.png') }}" class="img-fluid" alt="">
</div>
</div>
</div>
</section>
<!-- Cart BG -->
<img src="{{asset('assets/front/img/cart.jpg')}}" class="img-fluid cart-bg" alt="">
<footer>
<hr>
<p class="m-0 text-center">
Notre site web <a href="https://nouha.net/" target="_blank">https://nouha.net/ </a>
</p>
<div class="social pt-3">
<span class="pr-2">
<i class="fas fa-mobile-alt"></i>
<span><a href="tel:0793 12 06 21 ">0793 12 06 21 </a>/ <a href="tel:0556 33 04 73">0556 33 04 73</a>
</span>
</span>
<span class="pr-2">
<i class="fas fa-envelope"></i>
<span><a href="mailto:laz-men@hotmail.fr">laz-men@hotmail.fr</a></span>
</span>
<span class="pr-2">
<i class="fab fa-facebook-f"></i>
<span><a href="https://www.facebook.com/nouha.trading.5">/Nouha</a></span>
</span>
<span class="pr-2">
<i class="fab fa-youtube"></i>
<span><a href="https://www.youtube.com/watch?v=GW3Olb_uqFA">Nouha</a></span>
</span>
</div>
</footer>
</div>
</div>
</body>
</html>
这是我的控制器代码:
// retrieve all records from db
$facture = Facture::findOrFail($id);
$produits = DB::table('produits')
->join('paniers', 'paniers.produit_id', '=', 'produits.id')
->select('produits.*', DB::raw('count(paniers.produit_id) as somme ') )
->Where('facture_id','=',$facture->id)
->groupBy('paniers.produit_id')
->Having(DB::raw('count(paniers.produit_id)'),'>',0)
->get();
$data = compact('facture','produits');
$pdf = PDF::loadView('front.factureTemplate', $data);
// return $pdf->download('ma_facture.pdf');
return $pdf->inline();
这是我的快速配置文件
pdf' => [
'enabled' => true,
//'binary' => env('WKHTML_PDF_BINARY', '/usr/local/bin/wkhtmltopdf'),
'binary' => '"C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf"',
'timeout' => false,
'options' => [
'enable-local-file-access' => true,
'enable-javascript' => true,
'orientation' => 'landscape',
'encoding' => 'UTF-8'
],
'env' => [],
],
请帮我解决这个问题,这真的比它应该花的时间长得多