html - How to disable print option for PDF in iframe -
i'm showing pdf in <iframe>
follows:
<iframe src="/itextpdfservlet" height="600px" width="700px"></iframe>
i disable print option this. how can achieve this?
my servlet
protected void doget(httpservletrequest request, httpservletresponse response) throws servletexception, ioexception { string fullpath = (string) request.getsession().getattribute("fullpath"); response.setcontenttype("application/pdf"); servletoutputstream out = null; try{ file file = new file( fullpath ); fileinputstream filein = new fileinputstream( file ); out = response.getoutputstream(); document document = new document(pagesize.a4); pdfwriter writer = pdfwriter.getinstance(document, out); document.open(); pdfcontentbyte cb = writer.getdirectcontent(); pdfreader reader = new pdfreader(filein); pdfstamper stamper = new pdfstamper(reader, new fileoutputstream("fullpath")); stamper.setencryption("reader_password".getbytes(), "permission_password".getbytes(), ~(pdfwriter.allow_copy | pdfwriter.allow_printing ), pdfwriter.standard_encryption_128); stamper.close(); pdfimportedpage page = writer.getimportedpage(reader, 1); document.newpage(); cb.addtemplate(page, 0, 0); document.add(new paragraph("my timestamp")); response.setheader("expires", "0"); response.setheader("cache-control", "must-revalidate, post-check=0, pre-check=0"); response.setheader("pragma", "public"); document.close(); }catch(exception e){ } }
treating visitors or customers enemies might not in best interest. can disable printing in options of pdf file when generating file:
pdfreader reader = new pdfreader("testpdf.pdf"); pdfstamper stamper = new pdfstamper(reader, new fileoutputstream("my-pdf-file.pdf")); stamper.setencryption("reader_password".getbytes(), "permission_password".getbytes(), ~(pdfwriter.allow_copy | pdfwriter.allow_printing ), pdfwriter.standard_encryption_128); stamper.close();
but know @ least 1 pdf viewer doesn't care these options. know lot of tools can make screenshots, if pdf makes me angry, print screenshot. there screen automation tools page through file me, make screenshot every page , little script compile new pdf that.
you can try disable printing javascript in web browser. force me install tool tampermonkey or similar kicks script out of browser.
usually, better approach put watermarks in pdf file downloaded / bought file , harass them, if pdf file leaks out. way, you're not annoying everyone.
that said, consider how pdfs worth , how suing cost (money , negative feedback wise). of time, investing money in great service earn more money can lose people printing pdfs (they have prints before have impact on revenue, rights, ...)
Comments
Post a Comment