xmlworkhelper pdf-XMLWorkHelper将html转换成pdf的时候,有分页,错行怎么处理?求各位大神解决下,着急

问题描述

XMLWorkHelper将html转换成pdf的时候,有分页,错行怎么处理?求各位大神解决下,着急
包如下:
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;

import com.itextpdf.text.Document;
import com.itextpdf.text.pdf.PdfWriter;
import com.itextpdf.tool.xml.XMLWorkerHelper;

代码如下:
Document document = new Document();
// step 2
PdfWriter writer = PdfWriter.getInstance(document new FileOutputStream(""C:/Users/longlong/Desktop/demo.pdf""));

        // step 3        document.open();

// InputStreamReader isr = new InputStreamReader(new FileInputStream(""C:/Users/longlong/Desktop/customer.html"")UTF-8"");
InputStream in = new FileInputStream(new File(""C:/Users/longlong/Desktop/customer.html""));
// step 4
// XMLWorkerHelper.getInstance().parseXHtml(writer documentisr);
XMLWorkerHelper.getInstance().parseXHtml(writer document in null new MyFont());
//step 5
document.close();

        System.out.println( ""PDF Created!"" );

解决方案

html是很难解析的。有错行不能完全怪程序。

html的原始数据流和排版出来的往往不同。比如说,一排导航,其实是通过li ui元素实现的,在没有css的情况下,它们垂直排列。
另外div布局可以把本来前后关系的文章段落并排显示成两列。
而一些作为占位符而没有实际内容的元素,在没有css的情况下也表现为多余的空行。

即便是word这样的商业软件,处理起来也显得笨拙,经常转换出来差强人意。

关键看你的html怎么写的,你应该优先考虑迁就html的设计。

解决方案二:
那请问html要怎么设计转成的pdf才可以正常显示?柑橘你说的有点笼统我用XMLWork把html转成pdf的时候内容是正常的错行的问题是怎么产生的?是因为java解析的html的原因还是html本身标签的问题?

时间: 2024-08-03 21:10:02

xmlworkhelper pdf-XMLWorkHelper将html转换成pdf的时候,有分页,错行怎么处理?求各位大神解决下,着急的相关文章

用PDF打印机将网页转换成PDF方法

很多时候我们都习惯使用浏览器的"页面另存为"来保存网页,,但是众所周知,这样保存的网页文件太乱了,一个HTML文件还要搭上一堆网页中的各种图片和Flash以及JS脚本文件,非常的难以整理,那么--让我们换个保存方式,保存成PDF格式怎么样? 或许你会想到需要打开各种编辑器,然后经历N轮转换的过程了,而实际上完全没有这么麻烦,只要下载PDF打印机软件,然后就可以直接像使用打印机打印网页一样,将网页变成PDF格式文档,是不是很方便呢. 打印出来的网页PDF文档效果,如图: 操作方法: 1.

怎么将ppt转pdf,ppt怎么转换成pdf

下面来讲如何把PPT转化成PDF格式,其实很简单,安装一个WPS办公软件即可. step 1:把如图所示的一个PPT改成PDF step 2:打开WPS演示,其实这个WPS演示就相当于Microsoft的 Powerpoint啦 step 3:打开后,看工具栏,找到有个"输出为PDF格式"的工具了没??? step 4:点击此工具按钮,按提示一路操作下去 step 5:最后就生成PDF格式的啦

Python爬虫:把廖雪峰的教程转换成PDF电子书

写爬虫似乎没有比用 Python 更合适了,Python 社区提供的爬虫工具多得让你眼花缭乱,各种拿来就可以直接用的 library 分分钟就可以写出一个爬虫出来,今天就琢磨着写一个爬虫,将廖雪峰的 Python 教程 爬下来做成 PDF 电子书方便大家离线阅读. 开始写爬虫前,我们先来分析一下该网站1的页面结构,网页的左侧是教程的目录大纲,每个 URL 对应到右边的一篇文章,右侧上方是文章的标题,中间是文章的正文部分,正文内容是我们关心的重点,我们要爬的数据就是所有网页的正文部分,下方是用户的

ios-IOS 把pdf字节转换成pdf文件保存在本地

问题描述 IOS 把pdf字节转换成pdf文件保存在本地 从服务端请求返回的是pdf文件的byte数组,怎么把pdf的byte数组转换成pdf文件保存在本地,然后通过webview预览

MathType转换成pdf符号丢失或乱码怎么办

  MathType转换成pdf符号丢失或乱码怎么办?这个问题的出现主要还字体的问题,电脑字体无法识别MathType字体所以在转换的时候会出现这个上问题. 具体解决方法如下: 1.打开电脑,按照MathType的安装路径找到其安装目录,这个由于每个人的安装路径不一样,所以操作会有所差别,在MathType的安装目录下找到MathType里面的True Type文件,将里面字体复制. 复制MathType里面的True Type字体文件 2.然后回到C:\Windows\Fonts中直接将之粘贴

WORD转换成PDF后如何减少PDF文件的大小

WORD转换成PDF后发现pdf挺大的,为了不改变pdf内容,且尽量不改变质量,使用Adobe Acrobat的"另存为"功能,可能减少PDF的大小,这是个非常实用的技巧,可以避免我们的PDF文档过大,为文档"瘦身". "减少文件大小"命令可以重新取样和压缩图像.删除嵌入的 14 款基本字体和将所剩嵌入字体嵌入子集字体.它也可以压缩文档结构和整理元素,如无效的书签.如果文件大小已经足够小,则本命令不会起作用. 方法和步骤 1.打开一个 PDF,或

Office 2010中把Word转换成PDF格式

因为PDF的可阅读性和实用性,而被广泛应用.PDF格式是一种应用非常广泛的格式,与DOC的文档格式相比,PDF格式的阅读体验更好,而DOC可能更适合编辑.那么怎么样把编辑好的DOC文档转换成PDF的格式呢?Office2010就可以办到. 2010版office因为它的操作和工作效率比其它版本的office提高了很多.所以被现在人普遍应用.最近发现它转换功能甚是强大!下面为大家展示它如何把一个文档转换成PDF的.见证奇迹的时刻马上就要到来了.只需要轻松五步即可. 步骤一: 文档编辑好后开始进行转

Excel2007怎么转换成pdf格式文件

可能有时候我们需要将Excel转换成pdf格式的文件,许多人就会在网上找一些Excel转换成pdf的软件来帮他实现,但是网上大部分这种转换软件都是要收费的,免费的要么就转换成乱码,要么就转换失败,更可怕的是还可能会下载个什么病毒木马类的程序,导致计算机奔溃,文件丢失等各种毛病. 在我看来这些朋友都有个共同的特征,就是全部使用的是 Office 2003 办公软件.为什么这么说了?因为在 Office 2007 或以上的版本中都已经自带有这项转换功能了,可以直接将表格或者文档另存为PDF格式的文件

java 将excel文件转换成pdf文件

  最近做一个项目,需要把excel文件转换成pdf文件,经过我查资料,无非使用两种方式:1 POI+Itext 2 Jacob来调用excel另存功能. 第一种方式,原理是使用POI来读取excel的内容,将其写到pdf文件中.实现难度有点大,主要是因为excel sheet结构不固定,内容也不固定,可能存在图片等,导致读excel比较复杂,真正实现还是比较复杂的. 第二种方式,原来是使用jacob来调用excel文件的另存为pdf的功能.主要是熟悉jacob的API即可.不需要精巧的编程技巧