List of usage examples for com.lowagie.text.pdf PdfWriter PageModeUseThumbs
int PageModeUseThumbs
To view the source code for com.lowagie.text.pdf PdfWriter PageModeUseThumbs.
Click Source Link
From source file:ambit.data.qmrf.Qmrf_Xml_Pdf.java
License:Open Source License
public void xml2pdf(InputSource xml, OutputStream pdf) { try {//w w w . j ava 2 s .c o m Document document = new Document(PageSize.A4, 80, 50, 30, 65); PdfWriter writer = PdfWriter.getInstance(document, pdf); //writer.setViewerPreferences(PdfWriter.HideMenubar| PdfWriter.HideToolbar); writer.setViewerPreferences(PdfWriter.PageModeUseThumbs | PdfWriter.PageModeUseOutlines); //PdfOutline root = writer.getDirectContent().getRootOutline(); //new PdfOutline(root, new PDFAction("http://nina.acad.bg/qmrf"), "a bookmark"); //writer.addFileAttachment(arg0, arg1, arg2, arg3) if (docBuilder == null) docBuilder = docBuilderFactory.newDocumentBuilder(); docBuilder.setErrorHandler(new SimpleErrorHandler(getClass().getName())); QMRFSchemaResolver resolver = new QMRFSchemaResolver("http://ambit.acad.bg/qmrf/qmrf.dtd", null); resolver.setIgnoreSystemID(true); docBuilder.setEntityResolver(resolver); org.w3c.dom.Document doc = null; try { doc = docBuilder.parse(xml); } catch (Exception x) { document.addCreationDate(); document.addCreator(getClass().getName()); document.open(); document.add(new Paragraph(new Chunk(x.getMessage()))); document.close(); return; } document.addCreationDate(); document.addCreator(getClass().getName()); document.addKeywords(replaceTags(findNodeValue("keywords", doc))); document.addTitle(replaceTags(findNodeValue("QSAR_title", doc))); try { NodeList info = doc.getElementsByTagName("QMRF"); for (int i = 0; i < info.getLength(); i++) document.addSubject(findAttributeValue("name", info.item(i)) + '.' + findAttributeValue("version", info.item(i))); } catch (Exception x) { document.addSubject("QMRF"); } try { document.addAuthor(listNodeAttributes(doc, "qmrf_authors", "author_ref", "author", att_author, new Boolean(true))); } catch (Exception x) { document.addAuthor(getClass().getName()); } document.open(); PdfContentByte cb = writer.getDirectContent(); try { headerTable(document, doc); } catch (Exception x) { document.add(new Paragraph(new Chunk(x.getMessage()))); document.close(); return; } PdfOutline root = writer.getDirectContent().getRootOutline(); for (int i = 0; i < subchapters.length; i++) try { int align = Paragraph.ALIGN_LEFT; if (Mode.chapter == (Mode) subchapters[i][2]) { document.add(new Paragraph(new Chunk('\n'))); PdfPTable table = new PdfPTable(1); table.setWidthPercentage(100); StringBuffer b = new StringBuffer(); b.append(findAttributeValue(subchapters[i][0].toString(), xml_attribute_chapter, doc)); b.append('.'); b.append(findAttributeValue(subchapters[i][0].toString(), xml_attribute_name, doc)); String bookmark = b.toString(); Chunk title = new Chunk(bookmark); title.setLocalDestination(bookmark); title.setFont(bfont); PdfDestination destination = new PdfDestination(PdfDestination.FITH); PdfOutline outline = new PdfOutline(root, destination, bookmark); Paragraph p = new Paragraph(title); PdfPCell cell = new PdfPCell(p); cell.setBackgroundColor(chapterColor); table.addCell(cell); document.add(table); float pos = writer.getVerticalPosition(false); if (pos < 90) document.newPage(); } else { Phrase phrase = new Phrase(); switch ((Mode) subchapters[i][2]) { case title: { StringBuffer b = new StringBuffer(); String cn = findAttributeValue(subchapters[i][0].toString(), xml_attribute_chapter, doc); if (cn == null) break; b.append(findAttributeValue(subchapters[i][0].toString(), xml_attribute_chapter, doc)); b.append('.'); b.append(findAttributeValue(subchapters[i][0].toString(), xml_attribute_name, doc)); String subchapterBookmark = b.toString(); b.append(':'); Chunk title = new Chunk(b.toString()); title.setLocalDestination(subchapterBookmark); title.setFont(bfont); phrase.add(title); PdfDestination destination = new PdfDestination(PdfDestination.FITBH); PdfOutline outline = new PdfOutline(root, destination, subchapterBookmark); break; } case text: { createNodePhrase(subchapters[i][0].toString(), doc, phrase, font); align = Paragraph.ALIGN_JUSTIFIED; break; } case answer: { String a = findAnswer(subchapters[i][0].toString(), doc); if (a != null) { Chunk answer = new Chunk(a); answer.setFont(font); phrase.add(answer); } break; } case dataset: { StringBuffer b = new StringBuffer(); b.append(findDataAvailable(subchapters[i][0].toString(), doc)); Chunk dataset = new Chunk(b.toString()); dataset.setFont(font); phrase.add(dataset); break; } case attachments: { PdfPTable table = getAttachmentsAsTable(doc, "attachment_training_data"); if (table != null) { phrase.add(new Paragraph("Training set(s)")); phrase.add(table); } table = getAttachmentsAsTable(doc, "attachment_validation_data"); if (table != null) { phrase.add(new Paragraph("Test set(s)")); phrase.add(table); } table = getAttachmentsAsTable(doc, "attachment_documents"); if (table != null) { phrase.add(new Paragraph("Supporting information")); phrase.add(table); } break; /* StringBuffer b = new StringBuffer(); b.append("Training set(s)\n"); b.append(listAttachments(doc,"attachment_training_data")); b.append("Test set(s)\n"); b.append(listAttachments(doc,"attachment_validation_data")); b.append("Supporting information\n"); b.append(listAttachments(doc,"attachment_documents")); Chunk attachments = new Chunk(b.toString()); attachments.setFont(font); phrase.add(attachments); break; */ } case reference: { try { String value = listNodeAttributes(doc, subchapters[i][0].toString(), subchapters[i][3].toString(), subchapters[i][4].toString(), (String[]) subchapters[i][5], (Boolean) subchapters[i][6]); Chunk reference = new Chunk(value); reference.setFont(font); align = Paragraph.ALIGN_JUSTIFIED; phrase.add(reference); } catch (Exception x) { } break; } } Paragraph p = new Paragraph(phrase); p.setAlignment(align); document.add(p); float pos = writer.getVerticalPosition(false); /* cb.moveTo(0, pos); cb.lineTo(PageSize.A4.width(), pos); cb.stroke(); */ if (pos < 90) document.newPage(); } } catch (Exception x) { x.printStackTrace(); } document.close(); } catch (Exception e) { e.printStackTrace(); System.err.println(e.getMessage()); } }
From source file:ambit2.data.qmrf.Qmrf_Xml_Pdf.java
License:Open Source License
public void xml2pdf(InputSource xml, OutputStream pdf) { try {/*from www .jav a 2 s . c o m*/ Document document = new Document(PageSize.A4, 80, 50, 30, 65); PdfWriter writer = PdfWriter.getInstance(document, pdf); //writer.setViewerPreferences(PdfWriter.HideMenubar| PdfWriter.HideToolbar); writer.setViewerPreferences(PdfWriter.PageModeUseThumbs | PdfWriter.PageModeUseOutlines); //PdfOutline root = writer.getDirectContent().getRootOutline(); //new PdfOutline(root, new PDFAction("http://nina.acad.bg/qmrf"), "a bookmark"); //writer.addFileAttachment(arg0, arg1, arg2, arg3) if (docBuilder == null) docBuilder = docBuilderFactory.newDocumentBuilder(); docBuilder.setErrorHandler(new SimpleErrorHandler(getClass().getName())); QMRFSchemaResolver resolver = new QMRFSchemaResolver("http://ambit2.acad.bg/qmrf/qmrf.dtd", null); resolver.setIgnoreSystemID(true); docBuilder.setEntityResolver(resolver); org.w3c.dom.Document doc = null; try { doc = docBuilder.parse(xml); } catch (Exception x) { document.addCreationDate(); document.addCreator(getClass().getName()); document.open(); document.add(new Paragraph(new Chunk(x.getMessage()))); document.close(); return; } document.addCreationDate(); document.addCreator(getClass().getName()); document.addKeywords(replaceTags(findNodeValue("keywords", doc))); document.addTitle(replaceTags(findNodeValue("QSAR_title", doc))); try { NodeList info = doc.getElementsByTagName("QMRF"); for (int i = 0; i < info.getLength(); i++) document.addSubject(findAttributeValue("name", info.item(i)) + '.' + findAttributeValue("version", info.item(i))); } catch (Exception x) { document.addSubject("QMRF"); } try { document.addAuthor(listNodeAttributes(doc, "qmrf_authors", "author_ref", "author", att_author, new Boolean(true))); } catch (Exception x) { document.addAuthor(getClass().getName()); } document.open(); PdfContentByte cb = writer.getDirectContent(); try { headerTable(document, doc); } catch (Exception x) { document.add(new Paragraph(new Chunk(x.getMessage()))); document.close(); return; } PdfOutline root = writer.getDirectContent().getRootOutline(); for (int i = 0; i < subchapters.length; i++) try { int align = Paragraph.ALIGN_LEFT; if (Mode.chapter == (Mode) subchapters[i][2]) { document.add(new Paragraph(new Chunk('\n'))); PdfPTable table = new PdfPTable(1); table.setWidthPercentage(100); StringBuffer b = new StringBuffer(); b.append(findAttributeValue(subchapters[i][0].toString(), xml_attribute_chapter, doc)); b.append('.'); b.append(findAttributeValue(subchapters[i][0].toString(), xml_attribute_name, doc)); String bookmark = b.toString(); Chunk title = new Chunk(bookmark); title.setLocalDestination(bookmark); title.setFont(bfont); PdfDestination destination = new PdfDestination(PdfDestination.FITH); PdfOutline outline = new PdfOutline(root, destination, bookmark); Paragraph p = new Paragraph(title); PdfPCell cell = new PdfPCell(p); cell.setBackgroundColor(chapterColor); table.addCell(cell); document.add(table); float pos = writer.getVerticalPosition(false); if (pos < 90) document.newPage(); } else { Phrase phrase = new Phrase(); switch ((Mode) subchapters[i][2]) { case title: { StringBuffer b = new StringBuffer(); String cn = findAttributeValue(subchapters[i][0].toString(), xml_attribute_chapter, doc); if (cn == null) break; b.append(findAttributeValue(subchapters[i][0].toString(), xml_attribute_chapter, doc)); b.append('.'); b.append(findAttributeValue(subchapters[i][0].toString(), xml_attribute_name, doc)); String subchapterBookmark = b.toString(); b.append(':'); Chunk title = new Chunk(b.toString()); title.setLocalDestination(subchapterBookmark); title.setFont(bfont); phrase.add(title); PdfDestination destination = new PdfDestination(PdfDestination.FITBH); PdfOutline outline = new PdfOutline(root, destination, subchapterBookmark); break; } case text: { createNodePhrase(subchapters[i][0].toString(), doc, phrase, font); align = Paragraph.ALIGN_JUSTIFIED; break; } case answer: { String a = findAnswer(subchapters[i][0].toString(), doc); if (a != null) { Chunk answer = new Chunk(a); answer.setFont(font); phrase.add(answer); } break; } case dataset: { StringBuffer b = new StringBuffer(); b.append(findDataAvailable(subchapters[i][0].toString(), doc)); Chunk dataset = new Chunk(b.toString()); dataset.setFont(font); phrase.add(dataset); break; } case attachments: { PdfPTable table = getAttachmentsAsTable(doc, "attachment_training_data"); if (table != null) { phrase.add(new Paragraph("Training set(s)")); phrase.add(table); } table = getAttachmentsAsTable(doc, "attachment_validation_data"); if (table != null) { phrase.add(new Paragraph("Test set(s)")); phrase.add(table); } table = getAttachmentsAsTable(doc, "attachment_documents"); if (table != null) { phrase.add(new Paragraph("Supporting information")); phrase.add(table); } break; /* StringBuffer b = new StringBuffer(); b.append("Training set(s)\n"); b.append(listAttachments(doc,"attachment_training_data")); b.append("Test set(s)\n"); b.append(listAttachments(doc,"attachment_validation_data")); b.append("Supporting information\n"); b.append(listAttachments(doc,"attachment_documents")); Chunk attachments = new Chunk(b.toString()); attachments.setFont(font); phrase.add(attachments); break; */ } case reference: { try { String value = listNodeAttributes(doc, subchapters[i][0].toString(), subchapters[i][3].toString(), subchapters[i][4].toString(), (String[]) subchapters[i][5], (Boolean) subchapters[i][6]); Chunk reference = new Chunk(value); reference.setFont(font); align = Paragraph.ALIGN_JUSTIFIED; phrase.add(reference); } catch (Exception x) { } break; } } Paragraph p = new Paragraph(phrase); p.setAlignment(align); document.add(p); float pos = writer.getVerticalPosition(false); /* cb.moveTo(0, pos); cb.lineTo(PageSize.A4.width(), pos); cb.stroke(); */ if (pos < 90) document.newPage(); } } catch (Exception x) { x.printStackTrace(); } document.close(); } catch (Exception e) { e.printStackTrace(); System.err.println(e.getMessage()); } }
From source file:jPDFmelange.MelangeJFrame.java
License:Open Source License
/** * This method initializes <code>this</code>. * /* w ww . j av a2 s . com*/ */ private void initialize() { // Initialize the Mode and Layout Maps //PageMode.put(messages.getString("PAGE_MODE_USE_OUTLINES"), PdfWriter.PageModeUseOutlines); PageMode.put("PAGE_MODE_USE_NONE", PdfWriter.PageModeUseNone); PageMode.put("PAGE_MODE_FULL_SCREEN", PdfWriter.PageModeFullScreen); PageMode.put("PAGE_MODE_USE_THUMBS", PdfWriter.PageModeUseThumbs); PageMode.put("PAGE_MODE_USE_OC", PdfWriter.PageModeUseOC); PageMode.put("PAGE_MODE_USE_ATTACHMENTS", PdfWriter.PageModeUseAttachments); prefPageMode = "PAGE_MODE_USE_NONE"; PageLayout.put("PAGE_LAYOUT_SINGLE_PAGE", PdfWriter.PageLayoutSinglePage); PageLayout.put("PAGE_LAYOUT_ONE_COLUMN", PdfWriter.PageLayoutOneColumn); PageLayout.put("PAGE_LAYOUT_TWO_COLUMN_LEFT", PdfWriter.PageLayoutTwoColumnLeft); PageLayout.put("PAGE_LAYOUT_TWO_COLUMN_RIGHT", PdfWriter.PageLayoutTwoColumnRight); PageLayout.put("PAGE_LAYOUT_TWO_PAGE_LEFT", PdfWriter.PageLayoutTwoPageLeft); PageLayout.put("PAGE_LAYOUT_TWO_PAGE_RIGHT", PdfWriter.PageLayoutTwoColumnRight); prefPageLayout = "PAGE_LAYOUT_SINGLE_PAGE"; // Initialize the locale localeTable.add(new Locale("de")); localeTable.add(new Locale("en")); System.out.println("-- supported locals --"); for (int i = 0; i < localeTable.size(); i++) { System.out.println(((Locale) localeTable.get(i)).getDisplayName()); } // // Load the properties File if is exists. // File pfile = new File(propertiesFileName); if (pfile.exists()) getProperties(); // // Load the local properties. // messages = ResourceBundle.getBundle("resources/MelangeMessages", MelangeJFrame.locale); System.out.println("-- using locale " + messages.getLocale().getDisplayName() + " --\n"); arrayListHandler = new ArrayListTransferHandler(); // // Initailize the main window. // this.setJMenuBar(getJJMenuBar()); this.setContentPane(getJContentPane()); this.setSize(700, 485); this.setLocationRelativeTo(null); this.setTitle(projectName); this.addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent e) { MelangeJFrame.this.dispose(); } }); // // Initialize PDF Document properties // jPanelViewPrefs.setEnablePDFViewerPrefs(enablePDFPreferences); }
From source file:jPDFmelange.MelangeJFrame.java
License:Open Source License
/** * This method reads the properties file "melange.rc" located in "user.dir". *///from w ww.j ava 2s. c o m private void getProperties() { String propertyStr = null; int propertyInt = -1; try { Properties melangeProperties = new Properties(); // Java > java 1.4 we can use a FileReader //Reader propInFile = new FileReader(propertiesFileName); // for Java == java 1.4 we need a InputStream FileInputStream propInFile = new FileInputStream(propertiesFileName); melangeProperties.load(propInFile); melangeProperties.list(System.out); // Get property ShowMoveButtons propertyStr = melangeProperties.getProperty("ShowButtonsPanel", String.valueOf(showButtonsPanel)); // OK, for Java <= 1.4 there is no Boolean.parseBoolean(String) //showButtonsPanel = Boolean.parseBoolean(propertyStr); showButtonsPanel = propertyStr.equalsIgnoreCase("true"); // Get the property IconHeight, check limits. propertyStr = melangeProperties.getProperty("IconHeight", String.valueOf(iconHeight)); propertyInt = Integer.parseInt(propertyStr); if (propertyInt < 500 || propertyInt > 0) iconHeight = propertyInt; // Get the property ImageScalingAlgorithm, check limits. propertyStr = melangeProperties.getProperty("ImageScalingAlgorithm", String.valueOf(imageScalingAlgorithm)); propertyInt = Integer.parseInt(propertyStr); if (propertyInt == BufferedImage.SCALE_FAST || propertyInt == BufferedImage.SCALE_SMOOTH || propertyInt == BufferedImage.SCALE_REPLICATE || propertyInt == BufferedImage.SCALE_AREA_AVERAGING) imageScalingAlgorithm = propertyInt; // Get the property local. String languageStr = melangeProperties.getProperty("LocaleLanguage", locale.getLanguage()); String countryStr = melangeProperties.getProperty("LocaleCountry", locale.getCountry()); String variantStr = melangeProperties.getProperty("LocaleVariant", locale.getVariant()); locale = new Locale(languageStr, countryStr, variantStr); // Get the property enablePDFPreferences propertyStr = melangeProperties.getProperty("enablePDFPreferences", String.valueOf(enablePDFPreferences)); enablePDFPreferences = propertyStr.equalsIgnoreCase("true"); // Get the property prefPageMode, check limits. propertyStr = melangeProperties.getProperty("prefPageMode", prefPageMode); if (MelangeJFrame.PageMode.containsKey(propertyStr)) { propertyInt = MelangeJFrame.PageMode.get(propertyStr); if (propertyInt == PdfWriter.PageModeFullScreen || propertyInt == PdfWriter.PageModeUseAttachments || propertyInt == PdfWriter.PageModeUseNone || propertyInt == PdfWriter.PageModeUseOC || propertyInt == PdfWriter.PageModeUseOutlines || propertyInt == PdfWriter.PageModeUseThumbs) prefPageMode = propertyStr; } // Get the property prefPageLayout, check limits. propertyStr = melangeProperties.getProperty("prefPageLayout", prefPageLayout); if (MelangeJFrame.PageLayout.containsKey(propertyStr)) { propertyInt = MelangeJFrame.PageLayout.get(propertyStr); if (propertyInt == PdfWriter.PageLayoutOneColumn || propertyInt == PdfWriter.PageLayoutSinglePage || propertyInt == PdfWriter.PageLayoutTwoColumnLeft || propertyInt == PdfWriter.PageLayoutTwoColumnRight || propertyInt == PdfWriter.PageLayoutTwoPageLeft || propertyInt == PdfWriter.PageLayoutTwoPageRight) prefPageLayout = propertyStr; } // Get the property prefHideToolbar propertyStr = melangeProperties.getProperty("prefHideToolbar", String.valueOf(prefHideToolbar)); prefHideToolbar = propertyStr.equalsIgnoreCase("true"); // Get the property prefHideMenubar propertyStr = melangeProperties.getProperty("prefHideMenubar", String.valueOf(prefHideMenubar)); prefHideMenubar = propertyStr.equalsIgnoreCase("true"); // Get the property prefHideWindowUI propertyStr = melangeProperties.getProperty("prefHideWindowUI", String.valueOf(prefHideWindowUI)); prefHideWindowUI = propertyStr.equalsIgnoreCase("true"); // Get the property prefFitWindow propertyStr = melangeProperties.getProperty("prefFitWindow", String.valueOf(prefFitWindow)); prefFitWindow = propertyStr.equalsIgnoreCase("true"); // Get the property prefCenterWindow propertyStr = melangeProperties.getProperty("prefCenterWindow", String.valueOf(prefCenterWindow)); prefCenterWindow = propertyStr.equalsIgnoreCase("true"); // Get the property prefDisplayDocTitle propertyStr = melangeProperties.getProperty("prefDisplayDocTitle", String.valueOf(prefDisplayDocTitle)); prefDisplayDocTitle = propertyStr.equalsIgnoreCase("true"); } catch (NumberFormatException e) { System.err.println("Incorrect formatting in " + propertiesFileName); } catch (FileNotFoundException e) { System.err.println("Can't find " + propertiesFileName); } catch (IOException e) { System.err.println("I/O failed."); } }
From source file:org.pdfsam.console.business.parser.validators.SetViewerCmdValidator.java
License:Open Source License
/** * /*from w w w . ja va 2s. c o m*/ * @param mode * @return The mode to iText */ private int getMode(String mode) { int retVal = PdfWriter.PageModeUseNone; if (SetViewerParsedCommand.M_ATTACHMENTS.equals(mode)) { retVal = PdfWriter.PageModeUseAttachments; } else if (SetViewerParsedCommand.M_FULLSCREEN.equals(mode)) { retVal = PdfWriter.PageModeFullScreen; } else if (SetViewerParsedCommand.M_OCONTENT.equals(mode)) { retVal = PdfWriter.PageModeUseOC; } else if (SetViewerParsedCommand.M_OUTLINES.equals(mode)) { retVal = PdfWriter.PageModeUseOutlines; } else if (SetViewerParsedCommand.M_THUMBS.equals(mode)) { retVal = PdfWriter.PageModeUseThumbs; } return retVal; }
From source file:org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.internal.PdfDocumentWriter.java
License:Open Source License
/** * Extracts the Page Layout and page mode settings for this PDF (ViewerPreferences). All preferences are defined as * properties which have to be set before the target is opened. * * @return the ViewerPreferences./* www . j a va 2s. c om*/ */ private int getViewerPreferences() { final String pageLayout = config.getConfigProperty( "org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PageLayout"); final String pageMode = config.getConfigProperty( "org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PageMode"); final String fullScreenMode = config.getConfigProperty( "org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.FullScreenMode"); final boolean hideToolBar = "true".equals(config.getConfigProperty( "org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.HideToolBar")); final boolean hideMenuBar = "true".equals(config.getConfigProperty( "org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.HideMenuBar")); final boolean hideWindowUI = "true".equals(config.getConfigProperty( "org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.HideWindowUI")); final boolean fitWindow = "true".equals(config.getConfigProperty( "org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.FitWindow")); final boolean centerWindow = "true".equals(config.getConfigProperty( "org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.CenterWindow")); final boolean displayDocTitle = "true".equals(config.getConfigProperty( "org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.DisplayDocTitle")); final boolean printScalingNone = "true".equals(config.getConfigProperty( "org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.PrintScalingNone")); final String direction = config.getConfigProperty( "org.pentaho.reporting.engine.classic.core.modules.output.pageable.pdf.Direction"); int viewerPreferences = 0; if ("PageLayoutOneColumn".equals(pageLayout)) { viewerPreferences = PdfWriter.PageLayoutOneColumn; } else if ("PageLayoutSinglePage".equals(pageLayout)) { viewerPreferences = PdfWriter.PageLayoutSinglePage; } else if ("PageLayoutTwoColumnLeft".equals(pageLayout)) { viewerPreferences = PdfWriter.PageLayoutTwoColumnLeft; } else if ("PageLayoutTwoColumnRight".equals(pageLayout)) { viewerPreferences = PdfWriter.PageLayoutTwoColumnRight; } else if ("PageLayoutTwoPageLeft".equals(pageLayout)) { viewerPreferences = PdfWriter.PageLayoutTwoPageLeft; } else if ("PageLayoutTwoPageRight".equals(pageLayout)) { viewerPreferences = PdfWriter.PageLayoutTwoPageRight; } if ("PageModeUseNone".equals(pageMode)) { viewerPreferences |= PdfWriter.PageModeUseNone; } else if ("PageModeUseOutlines".equals(pageMode)) { viewerPreferences |= PdfWriter.PageModeUseOutlines; } else if ("PageModeUseThumbs".equals(pageMode)) { viewerPreferences |= PdfWriter.PageModeUseThumbs; } else if ("PageModeFullScreen".equals(pageMode)) { viewerPreferences |= PdfWriter.PageModeFullScreen; if ("NonFullScreenPageModeUseNone".equals(fullScreenMode)) { viewerPreferences = PdfWriter.NonFullScreenPageModeUseNone; } else if ("NonFullScreenPageModeUseOC".equals(fullScreenMode)) { viewerPreferences |= PdfWriter.NonFullScreenPageModeUseOC; } else if ("NonFullScreenPageModeUseOutlines".equals(fullScreenMode)) { viewerPreferences |= PdfWriter.NonFullScreenPageModeUseOutlines; } else if ("NonFullScreenPageModeUseThumbs".equals(fullScreenMode)) { viewerPreferences |= PdfWriter.NonFullScreenPageModeUseThumbs; } } else if ("PageModeUseOC".equals(pageMode)) { viewerPreferences |= PdfWriter.PageModeUseOC; } else if ("PageModeUseAttachments".equals(pageMode)) { viewerPreferences |= PdfWriter.PageModeUseAttachments; } if (hideToolBar) { viewerPreferences |= PdfWriter.HideToolbar; } if (hideMenuBar) { viewerPreferences |= PdfWriter.HideMenubar; } if (hideWindowUI) { viewerPreferences |= PdfWriter.HideWindowUI; } if (fitWindow) { viewerPreferences |= PdfWriter.FitWindow; } if (centerWindow) { viewerPreferences |= PdfWriter.CenterWindow; } if (displayDocTitle) { viewerPreferences |= PdfWriter.DisplayDocTitle; } if (printScalingNone) { viewerPreferences |= PdfWriter.PrintScalingNone; } if ("DirectionL2R".equals(direction)) { viewerPreferences |= PdfWriter.DirectionL2R; } else if ("DirectionR2L".equals(direction)) { viewerPreferences |= PdfWriter.DirectionR2L; } if (logger.isDebugEnabled()) { logger.debug("viewerPreferences = 0b" + Integer.toBinaryString(viewerPreferences)); } return viewerPreferences; }
From source file:questions.stamppages.ChangeViewerPreferences.java
public static void main(String[] args) throws IOException, DocumentException { PdfReader reader = new PdfReader(RESOURCE); PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(RESULT)); stamper.setViewerPreferences(PdfWriter.PageModeUseThumbs); stamper.addViewerPreference(PdfName.NUMCOPIES, new PdfNumber(5)); stamper.close();/*from w w w.j a v a2s.c o m*/ }