Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php HTML到PDF转换器-Html2PDF-如何减少结果PDF的大小?_Php_Html_Pdf_Large Files - Fatal编程技术网

Php HTML到PDF转换器-Html2PDF-如何减少结果PDF的大小?

Php HTML到PDF转换器-Html2PDF-如何减少结果PDF的大小?,php,html,pdf,large-files,Php,Html,Pdf,Large Files,我使用HTML2PDF转换器将网页导出为PDF文件。我面临的问题是结果PDF太大(超过1MB)。我想减少它,所以这里是我的基本情况: 2个图像(均为100 KB) 1保加利亚字体-添加 3个表,每个单元格都有很多内联样式 这些事情会导致输出PDF的大尺寸吗?任何人都可以与图书馆分享一些经验和最佳实践,从而获得更小的PDF 提前感谢。如果您有权访问Adobe Acrobat,它将允许您查看PDF,并查看哪些区域使用了多少百分比的空间。这将告诉您图像、字体等占用了多少空间。。。如果你提供一个PDF样

我使用HTML2PDF转换器将网页导出为PDF文件。我面临的问题是结果PDF太大(超过1MB)。我想减少它,所以这里是我的基本情况:

  • 2个图像(均为100 KB)
  • 1保加利亚字体-添加
  • 3个表,每个单元格都有很多内联样式
  • 这些事情会导致输出PDF的大尺寸吗?任何人都可以与图书馆分享一些经验和最佳实践,从而获得更小的PDF


    提前感谢。

    如果您有权访问Adobe Acrobat,它将允许您查看PDF,并查看哪些区域使用了多少百分比的空间。这将告诉您图像、字体等占用了多少空间。。。如果你提供一个PDF样本,我很乐意看一看

    PDF中有多少空间被不同的对象使用实际上取决于PDF是如何编写的,以及它使用不同压缩算法的效率。例如,图像可以是ZIP、JPEG甚至JPEG-2000压缩的PDF格式,问题是HTML2PDF对图像做了什么

    字体也可以很大-取决于原始字体的大小

    页面内容(具有内联样式的表格等)是以压缩文本格式编写的(例如,
    1 0 rg
    是将文本和线条艺术的填充颜色设置为红色的指令)。通常高效的PDF编写器会编写所有这些文本说明,然后对它们进行压缩,这意味着它们不会在文件中占据太多位置

    因此,您确实需要查看PDF文件本身,以查看空间的使用位置。这将允许您开始查看库,看看是否可以提高效率。

    首先

    • 有一个单独的页面用于打印和显示-用于打印
    • 打印时,请使用Ptint.CSS并包含尽可能少的类

    • 在那三张桌子上。在CSS中保持只需要类。请使用压缩图像进行打印,例如,如果显示BMP,请使用PNG进行打印

    • 使用TR-TD使表格变得简单,并使其不太彩色,不要放置内联CSS

    这可能有助于将PDF保存为压缩版本。

    我已设法找到导致输出PDF文件大的原因。它能持续使用字体

    对于我的任务,我使用了courier保加利亚语(斜体、普通和粗体)。这意味着我嵌入了三种额外的字体

    还有一些,我不知道,但是helvica是这个PHP库的defauld字体,尽管我没有使用它,但它也嵌入到PDF中


    如果遇到相同的问题,请打开所有包含“helvica”的文件,并将“helvica”字体替换为您正在使用的字体。

    这三个表包含哪些内容?它们是否用于显示一些重复数据?