Embed an external program inside a java program - java

I'm implementing a patch in Jabref (reference management software): I want to embed a pdf reader in it. This feature has been done in Mendeley and Papers, and it's very useful if you can read/markup pdfs right inside of Jabref.
Instead of writing a pdf viewer, I want to embed outside program inside Jabref, such as Adobe Reader, or PDF Document Viewer in Ubuntu. Is there anyway to do that?

Related

Java DOCX file Viewer

Currently I'm developing an application that allows users to create a template and generate it into a DOCX file. The application needs to be able to display to users the changes in the template as the user is creating it.
The approach I tried was using DOCX4J library (allows manipulation of DOCX file) and ICEPDF which is primarily used to display the DOCX into the swing component by converting it first into a PDF file. Now the problem in this approach is that it loads pretty slow and some of the changes that occurs in the DOCX file does not reflect on the PDF conversion (example: dashed underline, font changes). When I tried to open the DOCX file ouput in MS WORD, the file is viewed correctly so I know changes do occur, but it seems that ICEPDF just can't show it properly.
So I was wondering if anyone knows a java library that allows DOCX files to be viewed directly from a Swing Component instead of converting it first into a PDF file.
You can try docx4all or DocxEditorKit. Both of these are built around docx4j.

Create a "print-only" PDF with itext

This question is related to another one I've posted recently: Check printing with Java/JSP
We're looking for alternatives to how we currently print checks in a Java web application via an applet. It seems the consensus is to use PDF for printing and that itext offers the ability to do so with Java.
However, it's important in our particular case that the checks are "print-only" - the user should not have any ability in the application to save the check (I know a savvy user could do a PrintScreen but we want to cover our rears and make no native functionality in the app to save checks).
I haven't been successful in browsing the web to find out if it's possible to create a PDF with itext in this manner. I have seen posts on restricting permissions in a PDF but what I'm really looking for is a way to disable the ability to save a PDF locally using itext.
Does this functionality exist? If so, could you point me to documentation/code samples on it?
I'm presuming that you're serving this PDF and wishing to print it from within a web application / web site where no out of the ordinary client side plug-ins are installed.
If printing the PDF using conventional means (e.g. Adobe Reader), the PDF MUST be downloaded to the browser's cache to be opened and printed. There is no way around that.
Now you can probably prevent the average Joe from saving the PDF locally via the following technique, but any savvy user will be able to inspect your HTML's source and download the PDF directly.
Output your PDF in iText such that when the PDF is opened, a print action automatically occurs
Put an invisible IFRAME on your HTML page which loads this PDF, but is not visible in the browser to your user
When the user loads your HTML page, the PDF will be loaded in the IFRAME and sent to the users printer (presuming that Adobe Reader is installed in the browser). Yes, the PDF will end up in the browser cache, but the user would have to be savvy enough to both recognize this and then hunt it down in their browser's cache.
If this is not acceptable, you're going to have to look at converting the PDF to another file type (e.g. pages are rendered to images displayed in the browser or perhaps a Flash / Java object that sends each page in the document to the printer directly)
The printWriter class gives some static variables for certain options: PrintWriter
And here is another SO post that might help: iText disable printing/Copying/Saving

Show PDF content using GWT

How I can show .pdf files content in browser using GXT or GWT Libraries.
1) Web browsers can embed PDF documents handily, this is probably the most practical solution (use standard html windows in your GWT application that display the PDF, and make sure the PDF is accessible from the web). A GWT Child frame can effectively embed a pdf using native browser capabilities, just make sure you encode the content correctly in the header.
2) If you want to do some GWT/java/pdf wizardry, you can use iText's PDF reader/writer interface to customize the type of PDF data you want to display.
The ultimate answer depends on wether you want to embed a WHOLE pdf, or simply extract/create PDF contents as part of your web app.

How to open pdf file in Jframe using itext

I would like to open a pdf file in a new Jframe.
the pdf file exist. I just need to open it and show it in a new Jframe.
I user itext to create the pdf file. do I need the same tool to open it.
please show me how.
thanks in advance.
It is not that easy and straightforward to open PDF inside Swing's JFrame. You can consider purchasing commercial tools such as pdfviewer or use embedded browser like JDIC and display your PDF using embedded PDF Viewer (i.e. Adobe Reader) inside an embedded browser but that is tricky as well.
I would rather seriously consider opening your PDF in OS default PDF viewer using java.awt.Desktop.open() method which is designed to be cross-platform. Note however, that Desktop class is available in Java 1.6 and later.

Generating and Displaying PDF file in Flex/Java

We have Flex on the front end and Java on the back end. When a user will request for a PDF file, request will go to the Java backend, where a PDF file will be generated using Jasper Reports. What we dont know is how to display this PDF file in browser; since we dont want to use JSP/Servlets etc - It has to be flex only. Any suggestions?
Flash Player cannot natively render PDF files. This is possible using Adobe AIR but not in a Flex application. Your best bet is to call navigateToURL() and open a Servlet in a new browser tab/window. The Servlet can simply write contents of the PDF file to the OutputStream and set the appropriate HTTP headers.
i think this question is old, but it may help others, there's a new library developed by Jasper Forge them selves, which deals with JasperReports directly, i mean it's not a PDF viewer, but a JasperReport exporting tool, you can download it from here
i tried it through using JasperServer, when viewing reports you can choose from different options to export it, one of them is flash, and it's working nice
Well for starters, PDFs don't always display in the browser. It depends on the user's settings. You essentially header them the pdf file and either they download it or a program like Acrobat Reader opens in the browser to display it.
Not sure how this is done in flex, I would imagine if you're using Java one simple servlet could do it.

Categories

Resources