本文整理汇总了Java中org.xhtmlrenderer.pdf.ITextRenderer.setDocument方法的典型用法代码示例。如果您正苦于以下问题:Java ITextRenderer.setDocument方法的具体用法?Java ITextRenderer.setDocument怎么用?Java ITextRenderer.setDocument使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.xhtmlrenderer.pdf.ITextRenderer
的用法示例。
在下文中一共展示了ITextRenderer.setDocument方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: renderToPDF
import org.xhtmlrenderer.pdf.ITextRenderer; //导入方法依赖的package包/类
public static byte[] renderToPDF(String orig_html) throws Exception {
File html_file = null;
try {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ITextRenderer renderer = new ITextRenderer();
html_file = prepareTempHTML(orig_html);
renderer.setDocument(html_file);
renderer.layout();
renderer.createPDF(baos);
return baos.toByteArray();
} finally {
if (html_file != null) {
html_file.delete();
}
}
}
示例2: convertHTMLtoPDF
import org.xhtmlrenderer.pdf.ITextRenderer; //导入方法依赖的package包/类
public static byte[] convertHTMLtoPDF(InputStream bais, boolean isFitWidth) throws ParserConfigurationException, SAXException, IOException, DocumentException {
ITextRenderer renderer = new ITextRenderer();
// renderer.getFontResolver().addFont("calibri.ttf", true);
renderer.setScaleToFit(isFitWidth);
DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
InputSource is = new InputSource(bais);
Document doc = builder.parse(is);
renderer.setDocument(doc, null);
renderer.layout();
ByteArrayOutputStream out = new ByteArrayOutputStream();
renderer.createPDF(out);
out.flush();
out.close();
return out.toByteArray();
}
示例3: renderPdfDocument
import org.xhtmlrenderer.pdf.ITextRenderer; //导入方法依赖的package包/类
protected void renderPdfDocument(String htmlContent, OutputStream outputStream) {
ITextRenderer renderer = new ITextRenderer();
File temporaryFile = null;
try {
temporaryFile = File.createTempFile("htmlReport", ".htm");
DataOutputStream dataOutputStream = new DataOutputStream(new FileOutputStream(temporaryFile));
dataOutputStream.write(htmlContent.getBytes(Charset.forName("UTF-8")));
dataOutputStream.close();
loadFonts(renderer);
String url = temporaryFile.toURI().toURL().toString();
renderer.setDocument(url);
renderer.layout();
renderer.createPDF(outputStream);
} catch (Exception e) {
throw wrapWithReportingException("", e);
} finally {
FileUtils.deleteQuietly(temporaryFile);
}
}
示例4: createPDF
import org.xhtmlrenderer.pdf.ITextRenderer; //导入方法依赖的package包/类
@Override
public byte[] createPDF(byte[] documentSource, String url) {
try (ByteArrayOutputStream os = new ByteArrayOutputStream()) {
ITextRenderer renderer = initRenderer();
Document document = load(new ByteArrayInputStream(documentSource)).getDocument();
renderer.setDocument(document, url);
renderer.layout();
renderer.createPDF(os);
return os.toByteArray();
} catch (Exception e) {
throw new RuntimeException(e);
}
}
示例5: writePDFFromXHTML
import org.xhtmlrenderer.pdf.ITextRenderer; //导入方法依赖的package包/类
public static synchronized void writePDFFromXHTML(
final String pdfFilePath,
final String xhtmlFilePath,
final boolean useImageEmbedder) throws SSErr{
FileOutputStream out = null;
try{
final ITextRenderer renderer = new ITextRenderer();
final String uri = new File(xhtmlFilePath).toURI().toURL().toString();
out = new FileOutputStream(pdfFilePath);
if(useImageEmbedder){
renderer.getSharedContext().setReplacedElementFactory(
new SSPDFFromXHTMLImageEmbedder(
renderer.getSharedContext().getReplacedElementFactory()));
}
renderer.setDocument(uri);
renderer.layout(); //can happen http://stackoverflow.com/questions/13678641/while-converting-xhtml-with-css-to-pdf-got-an-exception-java-lang-indexoutofboun
renderer.createPDF(out);
}catch(Exception error){
SSServErrReg.regErrThrow(error);
}finally{
if(out != null){
try {
out.close();
} catch (IOException ex) {
SSLogU.err(ex);
}
}
}
}
示例6: preparePageCounters
import org.xhtmlrenderer.pdf.ITextRenderer; //导入方法依赖的package包/类
private void preparePageCounters( cfSession _Session, ITextRenderer _renderer, List<DocumentSection> _sections, DocumentSettings _settings ) throws cfmRunTimeException{
OutputStream pdfOut = null;
try{
pdfOut = new NullOutputStream();
DocumentSection nextSection = _sections.get( 0 );
if (nextSection.pageCounterConflict())
throw newRunTimeException("OpenBD doesn't support currentpagenumber and currentsectionpagenumber in same section.");
String renderedBody = getRenderedBody( _Session, nextSection, _settings, _sections.size() );
_renderer.setDocument( getDocument( renderedBody ), nextSection.getBaseUrl( _Session ) );
_renderer.layout();
_renderer.createPDF( pdfOut, false );
int currentPageNumber = _renderer.getWriter().getCurrentPageNumber();
nextSection.setTotalSectionPageCount(currentPageNumber);
int totalPageCount = currentPageNumber;
for ( int i = 1; i < _sections.size(); i++ ){
nextSection = _sections.get( i );
if (nextSection.pageCounterConflict())
throw newRunTimeException("OpenBD doesn't support currentpagenumber and currentsectionpagenumber in same section.");
renderedBody = getRenderedBody( _Session, nextSection, _settings, _sections.size() );
_renderer.setDocument( getDocument( renderedBody ), nextSection.getBaseUrl( _Session ) );
_renderer.layout();
_renderer.writeNextDocument( _renderer.getWriter().getCurrentPageNumber()+1 );
currentPageNumber = _renderer.getWriter().getCurrentPageNumber();
nextSection.setTotalSectionPageCount(currentPageNumber-totalPageCount);
totalPageCount = currentPageNumber;
}
for ( int i = 0; i < _sections.size(); i++ ){
nextSection = _sections.get( i );
nextSection.setTotalPageCount(totalPageCount);
}
} catch (DocumentException e) {
throw newRunTimeException( "Failed to create PDF due to DocumentException: " + e.getMessage() );
}finally{
if ( pdfOut != null )try{ pdfOut.close(); }catch( IOException ignored ){}
}
}
示例7: main
import org.xhtmlrenderer.pdf.ITextRenderer; //导入方法依赖的package包/类
public static void main(String[] args) throws IOException, ParserConfigurationException, DocumentException
{
if (args.length != 2)
{
System.out.println("Error: You should type as: convertToPDF htmlFile pdfOut");
System.exit(1);
}
String htmlFile = args[0];
String pdfOutFile = args[1];//"/home/sardor/Downloads/CV_B/test.pdf";
FileInputStream input = reOpenStream(htmlFile);
//Append required HTML elements via JSoup
HtmlValidator validator = new HtmlValidator(input, htmlFile);
if(validator.hasError()==1)
{
System.out.println("Error: Something wrong with HTML file");
System.exit(1);
}
//Redefine file stream
input = reOpenStream(htmlFile);
//Validate out html document
Tidy tidy=new Tidy();
tidy.setInputEncoding("UTF-8");
tidy.setOutputEncoding("UTF-8");
tidy.setIndentCdata(true);
tidy.setQuiet(true);
tidy.setForceOutput(true);
tidy.setTidyMark(false);
tidy.setXHTML(true);
tidy.setJoinClasses(true);
tidy.setSmartIndent(true);
//Convert to XML view
Document xhtmlDoc = tidy.parseDOM(input, null);
//Create PDF file
OutputStream os = new FileOutputStream(pdfOutFile);
//Render pdf doc
ITextRenderer renderer = new ITextRenderer();
renderer.setDocument(xhtmlDoc,null);
renderer.layout();
renderer.createPDF(os);
os.close();
}
示例8: createBasePDF
import org.xhtmlrenderer.pdf.ITextRenderer; //导入方法依赖的package包/类
private File createBasePDF(Node node, List<PDFManagerResponse> managerResponses, FlowInstanceManager instanceManager, FlowInstanceEvent event) throws DocumentException, IOException {
File basePDF = File.createTempFile("basepdf", instanceManager.getFlowInstanceID() + "-" + getFileSuffix(event) + ".pdf", getTempDir());
OutputStream basePDFOutputStream = null;
try{
basePDFOutputStream = new FileOutputStream(basePDF);
ITextRenderer renderer = new ITextRenderer();
ResourceLoaderAgent callback = new ResourceLoaderAgent(renderer.getOutputDevice(), managerResponses);
callback.setSharedContext(renderer.getSharedContext());
renderer.getSharedContext().setUserAgentCallback(callback);
if(this.fontList != null){
for(String font : fontList){
renderer.getFontResolver().addFont(font, true);
}
}
renderer.setDocument((Document)node, "c:\\users\\unlogic\foo.html");
renderer.layout();
renderer.createPDF(basePDFOutputStream);
}finally{
StreamUtils.closeStream(basePDFOutputStream);
}
return basePDF;
}