javahtml转pdf乱码(Javahtml转pdf)

今天给各位分享javahtmlpdf乱码的知识,其中也会对Javahtml转pdf进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

1、java中html字符串如何完美转换成pdf文件2、怎样用Java把html转为pdf3、java将html文件转成pdf

java中html字符串如何完美转换成pdf文件

1、首先导入itext的jar包,

然后直接上代码

private static void versionsone(String htmlCode, String pdfPath){

Document document = new Document();

try{

StyleSheet st = new StyleSheet();

st.loadTagStyle(“body”, “leading”, “16,0”);

PdfWriter.getInstance(document, new FileOutputStream(pdfPath));

document.open();

BaseFont bfChinese = BaseFont.createFont(“STSong-Light”, “UniGB-UCS2-H”, BaseFont.NOT_EMBEDDED);

Font FontChinese = new Font(bfChinese, 12, Font.NORMAL);

ArrayListArrayList p = HTMLWorker.parseToList(dome_2(htmlCode), st);

for(int k=0;kp.size();k++){

for(int m=0;mp.get(k).size();m++){

Paragraph pCode = new Paragraph(p.get(k).get(m).toString(),FontChinese);

document.add(pCode);

}

}

}catch(Exception e){

e.printStackTrace();

}finally{

document.close();

}

}

private static Reader dome_2(String htmlCode){

if(htmlCode != null !htmlCode.trim().equals(“”)){

try{

InputStream tInputStringStream = new ByteArrayInputStream(htmlCode.getBytes());

InputStreamReader isr = new InputStreamReader(tInputStringStream,”utf-8″);

BufferedReader reader = new BufferedReader(isr);

return reader;

}catch(Exception e){

e.printStackTrace();

}

}

return null;

}

其实此处和别人的最大的不一样的是,

ArrayListArrayList p = HTMLWorker.parseToList(dome_2(htmlCode), st);

其实刚刚开始我在网上找来的代码中是这样写的“ArrayList p = HTMLWorker.parseToList(dome_2(htmlCode), st);”

但后来我通过debug发现,ArrayList 里面装的还是一个集合,然后集合中放得才是真正不含html标签的字符串。对于普通得文章,一般html标签一般都是p/p

占大多数。所以我直接用了两层for循环直接从里面取得我们想要的字符串。然后直接“Paragraph pCode = new Paragraph(p.get(k).get(m).toString(),FontChinese);”document.add(pCode);这样就能解决中文问题了

javahtml转pdf乱码(Javahtml转pdf)

怎样用Java把html转为pdf

java中利用第三方jar包iText 5.4.2就可以实现html转为pdf。

比如有如下index.html文件:

!DOCTYPE html PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “”

html

head

titleHTML to PDF/title

link href=”style.css” rel=”stylesheet” type=”text/css” /

/head

body

h1HTML to PDF/h1

p

span class=”itext”itext/span 5.4.2 span class=”description” converting HTML to PDF/span

/p

table

tr

th class=”label”Title/th

tdiText – Java HTML to PDF/td

/tr

tr

thURL/th

td;/td

/tr

/table

/body

/html

样式文件:

h1 {

color:#ccc;

}

table tr td{

text-align:center;

border:1px solid gray;

padding:4px;

}

table tr th{

background-color:#84C7FD;

color:#fff;

width: 100px;

}

.itext{

color:#84C7FD;

font-weight:bold;

}

.description{

color:gray;

}

后台转换的接口:

package com.hmkcode;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import com.itextpdf.text.Document;

import com.itextpdf.text.DocumentException;

import com.itextpdf.text.pdf.PdfWriter;

import com.itextpdf.tool.xml.XMLWorkerHelper;

public class App

{

public static void main( String[] args ) throws DocumentException, IOException

{

// step 1

Document document = new Document();

// step 2

PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(“pdf.pdf”));

// step 3

document.open();

// step 4

XMLWorkerHelper.getInstance().parseXHtml(writer, document,

new FileInputStream(“index.html”));

//step 5

document.close();

System.out.println( “PDF Created!” );

}

}

转换结果:

java将html文件转成pdf

可以通过使用Spire.Doc for Java进行转换。

首先需要安装Spire.Doc for Java。可在 Java 程序中添加 Spire.Doc for Java 文件作为依赖项。JAR 文件可以从此链接下载。 如果您使用 Maven,则可以将以下代码添加到项目的 pom.xml 文件中,从而轻松地在应用程序中导入 JAR 文件。

repositories

repository

idcom.e-iceblue/id

namee-iceblue/name

url;/url

/repository/repositoriesdependencies

dependency

groupIde-iceblue/groupId

artifactIdspire.doc/artifactId

version5.2.3/version

/dependency/dependencies

具体分为以下两种情况:

HTML String另存为PDF格式

Java代码如下:

import com.spire.doc.*;import java.io.*;public class htmlStringToWord {

public static void main(String[] args) throws Exception {

String inputHtml = “InputHtml.txt”;

//新建Document对象

Document document = new Document();

//添加section

Section sec = document.addSection();

String htmlText = readTextFromFile(inputHtml);

//添加段落并写入HTML文本

sec.addParagraph().appendHTML(htmlText);

//文档另存为PDF

document.saveToFile(“HTMLstringToPDF.pdf”, FileFormat.PDF);

}

public static String readTextFromFile(String fileName) throws IOException{

StringBuffer sb = new StringBuffer();

BufferedReader br = new BufferedReader(new FileReader(fileName));

String content = null;

while ((content = br.readLine()) != null) {

sb.append(content);

}

return sb.toString();

}

}

2.HTML file另存为PDF格式

import com.spire.doc.*;import com.spire.doc.documents.XHTMLValidationType;public class htmlFileToWord {

public static void main(String[] args) throws Exception {

//加载HTML文档

Document document = new Document();

document.loadFromFile(“InputHtmlFile.html”, FileFormat.Html, XHTMLValidationType.None);

//文档另存为PDF

document.saveToFile(“Result.pdf”,FileFormat.PDF);

}

}

希望对您有帮助。

关于javahtml转pdf乱码和Javahtml转pdf的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

本文来自投稿,不代表【】观点,发布者:【

本文地址: ,如若转载,请注明出处!

举报投诉邮箱:253000106@qq.com

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2024年3月29日 01:05:43
下一篇 2024年3月29日 01:17:00

相关推荐

  • java读取文件内容乱码,java读取文件编码格式

    java中filewriter中文乱码怎么解决? 1、如果你期望写到文件中的汉字是 GBK编码,可以写文件时,将字符串准换成 GBK编码的byte[]。网页编码和输出流编码一致。 2、读取文件的时候如果是用的read方法(字节流),碰到中文输出就是乱码,然后存储的时候设置下编码为GBK或者是UTF-8形式即可,可以有效的解决乱码问题。 3、只是个别文件出现了…

    2024年5月23日
    4600
  • word粘贴excel表格,word粘贴excel表格身份证号码乱码

    从word复制表格到excel保持不变 方法如下:启动word软件,选中word里的表格,复制,粘贴至excel表格中时,选择粘贴格式为保留源格式,就实现了粘贴时格式不变。 在桌面中找到需要进行修改的word的表格,鼠标左键双击打开该表格。在打开的word文档中找到要复制的表格,鼠标左键选中该表格。选中完毕后右键调出功能框,在功能框点击复制选项留作备用,如下…

    2024年5月23日
    3900
  • javaservlet中文乱码,servlet解决中文乱码问题

    javaweb怎么处理中文乱码 获取 HTTP 请求中的中文参数时可能会有乱码,所以先将字符串变回字节数组,然后再按照 UTF-8 进行编码。 通过浏览器调用servlet,页面显示乱码。 采用相同的格式去接收(ISO-8859-1),然后用能解析的编码(utf-8)去转换。这样我们就能得到能兼容中文的格式了。这样处理之后发往前台。 读取文件的时候如果是用的…

    2024年5月22日
    3300
  • 发送到linux的ftp汉字乱码的简单介绍

    sftp上传中文文件名的文件,但是传到Linux上后,显示的名字却是乱码,哪位… 1、你是不是用的jsch.jar这个jar包,这个jar包中,文件名的编码方式是UTF-8的,Linux默认支持GBK的,所以终端改为utf-8的就可以显示中文了。 2、ftp服务目录下的文件出现乱码,多数是因为中文编码不统一导致的,多见于第三方的ftp服务软件,比…

    2024年5月22日
    3600
  • java上传zip乱码,java上传压缩包解压

    用JAVA发送邮件,正文乱码该如何解决 1、读取文件的时候如果是用的read方法(字节流),碰到中文输出就是乱码,然后存储的时候设置下编码为GBK或者是UTF-8形式即可,可以有效的解决乱码问题。 2、如果其他的项目中不存在乱码问题,只是个别项目显示时出现乱码,那么我们不需要设置工作空间的编码,只需要修改项目的编码即可。 选中项目后,右键点击,在弹出的菜单中…

    2024年5月21日
    4300
  • java与模式,java与模式pdf下载

    java中几种常见的设计模式(java设计模式菜鸟教程) 1、java中存在23种面向对象的设计模式,分别是:1)创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 2、常见的Java设计模式有以下10种:桥梁模式(Bridge):将抽象部分与它的实现部分分离,使它们都可以独立地变化。合成模式(Composite):将对象组合成…

    2024年5月21日
    5000
  • java中生成表格,java生成表格pdf

    Java如何做动态表格? 后台数据放在List,传到前台。前台用jtsl的foreach 或者struts2的iterator遍历出来,也可以采用java的代码%%。 放在循环里面,然后在循环体里面画,就行了,这是很久以前学java时写的jsp页面里的一段,里面加了分页什么的。你仔细想想吧,这个很好理解的。 state.executeUpdate(creat…

    2024年5月21日
    3800
  • c语言pdf百度云,c语言百度云盘

    …编程从入门到精通》pdf下载在线阅读,求百度网盘云资源 1、作者:IVOR HORTON 译者:李予敏 豆瓣评分:0 出版社:清华大学出版社 出版年份:2004-7-1 页数:844 内容简介:C++在几乎所有的计算环境中都非常普及,而且可以用于几乎所有的应用程序。 2、本书沿袭“程序员的数学”系列平易近人的风格,用通俗的语言和具象的图表深入讲…

    2024年5月21日
    4400
  • java替换pdf模板,java替换word模板

    怎么用java动态生成pdf文档 1、首先,您需要在 Java 程序中添加 Spire.Xls.jar 文件作为依赖项。您可以从这个链接下载 JAR 文件;如果您使用 Maven,则可以通过在 pom.xml 文件中添加以下代码导入 JAR 文件。 2、iText是着名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。通…

    2024年5月20日
    4500
  • java控制台输入中文乱码,java控制台输入中文乱码怎么办

    Java安装后运行CMD输入JAVA提示乱码? 1、可在 CMD 窗口输入 chcp 65001 后,再尝试输入 java 命令。chcp 命令是用来显示或更改活动控制台的代码页。在 CMD 窗口直 输入 chcp ,可以显示当前代码页编号,默认是 936 ,表示支持 GB2312 编码。 2、(1)打开记事本,点击【另存为】,得到下图 (2)将编码的UTF…

    2024年5月20日
    5300

发表回复

登录后才能评论



关注微信