HTML 如何将HTML和CSS添加到PDF中

HTML 如何将HTML和CSS添加到PDF中

在网页开发过程中,HTML和CSS经常需要转换为PDF格式。PDF可以创建可打印的文档,实现跨多个平台的信息交换,并保留网页的原始布局。有多种方法可以将HTML和CSS转换为PDF文件,从简单的在线工具到复杂的编程库。

这些技术可以使用HTML和CSS代码自动生成PDF,也可以使用第三方应用程序手动生成。因此,可以通过结合HTML和CSS创建交互式、视觉上美观且易于转换为PDF以用于共享或归档的网页。在本文中,我们将看到如何将HTML和CSS添加到PDF中。

术语

  • 超文本标记语言(HTML): 一种用于生成网页的标记语言。
  • 层叠样式表(CSS): 一种用于指定HTML内容呈现方式的样式表语言。
  • 可移植文档格式(PDF): 一种用于以与硬件、软件和操作系统无关的方式展示文档的文件格式。

    有多种方法可以将HTML和CSS转换为PDF,包括:

  • 网络资源: 有许多在线资源可用于将HTML和CSS转换为PDF,包括HTML to PDF Converter、PDFcrowd等。

  • 编程库: 开发人员可以使用内置库来在运行时将HTML和CSS转换为PDF格式。
  • 第三方工具: 开发人员可以使用第三方应用程序(如Adobe Acrobat、Microsoft Word和Google Docs)手动将HTML和CSS转换为PDF。

    方法: 要将HTML和CSS添加到PDF中,可以使用不同的方法。这些方法可能涉及使用库、插件或软件从HTML和CSS文件中生成PDF。具体的语法将取决于所使用的方法。

    方法1:使用jsPDF: 通过jsPDF JavaScript库,可以在客户端上实现PDF文件创建。它提供了一种简单的方法,通过组合HTML、CSS和JavaScript,在浏览器中直接创建和下载PDF文件。使用该库通常会创建报告、发票、票据等需要打印或交付的文档。

    语法:

// Loading the jsPDF library
<script src=
"https://cdnjs.cloudflare.com/ajax/libs/jspdf/2.5.1/jspdf.umd.min.js">
</script>

// Getting the HTML element to convert into PDF
var element = document.getElementById("element selector");

// Creating a new jsPDF object
var pdf = new jsPDF();

// Use jsPDF's 'fromHTML' method to add HTML element to PDF
pdf.fromHTML(element);

// Saving the PDF with specified file name
pdf.save("file");

示例: 在这个例子中,我们将看到如何使用javascript中的jsPDF库将HTML和CSS代码转换为pdf文档。jsPDF提供了一个简单的API来生成PDF文件,并具有文本格式化、字体嵌入和图片支持等功能。只需点击 DOWNLOAD PDF 按钮,我们就能下载HTML和CSS文档的pdf版本。我们已经初始化了一些应该在pdf中显示的文本。使用jsPDF的语法已经被定义好了。

HTML

<!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"> 
    <script src= 
"https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.2/jspdf.min.js"> 
    </script> 
</head> 
  
<body> 
    <div class="GFG"> 
        <h1 style="color: tomato;"> 
            GeeksForGeeks 
        </h1> 
        <h2>Founded by Sandeep Jain</h2> 
        <p>A Computer Science portal for geeks.</p> 
        <p> 
            It contains well written, well thought  
            and well explained computer science  
            and programming articles. 
        </p> 
    </div> 
  
    <button id="btn"> PDF MAKER </button> 
      
    <script> 
        var button = document.getElementById("btn"); 
        button.addEventListener("click", function () { 
            var doc = new jsPDF(); 
            var pdf = document.querySelector(".GFG"); 
            doc.fromHTML(pdf); 
            doc.save("GFG.pdf"); 
        }); 
    </script> 
</body> 
  
</html>

输出:

HTML 如何将HTML和CSS添加到PDF中

方法2:使用html2pdf库

语法:

// Loading the html2pdf library
<script src= 
"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.9.2/html2pdf.bundle.js"> 
</script>

// Creating a pdf
var element = document.getElementById("HTML tag selector");
html2pdf("tag");

示例: 在本示例中,我们将再次看到如何使用javascript中的html2pdf库将HTML和CSS代码转换为pdf文档。它使用其他各种库如jsPDF,html2canvas等将HTML和CSS文档转换成pdf。只需点击 DOWNLOAD PDF 按钮,我们就可以下载HTML和CSS文档的pdf版本。我们已经初始化了一些文本,应该在pdf中存在。html2pdf的使用语法已经定义好了。

HTML

<!DOCTYPE html> 
<html> 
  
<head> 
    <script src= 
"https://cdnjs.cloudflare.com/ajax/libs/html2pdf.js/0.10.1/html2pdf.bundle.min.js"> 
    </script> 
</head> 
  
<body> 
    <div id="content"> 
        <h1 style="color: tomato;"> 
            GeeksForGeeks 
        </h1> 
          
        <h2>Founded by Sandeep Jain</h2> 
          
        <p>A Computer Science portal for geeks. </p> 
          
        <p> 
            It contains well written, well thought  
            and well explained computer science  
            and programming articles. 
        </p> 
    </div> 
  
    <button id="download-pdf">Download PDF</button> 
      
    <script> 
        document.getElementById('download-pdf') 
        .addEventListener('click', () => { 
            const element = document.getElementById('content'); 
            const options = { 
                filename: 'GFG.pdf', 
                margin: 0, 
                image: { type: 'jpeg', quality: 0.98 }, 
                html2canvas: { scale: 2 }, 
                jsPDF: {  
                    unit: 'in',  
                    format: 'letter',  
                    orientation: 'portrait'  
                } 
            }; 
            html2pdf().set(options).from(element).save(); 
        }); 
    </script> 
</body> 
  
</html>

输出:

HTML 如何将HTML和CSS添加到PDF中

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程