X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=html-doc%2Fmanual.html;h=f748b5cab871de454aa0c65473f274121f9a2624;hb=64fbee630efe4a6a731bcc7b68855d933946b050;hp=44681d3577ce4fddc4fb5bb1428ccbeee5e5d60f;hpb=ece65f3e9d935ad4ca0b6f9d626288908c2ad59e;p=xournal.git diff --git a/html-doc/manual.html b/html-doc/manual.html index 44681d3..f748b5c 100644 --- a/html-doc/manual.html +++ b/html-doc/manual.html @@ -24,7 +24,7 @@ Xournal User's Manual

- Version 0.2 + Version 0.3.3


@@ -38,14 +38,14 @@

Xournal can be downloaded at +http://xournal.sourceforge.net/ or http://math.mit.edu/~auroux/software/xournal/

Xournal aims to provide superior graphical quality (subpixel resolution) and overall functionality; however it lacks the collaborative features of Jarnal. Since Xournal is still in its early development stages, it may not - be fully stable, and some features have not been implemented yet - (in particular, freeform selection and PDF backgrounds are missing). + be fully stable, and some features have not been implemented yet.

Table of contents

@@ -54,6 +54,7 @@ Xournal can be downloaded at

  • The drawing and selection tools
  • Pages, layers, and backgrounds
  • Printing
  • +
  • Configuration
  • Author information, license, bug-reports
  • Version history
  • The file format
  • @@ -94,12 +95,10 @@ the Pen Options submenu of the Tools menu).

    The eraser

    -The eraser lets you erase what you have drawn. If your tablet's stylus -has an eraser tip, and if the XInput extensions are enabled, the eraser -will be automatically selected when drawing with the eraser tip. -Another possibility is to enable the "Emulate Eraser" option in the Options -menu, which lets you use button 2 or 3 on the stylus (mouse middle or right button) -as an eraser.
    +The eraser lets you erase what you have drawn. +By default, stylus buttons 2 and 3 (mouse middle or right buttons) are +mapped to the eraser tool. +
    The eraser comes in three different thicknesses (selected using the thickness toolbar buttons), and can operate in three different modes (Eraser Options submenu of @@ -161,7 +160,9 @@ the Tools menu): All the strokes which are entirely contained within the rectangular region are selected. The selection can be moved within its page by clicking inside the - selection rectangle and dragging the cursor. + selection rectangle and dragging the cursor. If the cursor is dragged + to a different page, the selection will be moved to the topmost layer of + that page.

    The selection can be cut, duplicated, etc. (including to a different page @@ -183,6 +184,19 @@ the Tools menu): space, or change the page height to an appropriate value (using the "Paper Size" entry in the Journal menu).

    +

    + If you drag the cursor below the bottom of the page (so that the + entire block being moved has become invisible), the items will be moved + to the next page (topmost layer); however, any items that were already + present on the next page are left unchanged. Similarly, dragging the + cursor above the top of the page so that the entire block being moved + becomes invisible results in the items being moved to the previous page. +

    +

    Hand tool

    +

    + This tool lets you browse the journal; dragging the cursor scrolls the + view. +

    Undo and redo

    All operations performed on the currently open journal (drawing, erasing, @@ -191,6 +205,36 @@ the Tools menu): the corresponding entries in the Edit menu.
    There is no limit to the depth of the undo/redo stack. It is cleared only when you quit the application or open a new journal. +

    + +

    Button mappings

    +

    + Stylus buttons 2 and 3 (mouse middle and right buttons) can be mapped + to different tools using the appropriate submenus in the Options menu + (whereas the Tools menu and the toolbar buttons affect the primary tool + assigned to button 1). The default mapping is the eraser. +

    +

    Advanced configuration: + if a secondary button is mapped to a drawing tool (pen, eraser, or + highlighter), the default is to "dynamically link" its settings to those + of the primary tool, which means that each drawing tool has common + settings (color, thickness, etc.) for all buttons. + Dynamic linking of brush settings + can be disabled by selecting the "Copy of current brush" option in the + "Button mapping" submenu. The settings of the tool for button 2 or 3 are + copied from the button 1 settings at the time when you select the option, + and afterwards they are no longer updated when the button 1 settings are + modified, thus making it possible to assign pens of different colors or + thicknesses to different buttons. +

    +

    + Another option that affects button mappings is the "Eraser tip" option. + If this option is turned on and the XInput extensions are enabled, then + the eraser tip of your tablet's stylus will automatically be remapped to + the eraser tool. This behavior, which overrides all other button mappings, + is most useful if your X server is configured to map the eraser tip of + your tablet's stylus to button 1. +


    Pages, layers, and backgrounds

    @@ -390,10 +434,10 @@ PDF files (for example pdfmerge).

    Printing

    Xournal uses the gnome-print architecture for printing. While it is very -powerful, some aspects of the API leave to be desired, -and future versions of Xournal will probably also include a native -Postscript/PDF printing feature. +powerful, some aspects of the API leave to be desired. As of version 0.3, +Xournal also includes a native PDF printing feature.

    +

    Printing via gnome-print

    The "Printer" tab of the print dialog box lets you select a printer (either one of the printers installed on your system, or the generic @@ -411,18 +455,58 @@ attempts to pre-fill the output file name (for the Postscript driver this often fails due to gnome-print API issues).

    -The "Print to PDF" entry of the File menu directly generates a PDF file -using the PDF virtual printer, without bringing up the dialog box -(the page size is the default one for that printer, usually A4). Note that the PDF virtual printer produces files that are very large -and far from optimal, so in the current state of things it is better -to generate a Postscript file and use a converter such as ps2pdf. -

    -

    +and far from optimal, so its use is not recommended. The gnome-print architecture also forces page backgrounds (bitmaps and PDF) to be generated as uncompressed bitmaps, which leads to gigantic -print job files. An alternative to gnome-print will be -implemented in a future release of Xournal. +print job files. A better alternative is to export a PDF file, and +print the PDF file. +

    +

    Exporting to PDF

    +

    +Starting with version 0.3, Xournal provides its own PDF rendering +engine. The "Export to PDF" command (in the File menu) produces a +PDF-1.4 file from the currently loaded document. The resulting PDF +file is much more compact than those produced via gnome-print, and +its pages have the same size as in Xournal. Highlighter strokes +are rendered in a partially transparent manner (note however that +applications such as xpdf and ghostview do not always handle +PDF transparency properly). +

    +

    +Xournal also includes a PDF file parser compatible with PDF format +version 1.4; the compression features of PDF 1.5 (Acrobat 6) are +not supported. When exporting a document that uses PDF +backgrounds, Xournal attempts to preserve most of the structure of +the original PDF file (however, auxiliary data such as thumbnails, hyperlinks, +and annotations are lost). If Xournal is unable to parse the PDF +file, the backgrounds are converted to (compressed) bitmaps and a new +PDF file is generated from scratch. +

    +
    + +

    Configuration

    +

    +Starting with version 0.3.2, Xournal's configuration settings can be +saved to a file (~user/.xournal/config) by using the "Save +Preferences" command in the Options menu. The settings saved in the +configuration file include in particular: +

    +The configuration file also gives access to additional customization +options which cannot be set from the user interface, such as: the +display resolution in pixels per inch, the step increment in zoom factors, +the tool selected at startup, the thickness of the various drawing tools, +the default directory for opening and saving files, the visibility and +position of the menu and toolbars, ... +


    Author information, license, bug-reports

    @@ -433,23 +517,88 @@ Xournal is written by Denis Auroux

    Feel free to contact me with bug reports and suggestions; I apologize in advance if I am unable to respond properly to some requests. -List of known bugs/misfeatures (no need to report them again): -

    +

    If you find a sequence of operations which crashes Xournal in a reproducible manner, please send detailed instructions on how to reproduce the crash. A core file may also be helpful.

    +

    +Bug reports and suggestions can also be submitted on Xournal's +SourceForge page. +


    Version history

    +Version 0.3.3 (January 31, 2007): +

    +

    +

    +Version 0.3.2 (November 25, 2006): +

    +

    +Version 0.3.1 (August 3, 2006): +

    +

    +

    +Version 0.3 (July 23, 2006): +

    +

    +

    +Version 0.2.2 (June 5, 2006): +

    +

    +

    +Version 0.2.1 (June 3, 2006): +

    +

    +

    Version 0.2 (January 29, 2006):

    @@ -471,23 +620,138 @@ Version 0.1.1 (January 5, 2006):

    Version 0.1 (January 2, 2006): initial release.

    +
    + +

    The file format

    +

    Overall structure

    +

    +Xournal stores its data in gzipped XML-like files. The gzipped data consists +of a succession of XML tags describing the document. By convention, the +first few lines contain a header in the following format: +

    +<?xml version="1.0" standalone="no"?>
    +<title>Xournal document - see http://math.mit.edu/~auroux/software/xournal/</title>
    +<xournal version="..."/>
    +
    +The <title> and <xournal> tags may only appear within the file +header (not within the pages of the document). The version attribute of +the <xournal> tag indicates which version of Xournal was used to +create the document; it is currently ignored, but may be used in a later +release if the file format changes in an incompatible manner. +

    -Features yet to be implemented: +The rest of the file is a sequence of pages, specified by a +<page> tag, whose attributes width and height specify the +physical size of the page in points (1/72 in). The width and height +parameters are floating point values. The format of a page is therefore: +

    +<page width="..." height="...">
    +... page contents ...
    +</page>
    +
    +

    +

    Page background

    +

    +The first entry within a page describes the page background. +It consists of a <background> tag followed by several mandatory +XML attributes. The first attribute is always type, which +can take three possible values: "solid" for a solid background, "pixmap" +for a bitmap background, and "pdf" if the background is a page of a PDF +document. The rest of the attributes depends on the type of background.

    -
    - -

    The file format

    +

    Layers and strokes

    +

    +After the line specifying the background, the remainder of a <page> +section is occupied by one or more layer sections +

    <layer> ... </layer>
    +describing the various strokes within a layer. Every page must +contain at least one layer; a layer may be empty. The successive layers +are listed in their stacking order, from bottom to top. +

    -XOJ files are gzipped XML-like files. A more precise documentation of -the file format will be added at a later date. Meanwhile, most of the -format should be easy to figure out by trial-and-error or by looking -at the source; if some details are unclear, feel free to ask. +A layer consist of a collection of items, listed in the order in which +they should be drawn +(from bottom-most to top-most). +As of the current version, the only legal contents within a layer are +strokes. The format of a stroke is: +

    <stroke tool="..." color="..." width="...">
    +... list of coordinates ...
    +</stroke>
    +
    +The tool attribute can take the values "pen", "highlighter", or +"eraser" depending on the tool used to create the stroke (pen, highlighter, +or whiteout eraser); a value of "highlighter" indicates that the stroke +should be painted in a partially transparent manner (Xournal uses an alpha +coefficient of 0.5). +The color attribute can take one of the standard values "black", +"blue", "red", "green", "gray", "lightblue", "lightgreen", "magenta", +"orange", "yellow", "white", or can specify a hexadecimal RGBA value in +the format "#rrggbbaa". The width attribute is a floating-point +number and specifies the width of the stroke in points (1/72 in). +

    +

    +The list of coordinates is simply a succession of floating-point values, +separated by whitespace. +The number of given values must be even; consecutive pairs of values give +the x and y coordinates of each point along the stroke. +These values are expressed in points (1/72 in). The coordinates (0,0) +represent the top-left corner of the page: hence x is measured from the left +of the page, and y is measured from the top of the page. +

    +

    +Every stroke must contain at least two points (four floating point values). +Moreover, two consecutive points on the stroke should be spaced no more +than 5 units apart or so; longer line segments should be subdivided as +appropriate (otherwise the eraser tool will not interact properly with the +stroke). The default precision used by Xournal for the x,y coordinates is +0.01 unit (1/7200 in).


    @@ -632,6 +896,20 @@ installation instructions specific to your model: for example, the use USB instead; the BottomX and BottomY values correspond to the physical resolution of the tablet and will vary from one model to another.

    +

    +For historical reasons, most X servers do not allow the input device +designated as the "core pointer" in the X server's configuration file +to be used as an XInput extension device. Thus, your tablet input devices +should not be designated as the core pointer device. Instead, they +should be configured with the "SendCoreEvents" option, which enables them +to simultaneously generate XInput extension events and move the cursor on +the screen. Since high-resolution coordinates cannot be obtained for the +core pointer device, it is disabled in Xournal by default. +Starting with version 0.3.3, +it is possible to have core events processed alongside with extension +events (uncheck "Discard Core Events" in the Options menu); however, in +some rare cases this may lead to a loss of resolution on all devices. +

    The cursor doesn't appear in the right place...

    If the mouse pointer does not follow accurately the position of the stylus, @@ -671,19 +949,20 @@ Do not add a list of xsetwacom commands to your startup files).

    Strokes aren't drawn under the cursor...

    -This is due to misfeatures in the linuxwacom driver. Typically, this -will happen in all of the following cases: +This is due to misfeatures in the linuxwacom driver in versions prior +to 0.7.6. Typically, this will happen in all of the following cases:

    -Future versions of the driver may fix these issues. Meanwhile, you can +Most of these issues should have been fixed in version 0.7.6 of the +wacom driver. Otherwise, you can either disable XInput support in Xournal (in the Options menu), at a price of a severe loss of resolution (and the eraser tip won't be detected anymore), or apply this patch -to the wacom driver. +to version 0.7.0 of the wacom driver.

    I have also had a report that one of the workarounds used by Xournal to @@ -699,8 +978,8 @@ contact me.

    On-the-fly display rotation

    You need an X server that supports the RANDR extension, and a -patched version of the linuxwacom -driver to support on-the-fly rotation. +recent (0.7.6 or later) or patched +version of the linuxwacom driver to support on-the-fly rotation.

    To set the tablet in portrait mode: @@ -724,12 +1003,14 @@ Exit Xournal and restart it after the display has been rotated. This patch fixes rotation and calibration issues with the linuxwacom driver version 0.7.0.

    +This patch has been included in version 0.7.6 of the linuxwacom driver, +and should now be obsolete.