当前位置: 首页 > news >正文

PHP 生成 PDF文件

参考官网  Example 009 : Image() · TCPDF

laravel  可以使用  composer 安装 tecnickcom/tcpdf

进行使用

//require_once("../app/Extend/tcpdf/tcpdf.php");
$pdf = new TCPDF();// 设置文档信息$pdf->SetCreator('懒人开发网');$pdf->SetAuthor('懒人开发网');$pdf->SetTitle('TCPDF示例');$pdf->SetSubject('TCPDF示例');$pdf->SetKeywords('TCPDF, PDF, PHP');// 设置页眉和页脚信息$pdf->SetHeaderData('tcpdf_logo.jpg', 30, 'LanRenKaiFA.com', '学会偷懒,并懒出效率!', [0, 64, 255], [0, 64, 128]);$pdf->setFooterData([0, 64, 0], [0, 64, 128]);// 设置页眉和页脚字体$pdf->setHeaderFont(['stsongstdlight', '', '10']);$pdf->setFooterFont(['helvetica', '', '8']);// 设置默认等宽字体$pdf->SetDefaultMonospacedFont('courier');// 设置间距$pdf->SetMargins(15, 15, 15);//页面间隔$pdf->SetHeaderMargin(5);//页眉top间隔$pdf->SetFooterMargin(10);//页脚bottom间隔// 设置分页$pdf->SetAutoPageBreak(true, 25);// set default font subsetting mode$pdf->setFontSubsetting(true);//设置字体 stsongstdlight支持中文$pdf->SetFont('stsongstdlight', '', 14);//第一页$pdf->AddPage();$pdf->writeHTML('<p style="text-align: center"><h1>第一页内容</h1></p>');$pdf->writeHTML('<p>我是第一行内容</p>');$pdf->writeHTML('<p style="color: red">我是第二行内容</p>');$pdf->writeHTML('<p>我是第三行内容</p>');$pdf->Ln(5);//换行符$pdf->writeHTML('<p><a href="http://www.lanrenkaifa.com/" rel="external nofollow"  title="">懒人开发网</a></p>');//第二页$pdf->AddPage();$pdf->writeHTML('<h1>第二页内容</h1>');//输出PDF$pdf->Output('t.pdf', 'I');//I输出、D下载

相关文章:

PHP 生成 PDF文件

参考官网 Example 009 : Image() TCPDF laravel 可以使用 composer 安装 tecnickcom/tcpdf 进行使用 //require_once("../app/Extend/tcpdf/tcpdf.php"); $pdf new TCPDF();// 设置文档信息$pdf->SetCreator(懒人开发网);$pdf->SetAuthor(懒人开发网);$…...

讲讲项目里的仪表盘编辑器(一)

需求 要做一个仪表盘系统&#xff0c;要求有&#xff1a; ① 设计功能&#xff08;包括布局、大小、排列&#xff09; ② 预览功能 ③ 运行功能 布局选择 做编辑器&#xff0c;肯定要先选择布局。 前端有几种常用布局。 静态布局 也叫文档布局。默认的网页形式…...

解决方案 | 如何构建市政综合管廊安全运行监测系统?

如何构建市政综合管廊安全运行监测系统&#xff1f;WITBEE万宾城市生命线智能监测仪器&#xff0c;5年免维护设计&#xff0c;集成10多项结构与气体健康监测指标&#xff0c;毫秒级快速响应&#xff0c;时刻感知综合管廊运行态势...

JCEF中js与java交互、js与java相互调用

jcef中js与java相互调用&#xff0c;java与js相互调用&#xff0c;chrome与java相互调用&#xff0c;java与chrome相互调用、jcef与java相互调用 前提&#xff1a;https://blog.csdn.net/weixin_44480167/article/details/133170970&#xff08;java内嵌浏览器CEF-JAVA、jcef、…...

9.20 校招 实习 内推 面经

绿泡*泡&#xff1a; neituijunsir 交流裙 &#xff0c;内推/实习/校招汇总表格 1、校招丨智行者2024年校园招聘正式启动啦 校招丨智行者2024年校园招聘正式启动啦 2、校招 | 乐动机器人2024校园招聘 校招 | 乐动机器人2024校园招聘 3、校招丨小天才2024届秋季校园招聘 …...

基于JAVA+SpringBoot+Vue+协同过滤算法+爬虫的前后端分离的租房系统

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取项目下载方式&#x1f345; 一、项目背景介绍&#xff1a; 随着城市化进程的加快…...

【Android Framework系列】第16章 存储访问框架 (SAF)

1 概述 Android 4.4&#xff08;API 级别 19&#xff09;引入了存储访问框架 (Storage Access Framework)。SAF让用户能够在其所有首选文档存储提供程序中方便地浏览并打开文档、图像以及其他文件。 用户可以通过易用的标准 UI&#xff0c;以统一方式在所有应用和提供程序中浏…...

Antdesign 4中让分页组件居中显示的方法

在Ant Design 4中分页组件默认是最右边显示的&#xff0c;而这个没有设置位置的属性的 解决办法&#xff1a; 在pagination的属性中增加&#xff1a; style: {textAlign: "center"} 在Ant Design 5中可以让pagination使用align: center来实现分页组件居中...

【笔记】ubuntu 20.04 + mongodb 4.4.14定时增量备份脚本

环境 ubuntu 20.04mongodb 4.4.14还没实际使用&#xff08;20230922&#xff09;后续到10月底如果有问题会修改 原理 只会在有新增数据时生成新的备份日期目录备份恢复时&#xff0c;如果恢复的数据库未删除&#xff0c;则会覆盖数据 准备 准备一个文件夹&#xff0c;用于…...

c++实现的一个定时器实例

/* * author: hjjdebug * date : 2023年 09月 23日 星期六 11:52:29 CST * description: 用std::thread 实现了一个定时器,深刻理解一下定时器是怎样工作的. * 参考Timer.h, Timer.cpp */ $ cat main.cpp #include "Timer.h" #include <unis…...

Python线程和进程

1、深度解析Python线程和进程 一篇文章带你深度解析Python线程和进程 - 知乎使用Python中的线程模块&#xff0c;能够同时运行程序的不同部分&#xff0c;并简化设计。如果你已经入门Python&#xff0c;并且想用线程来提升程序运行速度的话&#xff0c;希望这篇教程会对你有所帮…...

算法 寻找峰值-(二分查找+反向双指针)

牛客网: BM19 题目: 寻找数组峰值&#xff0c;可能多个返回任一个&#xff0c;每个值满足nums[i] ! nums[i 1] 思路: 双指针 left 0, right n-1, 相向而行&#xff0c;取中间位置mid, nums[mid]与nums[mid1]比较&#xff0c;如果nums[mid] < nums[mid1]&#xff0c;说明…...

【数据结构】—交换排序之快速排序究极详解,手把手带你从简单的冒泡排序升级到排序的难点{快速排序}(含C语言实现)

食用指南&#xff1a;本文在有C基础的情况下食用更佳 &#x1f525;这就不得不推荐此专栏了&#xff1a;C语言 ♈️今日夜电波&#xff1a;靴の花火—ヨルシカ 0:28━━━━━━️&#x1f49f;──────── 5:03 …...

【c#-Nuget 包“在此源中不可用”】 Nuget package “Not available in this source“

标题c#-Nuget 包“在此源中不可用”…但 VS 仍然知道它吗&#xff1f; (c# - Nuget package “Not available in this source”… but VS still knows about it?) 背景&#xff1a; 今日从公司svn 上拉取很久很久以前的代码&#xff0c;拉取下来200报错&#xff0c;进一步发…...

【数据结构】二叉树之堆的实现

&#x1f525;博客主页&#xff1a;小王又困了 &#x1f4da;系列专栏&#xff1a;数据结构 &#x1f31f;人之为学&#xff0c;不日近则日退 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 目录 一、二叉树的顺序结构 &#x1f4d2;1.1顺序存储 &#x1f4d2;1.2堆的性质…...

电工-三极管输入输出特性曲线讲解

三极管特性曲线是反映三极管各电极电压和电流之间相互关系的曲线&#xff0c;是用来描述晶体三极管工作特性曲线&#xff0c;常用的特性曲线有输入特性曲线和输出特性曲线。这里以下图所示的共发射极电路来分析三极管的特性曲线。 输入特性曲线 该曲线表示当e极与c极之间的电…...

深入解析容器与虚拟化:技术、对比与生态

深入解析容器与虚拟化&#xff1a;技术、对比与生态 文章目录 深入解析容器与虚拟化&#xff1a;技术、对比与生态容器和虚拟化的基本概念和原理容器的定义和特点虚拟化的定义和特点 容器使用场景容器和虚拟机的对比虚拟化技术的四个特点容器实现虚拟化的原理常见容器引擎和容器…...

制作游戏demo的心得

制作这个游戏demo出来的心得 https://www.bilibili.com/video/BV1cF411m7Dh/ 制作游戏demo的心得 制作游戏demo&#xff0c;主要是为了表现自己的技术&#xff0c;那就一门心思想着如何提高表现力就行了&#xff0c;在整体的画面渲染风格方面或许没有什么可选择的&#xff0c;…...

Web Tour Server窗口闪现

1.打开该文件所在位置 2.右击选择编辑&#xff0c;在最后一行加上pause&#xff0c;保存后重新打开Server窗口 3.重新打开后&#xff0c;若出现以下情况&#xff1a; 以管理员身份打开cmd命令行&#xff0c;输入命令netstat -aon|findstr “1080”&#xff0c;查看1080端口占用…...

Linux下的基本指令

目录 01. ls 指令 02. pwd命令 03. cd 指令 04. touch指令 05.mkdir指令&#xff08;重要&#xff09;&#xff1a; 06.rmdir指令 && rm 指令&#xff08;重要&#xff09;&#xff1a; 07.man指令&#xff08;重要&#xff09;&#xff1a; 08mv指令&#xff…...

车载以太网测试避坑指南:DoIP和DIVA测试中那些容易搞错的VLAN与地址配置

车载以太网测试避坑指南&#xff1a;DoIP和DIVA测试中那些容易搞错的VLAN与地址配置 在车载以太网测试领域&#xff0c;DoIP&#xff08;Diagnostics over Internet Protocol&#xff09;和DIVA&#xff08;Diagnostic IP Vehicle Access&#xff09;测试已成为现代车辆诊断和通…...

终极指南:如何用apt-offline在无网环境下管理Debian软件包

终极指南&#xff1a;如何用apt-offline在无网环境下管理Debian软件包 【免费下载链接】apt-offline Offline APT Package Manager 项目地址: https://gitcode.com/gh_mirrors/ap/apt-offline 你是否曾因网络连接不稳定而无法更新Debian系统&#xff1f;或者需要在完全离…...

2025年全国青少年信息素养大赛复赛真题(算法创意实践挑战赛C++小学组试卷1:带解析)(7月6日试卷)

2025年全国青少年信息素养大赛复赛真题(算法创意实践挑战赛C++小学组试卷1:带解析)(7月6日试卷) 选择题: 1、C++中,以下哪个是关键字,不能用作变量名? ( ) A、num B、world C、char D、value2 答案:C 解析:char是C++中的关键字,含义是字符类型。C++中的关键字不…...

ARM CoreSight TRCPIDR寄存器解析与应用实践

1. ARM CoreSight TRCPIDR寄存器深度解析在嵌入式系统调试领域&#xff0c;CoreSight架构的TRCPIDR&#xff08;Trace Peripheral Identification Registers&#xff09;寄存器组扮演着硬件"身份证"的关键角色。这些寄存器以标准化的格式存储了芯片设计的关键识别信息…...

Arm ADI调试接口架构与实战解析

1. Arm Debug Interface (ADI) 架构解析 在嵌入式系统开发领域&#xff0c;调试接口是连接开发环境与目标硬件的关键纽带。作为行业标准制定者&#xff0c;Arm推出的Debug Interface (ADI) 提供了一套完整的芯片级调试解决方案。我曾在多个基于Cortex-M/A系列处理器的项目中深度…...

博客生成器架构设计:基于LLM与模块化流水线的自动化内容创作实践

1. 项目概述&#xff1a;一个博客生成器的诞生与价值在内容创作领域&#xff0c;效率和质量是永恒的矛盾。作为一名写了十几年博客的“老鸟”&#xff0c;我深知从灵光一闪到一篇结构清晰、排版美观的文章发布&#xff0c;中间有多少琐碎的步骤&#xff1a;构思大纲、撰写内容、…...

LinkedIn高管AI时代生存指南:别卷了,AI时代拼的是做人

AI浪潮席卷&#xff0c;职场人难免焦虑。LinkedIn (领英) 坐拥超过12亿会员的数据&#xff0c;看清了工作重塑的真实轨迹。LinkedIn首席经济机遇官Aneesh Raman惊人言论&#xff1a;AI时代&#xff0c;做个真正的人&#xff0c;别再模仿机器&#xff0c;没人能打败你。AI重塑工…...

Midjourney V6高产艺术家创作全链路实录(含未公开种子参数+光照权重表)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Midjourney社区优秀作品赏析 Midjourney作为当前最具表现力的AI图像生成工具之一&#xff0c;其社区&#xff08;Discord频道及Gallery平台&#xff09;持续涌现大量兼具技术精度与艺术张力的创作。这些…...

BUUCTF Web实战:从SQL注入到文件上传的CTF解题全解析

1. SQL注入漏洞实战解析 SQL注入是CTF中最常见的Web漏洞类型之一。记得我第一次参加BUUCTF比赛时&#xff0c;遇到的第一道Web题就是SQL注入。当时完全不知道什么是"万能密码"&#xff0c;现在回头看才发现这其实是入门必学的知识点。 在BUUCTF的[极客大挑战 2019]Ea…...

MedComm(IF=10.7)中大孙逸仙纪念医院姚和瑞等团队:多模态数据融合AI模型揭示乳腺癌肿瘤微环境免疫分型异质性与增强的风险分层

01文献学习今天分享的文献是由中大孙逸仙纪念医院姚和瑞等团队于2024年12月在《MedComm》&#xff08;中科院1区top&#xff0c;IF10.7&#xff09;上发表的研究“Multimodal data fusion AI model uncovers tumor microenvironment immunotyping heterogeneity and enhanced r…...