Package org.apache.pdfbox.debugger
Class PDFDebugger
java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
javax.swing.JFrame
org.apache.pdfbox.debugger.PDFDebugger
- All Implemented Interfaces:
ImageObserver,MenuContainer,Serializable,Callable<Integer>,EventListener,Accessible,HyperlinkListener,RootPaneContainer,WindowConstants
PDF Debugger.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static classInternal class to avoid double code in password entry loop.Nested classes/interfaces inherited from class javax.swing.JFrame
JFrame.AccessibleJFrameNested classes/interfaces inherited from class java.awt.Frame
Frame.AccessibleAWTFrameNested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.TypeNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Propertiesprivate Stringprivate Stringprivate PDDocumentprivate final JPanelprivate JMenuprivate JMenuItemprivate JMenuItemprivate JMenuItemprivate Fileprivate static final booleanprivate JScrollPaneprivate JSplitPaneprivate JTextPaneprivate static org.apache.commons.logging.Logprivate static final Stringprivate Stringprivate static final FileFilterprivate JMenuprivate JMenuItemprivate RecentFilesprivate JMenuprivate JMenuItemprivate JMenuItemprivate int(package private) picocli.CommandLine.Model.CommandSpecprivate ReaderBottomPanelprivate TreeStatusPaneprivate final PrintStreamprivate Tree(package private) booleanprivate booleanprivate WindowPrefsFields inherited from class javax.swing.JFrame
accessibleContext, rootPane, rootPaneCheckingEnabledFields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSORFields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTHFields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidcall()private StringconvertToString(Object selectedNode) private JMenuprivate JMenuprivate JMenuprivate voidexitMenuItemActionPerformed(ActionEvent ignored) Returns the File menu.Returns the Edit > Find > Find menu item.Returns the Edit > Find > Find Next menu item.Returns the Edit > Find > Find Previous menu item.private COSNamegetNodeKey(Object selectedNode) static StringgetPageLabel(PDDocument document, int pageIndex) Convenience method to get the page label if available.Provide the current view mode of the tree view.private COSBasegetUnderneathObject(Object selectedNode) booleanvoidprivate voidThis method is called from within the constructor to initialize the form.protected voidInitialize application global event handlers.voidinitTree()private booleanprivate booleanisCIDFont(COSDictionary dic) private booleanprivate booleanisFlagNode(Object selectedNode, Object parentNode) private booleanprivate booleanisFontDescriptor(Object obj) private booleanisOtherColorSpace(Object selectedNode) private booleanprivate booleanisSpecialColorSpace(Object selectedNode) private booleanprivate booleanprivate voidprivate voidLoads the local configuration file, if any.static voidEntry point.private voidprivate voidosxOpenFiles(String filename) This method is called via reflection on Mac OS X.private voidosxQuit()This method is called via reflection on Mac OS X.protected voidExit the application after the window is closed.private voidprivate voidreadPDFFile(File file, String password) private voidreadPDFFile(String filePath, String password) private voidreadPDFurl(String urlString, String password) private voidprivate voidvoidsetTreeViewMode(String viewMode) Set the current view mode of the tree view.private voidshowColorPane(Object csNode) Show a Panel describing color spaces in more detail and interactive way.private voidshowFlagPane(Object parentNode, Object selectedNode) private voidprivate voidprivate voidshowStream(COSStream stream, TreePath path) private voidshowString(Object selectedNode) private voidtextDialog(String title, URL resource) Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, updateMethods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecoratedMethods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, toFrontMethods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTreeMethods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycleMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.awt.MenuContainer
getFont, postEvent
-
Field Details
-
LOG
private static org.apache.commons.logging.Log LOG -
SPECIALCOLORSPACES
-
OTHERCOLORSPACES
-
PDF_FILTER
-
shortcutKeyMask
private int shortcutKeyMask -
OS_NAME
-
IS_MAC_OS
private static final boolean IS_MAC_OS -
documentPanel
-
statusPane
-
recentFiles
-
windowPrefs
-
document
-
currentFilePath
-
jScrollPaneRight
-
jSplitPane
-
jTextPane
-
statusBar
-
tree
-
saveAsMenuItem
-
recentFilesMenu
-
printMenuItem
-
printDpiMenu
-
reopenMenuItem
-
findMenu
-
findMenuItem
-
findNextMenuItem
-
findPreviousMenuItem
-
currentTreeViewMode
-
SYSERR
-
usageHelpRequested
boolean usageHelpRequested -
password
-
viewstructure
private boolean viewstructure -
infile
-
configuration
-
spec
picocli.CommandLine.Model.CommandSpec spec
-
-
Constructor Details
-
PDFDebugger
public PDFDebugger()Constructor. -
PDFDebugger
Constructor.- Parameters:
initialViewMode- initial view mode for the tree view on the left hand side.
-
-
Method Details
-
main
Entry point.- Parameters:
args- the command line arguments
-
call
-
getTreeViewMode
Provide the current view mode of the tree view. seeTreeViewMenufor valid values -
setTreeViewMode
Set the current view mode of the tree view. seeTreeViewMenufor valid values- Parameters:
viewMode- the view mode to be set
-
hasDocument
public boolean hasDocument() -
loadConfiguration
private void loadConfiguration()Loads the local configuration file, if any. -
initComponents
private void initComponents()This method is called from within the constructor to initialize the form. -
initGlobalEventHandlers
protected void initGlobalEventHandlers()Initialize application global event handlers. Protected to allow subclasses to override this method if they don't want the global event handler overridden. -
createFileMenu
-
createEditMenu
-
createFindMenu
-
getFindMenu
Returns the File menu.- Returns:
- the File menu
-
getFindMenuItem
Returns the Edit > Find > Find menu item.- Returns:
- the Find menu
-
getFindNextMenuItem
Returns the Edit > Find > Find Next menu item.- Returns:
- the FindNext menu
-
getFindPreviousMenuItem
Returns the Edit > Find > Find Previous menu item.- Returns:
- the FindPrevious menu
-
osxOpenFiles
This method is called via reflection on Mac OS X. -
osxQuit
private void osxQuit()This method is called via reflection on Mac OS X. -
saveAsMenuItemActionPerformed
-
openMenuItemActionPerformed
-
jTree1ValueChanged
-
isSpecialColorSpace
-
isOtherColorSpace
-
isPage
-
isFlagNode
-
isEncrypt
-
isFontDescriptor
-
isAnnot
-
isStream
-
isString
-
isFont
-
isCIDFont
-
showColorPane
Show a Panel describing color spaces in more detail and interactive way.- Parameters:
csNode- the special color space containing node.- Throws:
IOException
-
showPage
-
showFlagPane
-
showStream
- Throws:
IOException
-
showFont
-
replaceRightComponent
-
showString
-
getNodeKey
-
getUnderneathObject
-
convertToString
-
exitMenuItemActionPerformed
-
performApplicationExit
protected void performApplicationExit()Exit the application after the window is closed. This is protected to let subclasses override the behavior. -
printMenuItemActionPerformed
-
readPDFFile
- Throws:
IOExceptionURISyntaxException
-
readPDFFile
- Throws:
IOExceptionURISyntaxException
-
readPDFurl
- Throws:
IOExceptionURISyntaxException
-
initTree
public void initTree() -
addRecentFileItems
private void addRecentFileItems() -
getPageLabel
Convenience method to get the page label if available.- Parameters:
document- the current documentpageIndex- 0-based page number.- Returns:
- a page label or null if not available.
-
textDialog
-
hyperlinkUpdate
- Specified by:
hyperlinkUpdatein interfaceHyperlinkListener
-