Xournal++ is a handwriting notetaking software with PDF annotation support. Written in C++ with GTK3, supporting Linux (e.g. Ubuntu, Debian, Arch, SUSE), macOS and Windows 10. Supports pen input from devices such as Wacom Tablets.

Overview

Xournal++

Build Status Join the chat at https://gitter.im/xournalpp/xournalpp

Shout out - Translators Needed!

Recently we revisited the settings dialog to improve the feeling and usability. While doing that we also added better descriptions, for which we require new translations.

Partial translations, which need to be updated:

  • Czech
  • Polish
  • Chinese

Full translations for all languages not mentioned previously except:

  • English
  • German
  • Italian

If you would like to help us improve the localization of Xournal++, take a look at our Crowdin project. If you are interested in translating a new language, contact us on Gitter or create a new issue and we will unlock the language on Crowdin.

Thanks in advance!

Features

Xournal++ is a hand note taking software written in C++ with the target of flexibility, functionality and speed. Stroke recognizer and other parts are based on Xournal Code, which you can find at sourceforge

Xournal++ features:

  • Support for pen pressure, e.g. Wacom Tablet
  • Support for annotating PDFs
  • Fill shape functionality
  • PDF Export (with and without paper style)
  • PNG Export (with and without transparent background)
  • Allows mapping different tools / colors etc. to stylus buttons / mouse buttons
  • Sidebar with Page Previews with advanced page sorting, PDF Bookmarks and Layers (can be individually hidden, editing layer can be selected)
  • Enhanced support for image insertion
  • Eraser with multiple configurations
  • Significantly reduced memory usage and code to detect memory leaks compared to Xournal
  • LaTeX support (requires a working LaTeX installation)
  • bug reporting, auto-save, and auto backup tools
  • Customizable toolbar with multiple configurations, e.g. to optimize toolbar for portrait / landscape
  • Page Template definitions
  • Shape drawing (line, arrow, circle, rect, splines)
  • Shape resizing and rotation
  • Rotation snapping every 15 degrees
  • Rect snapping to grid
  • Audio recording and playback alongside with handwritten notes
  • Multi Language Support like English, German (Deutsch), Italian (Italiano)...
  • Plugins using Lua scripting

Mobile & web app

Since mid 2020, there is a Flutter-written mobile app for Android, Chrome OS and iOS (coming soon) as well as a web app available. Even though it is not perfectly stable nor are all of Xournal++'s features fully supported yet, you may check it out and open your Xournal++ notebooks on your mobile devices. You can get in touch in it's separate repository on GitLab.

Get it on Google Play

The web app is available at xournal.online.

Why is the iOS app not published yet?

According to the Apple App Store guidelines, it is prohibited to publish unstable or beta apps. Hence we wait until Xournal++ Mobile works more stable and offers more complete feature compatibility to Xournal++.

Linux

Windows 10

macOS High Sierra

Xournal++ Mobile

Toolbar / Page Background / Layer

Multiple page background, easy selectable on the toolbar

Layer sidebar and advance Layer selection.

Multiple predefined and fully customizable Toolbar.

User Manual and FAQ

For general usage, consult the User Manual. Answers to some common questions can be found in the FAQ.

Experimental Features:

Sometimes a feature is added that might not be rock solid, or the developers aren't sure it is useful. Try these out and give us some feedback.

Here are a few under development that you can play with now.

  • Assign a mouse button or stylus button to bring up a toolbox of toolbars right under the cursor. You can also modify what is in the toolbox through the usual View->Toolbars->Customize although it won't appear unless you've assigned a button in preferences: mouse or stylus ( or selected a toolbar configuration that uses it).

    • This is an experimental feature because not everything you can put in the toolbox behaves. So be aware.

  • Keep your eyes out for other experimental features in preferences as seen here:

    DrawingTools: When drawing a box, circle etc simulate ctrl or shift modifiers by the initial direction you move the mouse.

    Action on Tool Tap: Allow a brief tap on the screen to bring up the floating toolbox and/or select an object. May work with pen and highlighter only.

Installing

The official releases of Xournal++ can be found on the Releases page. We provide binaries for Debian (Buster), Ubuntu (16.04), MacOS (10.13 and newer), and Windows. For other Linux distributions (or older/newer ones), we also provide an AppImage that is binary compatible with any distribution released around or after Ubuntu 16.04. For installing Xournal++ Mobile on handheld devices, please check out Xournal++ Mobile's instructions

A note for Ubuntu/Debian users: The official binaries that we provide are only compatible with the specific version of Debian or Ubuntu indicated by the file name. For example, if you are on Ubuntu 20.04, the binary whose name contains Ubuntu-bionic is only compatible with Ubuntu 18.04. If your system is not one of the specific Debian or Ubuntu versions that are supported by the official binaries, we recommend you use either the PPA (Ubuntu only), the Flatpak, or the AppImage.

There is also an unstable, automated nightly release that includes the very latest features and bug fixes.

With the help of the community, Xournal++ is also available on official repositories of some popular Linux distros and platforms.

Debian

There are Stable releases and unstable automated nightly releases for Debian.

Ubuntu and derivatives

Stable PPA

The latest stable version is available via the following unofficial PPA:

sudo add-apt-repository ppa:apandada1/xournalpp-stable
sudo apt update
sudo apt install xournalpp

Unstable PPA

An unstable, nightly release is available for Ubuntu-based distributions via the following PPA:

sudo add-apt-repository ppa:andreasbutti/xournalpp-master
sudo apt update
sudo apt install xournalpp

This PPA is provided by the Xournal++ team. While it has the latest features and bug fixes, it has also not been tested thoroughly and may break periodically (we try our best not to break things, though).

Fedora

The released version of xournalpp is available in the main repository via Software application or the following command:

sudo dnf install xournalpp

or

pkcon install xournalpp

The bleeding edge packages synced to xournalpp git master on a daily basis are available from COPR luya/xournalpp. Copr build status

openSUSE

On openSUSE Tumbleweed, the released version of Xournal++ is available from the main repository:

sudo zypper in xournalpp

For openSUSE Leap 15.0 and earlier, use the install link from X11:Utilities.

For all versions of openSUSE, bleeding edge packages synced to xournalpp git master on a weekly basis are available from home:badshah400:Staging.

Arch Linux

The latest stable release is available in the [community] repository.

To build the latest state of the master branch yourself, use this AUR package.

Solus

The latest stable release is available in the main repository:

sudo eopkg it xournalpp

Flatpak

The Xournal++ team officially supports a FlatHub release, which can be installed with

flatpak install flathub com.github.xournalpp.xournalpp

Note that for Xournal++ to work properly, you must have at least one GTK theme and one icon theme installed on Flatpak. To enable LaTeX support, you will also need to install the TeX Live extension:

flatpak install flathub org.freedesktop.Sdk.Extension.texlive

The Flatpak manifest can be found at the Xournal++ Flatpak packaging repository, and all Flatpak-related packaging issues should be reported there.

Android and Chrome OS

Android is supported by Xournal++ Mobile. It can be downloaded either on the Tags page or from Google Play.

iOS

Unfortunately, the iOS app is not published yet in the Apple App Store. See here to learn, why. Anyway, in the Building section you can learn how to build an early preview.

Windows

Official Windows releases are provided on the Releases page.

Notes:

  • Currently, only WinTab drivers are supported. This is due to a limitation with the underlying library that we use, GTK.
  • There is a GTK bug that prevents stylus input from working correctly. Please start Xournal++, touch with the stylus, quit Xournal++ and start again. Then stylus input will be working, until you restart Windows. See #659.

Mac OS X

Mac OS X releases are provided on the Releases page.

Notes:

  • There have been compatibility problems with Mac OS X Catalina regarding both file permissions and stylus support (#1772 and #1757). Unfortunately, we don't have the resources to adequately support Catalina at this time. Help would be appreciated!
  • Xournal++ will be delivered with a patched GTK. Else pressure sensitivity will not work on Mac #569.

Building

Linux Build

Mac Build

Windows Build

Android Build

iOS Build

File format

The file format _.xopp is an XML which is .gz compressed. PDFs are not embedded into the file, so if the PDF is deleted, the background is lost. _.xopp is basically the same file format as _.xoj, which is used by Xournal. Therefore Xournal++ is able to read _.xoj files, and can also export to _.xoj. As soon as notes are exported to a _.xoj-file, all Xournal++ specific extensions, like additional background types, are lost.

*.xopp can theoretically be read by Xournal, as long as you do not use any new feature. Xournal does not open files that contain new attributes or unknown values, so Xournal++ will add the extension .xopp to all saved files to indicate the potential presence of Xournal++-only features.

All new files will be saved as _.xopp. If an _.xoj file that was created by Xournal is opened, the Save-As dialog will be displayed on save. If the *.xoj file was created by Xournal++, the file will be overwritten on save and the file extension will not change.

We are currently introducing a new file format that can efficiently store attached PDF files and other attachments internally. We will still allow for attachments that are linked to external files. Please refer to #937 for further details.

Development

For developing new features, create an issue or comment on an existing issue to let others know what you are doing. For development create a fork, and use the master as base. Create a Pull request for each fix. Do not create big pull requests, as long as you don't break anything features also can be merged, even if they are not 100% finished.

See GitHub:xournalpp for current development. You can also join our Gitter channel via the badge on top.

Also take a look at our Coding Conventions

Code documentation

The code documentation is generated using Doxygen.

In order to generate the documentation yourself, first install Doxygen and graphviz, i.e.

sudo apt install doxygen
sudo apt install graphviz

on Debian or Ubuntu. Finally, type in doxygen in the root directory of the repository. The documentation can be found in doc/html and doc/latex. Conveniently display the documentation with python3 -m http.server 8000 and visit the shown URL to view the documentation.

Issues
  • Merge in new action icons

    Merge in new action icons

    This is #1735 rebased on master, with the accompanying code changes. Huge thanks to @Fatih20 for the icon redesign, who contributed the new icons.

    TODO: ~* [ ] Adjust icon license metadata to indicate they're under GPLv2~

    • [x] Add option to set whether monochrome icons or colored icons are preferred
    • [x] Check if the rebase selected the correct icons
    • [x] Address feedback from comments below
    • [ ] squash and rebase on current master
    do not merge 
    opened by Technius 179
  • [WIP]: PDF Text Selection Util

    [WIP]: PDF Text Selection Util

    Following @Technius's suggestion, I decided to open a draft pull request.

    As the title says, this pull request is to add interaction with the PDF text, like copying text, highlighting text, etc.

    This PR is going to close this issue: #1745

    Preview:

    https://user-images.githubusercontent.com/51843252/128634365-ddc3e7fd-255a-4ea9-933e-4a1c1257afaf.mp4

    As the video shows, I added the following features

    1. select text and draw text area in real time
    2. pop-up menu after the selection is done, supporting respectively
      • Copy text directly
      • Highlighting the selection area
      • Add underline to the selection area
      • Adding strikethrough to the selection area
    3. After selecting the area, you can select another color if you change your mind

    And the last three are new elements added directly, with a direct call to strokeHandler, and each line is a separate object. Because it seems to me that these three markup tools are designed to help people using computers to mark up quickly and should be on the same level as other manual markup tools. Of course this can be discussed and replaced by a better solution.

    But this does not have all the features yet.

    I'm now thinking of adding the ability to select text in a region, which could be useful when we select part of the text from a table. Final result should like be

    https://user-images.githubusercontent.com/51843252/129444907-e2e2516a-7404-4caa-8ea8-4d3e6255e42f.mp4

    Thanks to the help of @Technius, I could clean the previous selection, but I find there is another problem is how to determine when the re-rendering work is done. To get the demo above, I let the thread sleep for 20 ms, the method is

    void PDFTextSelectControl::reselect() {
        // invoke view->rerenderRect();
        this->rerenderBox(this->selectTextRecs);
        // invoke view->repaintPage();
        this->repaintPage();
    
        // FIXME It should happen after rerender job
        std::chrono::milliseconds dur(20);
        std::this_thread::sleep_for(dur);
    
        this->paint(this->cr, this->zoom, this->zoom);
        this->selectPdfText();
    }
    

    but I know this is not allowed, so I hope you can give some hints. Thanks in advance!

    opened by aeghn 96
  • Action Icons Redesign

    Action Icons Redesign

    I'm a user of this cool app on Linux and upon using it I found that the icons here are very unpleasant. I'm no professional by any means but I have spent the last few months contributing icons for other open source projects.

    This is certainly not my final proposal, I wanted to listen to feedback first before continuing the redesign of all the action icon. There are some icon that haven't been redesigned because of that.

    Feel free to ask me why I made certain icon the way they are if you'd like to gain some insight.

    enhancement 
    opened by Fatih20 85
  • Zooming via pinch to zoom causes graphical glitches

    Zooming via pinch to zoom causes graphical glitches

    When zooming via mulittouch pinch to zoom gestures, the page "glitches" it zooms correctly but it also shows the fullscreen view every few moments, which makes zooming really hard. Also zooming in general causes the view to scroll quite often so even if I'm using the handle in the menu I end up on the last page even if I started in the middle or somewhere.

    bug priority::high Zoom difficulty::medium 
    opened by taaem 83
  • LaTeX Dialog: Use GtkSourceView and autoresize preview

    LaTeX Dialog: Use GtkSourceView and autoresize preview

    The LaTeX dialog now has a command output tab and can use a GtkSourceView if compiled in

    Summary

    • If either of thegtksourceview-3 or gtksourceview-4 libraries are available at build time, a GtkSourceView is used to provide syntax highlighting for LaTeX a user has entered.
      • Introduces settings (line numbers, syntax highlight, etc.) for this.
        • Settings are added to Settings Dialog/LaTeX
    • ~~Allows multi-line LaTeX entry.~~ Changes OK shortcut to Ctrl+Enter.
    • Wraps the GtkTextView and the TeX preview in a GtkPaned and resizes the preview, as appropriate.
      • This is very useful for writing large paragraphs of formatted text.
      • This is very useful for writing long pieces of formatted text
    • Adds a "Command Output" tab to the LaTeX dialog.
    • Changes the TeX preview background to black when the default TeX color is light (this is, and was, before this PR, based on the color of the text tool).
      • Light TeX is now visible in the TeX preview.

    To-do

    • [x] Move dependency changes to a separate commit.
    • [x] Update Linux installation readme (new (optional) dependency).
    • [x] Update Debian/RPM package configuration.
    • [x] Move SourceView theme setting to LatexSettings.h/.cpp from global settings.
    • [x] Separate section in Linux build README for CentOS (and RHEL?) with libgtksourceview3-devel dependency.
    • [x] Change gtksourceview4 dependency for OpenSUSE to gtksourceview4-devel

    Need review

    • [x] 46dda4e507e74ee499f2708797b3e94478dc21e4 needs verification
      • [x] changes to deb
      • [x] and rpm dependencies
    • [x] af342f17346e252817f17c3021d6d228234b7d26 may have errors
      • [x] Check Fedoragtksourceview4-devel dependency
      • [x] Check CentOS gtksourceview3-devel dependency.
      • [x] Check RHEL gtksourceview3-devel dependency (should be the same as CentOS)
      • [x] Check Arch gtksourceview4 dependency
      • [x] Check Ubuntu/Debian libgtksourceview-4-dev dependency
      • [x] Check Raspberry Pi OS libgtksourceview-4-dev dependency
      • [x] Check openSUSE gtksourceview dependency
      • [x] Check Solus libgtksourceview-devel dependency

    I think the above changes are correct (and, as such, marked as resolved), but a tripple-check might be worth while!

    When built with GtkSourceView, this should fix #2542.

    merge proposed 
    opened by personalizedrefrigerator 82
  • "BAD status: invalid tag name, attributes, or nesting"

    First, thanks so much for Xournal++! What a neat project, and so needed in the open source world.

    Affects versions :

    • OS: Ubuntu 20.04
    • (Linux only) Desktop environment: - X11
    • Which version of libgtk do you use: 3.24.20
    • Version of Xournal++: 1.1.0 / 9d1277de
    • Installation method: .deb from main site

    Describe the bug When I export a big 1257 page PDF, with annotations and annotations from Okular, I get "BAD status: invalid tag name, attributes, or nesting" and a 4029 byte result file (should be ~3.3 MB).

    To Reproduce Steps to reproduce the behavior:

    1. File->Export as PDF

    Unfortunately, it's a copyrighted work, so I cannot ethically send it on. Here's the resulting file though

    Expected behavior A complete exported PDF.

    Screenshots of Problem

    Additional context I've tried to reproduce it with two other PDFs, and by paring down my huge PDF. Cannot reproduce. Hopefully the error message is enough.

    bug 
    opened by bitwombat 66
  • A complete overhaul of the cmake-scripts and the project structure

    A complete overhaul of the cmake-scripts and the project structure

    The current cmake scrips have a huge problem, they grew since the beginning of the project and both old cmake 2.x configurations as cmake 3.x configurations were used.

    A lot of good things have accumulated over time. However, some old / deprecated or wrong configurations have remained, which now cause problems. For example, all sources are added manually to the targets instead of collecting them in a target and linking them against it. This affects utilities that work on the targets. Explicitly clang-tidy currently processes files twice, so fixes are applied 2 times. Also, the CMake scripts contain hardcoded configurations which should be defined by the caller of CMake.

    This PR addresses this and tidies up everything.

    Another thing is, that there are 2 main targets: util and xournalpp-core but both require files from each other. All files in util, depending on xournalpp-core were moved to the corresponding target. Also, those targets are splitted strictly.

    To make this separation more clear to others, the filesystem structure has been reordered too. It looks like:

    xournalpp
        ┝ ...
        ┝ src
            ┝ CMakeLists.txt
            ┝ [some CMake generator files]
            ┝ core
                ┝ CMakeLists.txt 
                ┝ <core-modules>
            ┝ util
                ┝ CMakeLists.txt
                ┝ include
                    ┖ util
                        ┖ <public-includes>
                ┝ [sources]
        ┝ CMakeLists.txt
    
    refactoring 
    opened by Febbe 64
  • Text from old xopp file does not show up in new XOPP v1.1.0

    Text from old xopp file does not show up in new XOPP v1.1.0

    Affects versions :

    • OS: Windows 10
    • libgtk 3.24.29
    • Version of Xournal++: 1.10 9d1277de
    • Official release

    Describe the bug I save a file with Xounalpp in Jan 2021. I installed the latest version of xopp. Now, the text looks like little boxes.

    To Reproduce Steps to reproduce the behavior:

    1. Save with old version of Xounalpp
    2. Install new version of Xournalpp
    3. Open the old file

    Expected behavior There text should render properly, and be editable.

    Screenshots of Problem Side by side, an old pdf export, and the current file

    Additional context Add any other information or context about the problem here.

    bug 
    opened by axsvl77 61
  • Building Xournal++ and GTK+ to fix Windows 10 N-Trig Input Issue

    Building Xournal++ and GTK+ to fix Windows 10 N-Trig Input Issue

    Hey All!

    Question My N-trig Windows 10 laptop cannot detect input devices due to a GTK+ bug which has an unmerged solution. I see there are documents on how to build Xournal++ with GTK+, but I am having a lot more trouble figuring out how to build GTK+ and I see no forums or ways to contact GTK+ for help. Could anyone help me build a copy of Xournal++ with the unmerged GTK+ changes so that I can use Xournal++ on my Windows 10 laptop?

    Background I am using Xournal++ 1.0.18 with Windows 10 on a Sony Vaio Flip. The Sony Vaio uses N-trig Active pen technology.

    The issue I am having is that my pen is not recognized as an input device, and does not work properly. I can use the eraser button on my pen, and it will show the eraser icon. However, once I have erased something and unclicked the button, I can no longer erase anything more unless I restart the program. This is with the new input system. Without the new input system my eraser button is not recognized at all. In both cases the pen or touchscreen does not show up as an input device. I dual boot with Arch Linux, and the inputs are all detected and work through Arch.

    Many examples of this same issue with Windows 10 and N-trig input devices can be seen in issue #1751. Issue #1751 references an earlier issue #1346 which goes into more detail and links it to a GTK+ bug #262.

    The conclusion from these two issues seems to be that to fix the Windows 10 N-trig input issue, we should wait for GTK+ to fix its bug. The GTK+ bug #262 has been inactive for a very long time, but recently Bacci has started working on it.

    I have already attempted the process, but got confused on how to build GTK+. Recently I saw that another user, Trescott from GTK+, had successfully built the change with Xournal++ 1.0.18, and pointed out some issues that Baccai had fixed. This makes me think that if I were to build Xournal++ with it now, my input issues would be resolved.

    Perhaps I should post this on the GTK+ merge request as well, but I need to make an account for it first.

    Thanks for the help!

    os::windows 
    opened by Phabbits 61
  • Customizable color palette using .gpl config file

    Customizable color palette using .gpl config file

    Currently this is a draft to eventually resolve #1812 . If you're really curious about this you can already try it out. The main functionality is working. In particular on first start of xournalpp a palette.gpl file is created in your respective .config folder. This you can either replace or adjust to your desired palette.

    However, note:

    • the parsing might still cause errors
    • there might still be memory leaks
    • if you're palette has less colors than you have colorToolItems in your Toolbar xournalpp will show a warning and cycle through the palette as often as required
    • the behaviour in combination with the customize toolbar dialog is not yet consistent
    enhancement difficulty::medium 
    opened by idotobi 59
  • Release Helper Scripts

    Release Helper Scripts

    We will switch to git-flow with modified branches. Active development will continue on master and releases will be published to the branch releases. You can read up on git-flow here: https://nvie.com/posts/a-successful-git-branching-model/

    This PR introduces various helper scripts for preparing and publishing new releases.

    They enforce git-flow and should be somewhat resilient to mistakes. I wrote them in bash, only using what should be commonly available on Linux-based OSs. This way no prerequisites are required (Please tell me otherwise if I missed anything).

    None of the scripts push anything to the remote repository, so feel free to try them locally and tell me if anything does not work as expected.

    I also fixed the versioning scheme of the releases from our unstable PPA to be in accordance with the rules from Debian.

    What the scripts do:

    • validate_version.sh Validates a provided version to be higher than the current version in CMakeLists.txt The comparison follows the same procedure as is applied in package-managers
    • bump_version.sh Updates the version strings in all relevant files and adds the necessary version information to the changelogs. The summary of changes must be supplied manually after this script was executed. Changes to the version strings or changelogs are not committed.
    • prepare_release.sh Creates a release branch and bumps the version within this release branch. Makes sure that no release branch for the supplied version exists or that the version was already released. Ensures that it is executed from master.
    • prepare_hotfix.sh Creates a hotfix branch from a prior release and bumps the version within this hotfix branch. Makes sure that no hotfix branch for the supplied version exists or that the hotfix was already released. Ensures that it is executed from master.
    • publish_release.sh Merges the branch with releases and creates the appropriate tag for the release. Makes sure that it is executed from a release-/hotfix-branch and that the release was not previously published. Also starts the merge into master if requested by the user.

    Should you miss a script, please tell me about it.

    buildsystem 
    opened by LittleHuba 56
  • An overview of all Journals?

    An overview of all Journals?

    Is your feature request related to a problem? Please describe. Is there some kinda viewer/overview to see all the notes with previews, similar to other apps like squid notes? For now the app is more like a text editor rather than a journal.

    Additional context I am thinking of maybe attempting to write a simple viewer, with some organization capabilities. Us there an easy way to create thumbnails of .xopp files?

    enhancement 
    opened by Fornball 2
  • [Feature request] Spell checking typed text.

    [Feature request] Spell checking typed text.

    Is your feature request related to a problem? Please describe. Occasionally I'd like to have spell checking for typed out text or text areas in PDFs and other formats. Hunspell is what I use on my Arch Linux install. Currently I don't see a way to enable spell checking.

    Describe the solution you'd like Integration of spell checking with a toggle so you don't always have to see lines under misspelled or new/unidentified words. Spell checking should be available to text boxes, typed text, and any document formats like PDFs that have typed text.

    enhancement 
    opened by ShapeShifter499 1
  • One click copy of version information

    One click copy of version information

    Is your feature request related to a problem? Please describe. When reporting bugs copying the version information is somewhat tedious.

    Describe the solution you'd like Implement a Copy version button which copies the verion information to the clipboard.

    Describe alternatives you've considered Or maybe make the version text markable and copyable.

    enhancement 
    opened by funnym0nk3y 1
  • Produces invalid svg

    Produces invalid svg

    (Please complete the following information, and then delete this line)

    Affects versions :

    • OS: Win10 21H2
    • libgtk: 3.24.34
    • Version of Xournal++: 0d471f2e-dirty
    • Installation method: exe

    Describe the bug Exporting via export -> svg does not produce a valid svg file. The file cannot be opened with edge or inkscape (which even crashes).

    The file and the produced svg are attached below. armijo rule.zip

    bug 
    opened by funnym0nk3y 1
  • Automate signing a document

    Automate signing a document

    Hi there, I'm using the version 0.4.8.2016 on Linux Mint. I need to sign every page in several files, but always in the same spot. Is there a way to automate this? I see there is no command interface

    enhancement priority::low PDF 
    opened by los2pollos 3
  • Precise image resize

    Precise image resize

    Is your feature request related to a problem? Please describe. Xournal++ makes it easy to add an image to a PDF and then resize it with the mouse. However, if you want to resize it to an exact size, or you just want to know the resulting size after you resized with the mouse, you can't.

    Describe the solution you'd like There should be a GUI element that tells you the size of the image as you resize it (in the status bar?). There should also be the possibility to manually define the final size you want (something like right-click ==> properties).

    Describe alternatives you've considered n/a

    Additional context n/a

    enhancement 
    opened by Cris70 0
Releases(nightly)
  • nightly(Jul 18, 2021)

    Automated nightly build for Xournal++ 1.1.1+dev

    Changes:

    • bea2dc46bf8c4eff33c561a3f6d4d369579bf968 [skip ci] Update translation template
    • fc17f8555790689dc2e4d2f8ea5bd5a2c2216ca0 Use Cairo RAII wrappers in gui/PageView & jobs/RenderJob
    • 05f1c174dcb034e3e98826362582b6a9edc09a18 Create RAII wrappers for C libraries
    • faa0888c482d131171ed72ca98d66037cef71e6a remove macos-launcher and simplify build-app.sh
    • b196130f72ecaa36d2ffd64ba865e6f44f5fb673 [skip ci] Update translation template
    • bc2b30d128582e9afcb6cb558cf4e007bb6ae6a0 Fix low quality rendering of vector graphics embedded in PDF files
    • 0d471f2e709bb5db23943056f0745e953fcdf00b Update LinuxBuild.md [ #4094 ]
    • f3ded0aa9ab51ece06b4eb1f1c4ada294014fff7 copy gtk-sourceview shared data
    • e7c350856a7a07bb25e7d97de1802ec7a7d99f10 [skip ci] Update translation template
    • c27296706d6da92154d250442097ce6bc12083c7 Move initialisation from header to source file for AudioRecorder,
    See More
    • 0ed5ed1f2da7a17a7a6371c95e57acbffeffba05 Apply include-what-you-use to reduce (re)build time
    • 998cf58ecf4d62dcdf87c4ac9d846bc5f61c3b22 Fix filesystem includes
    • 56e5b29cc79c873aabce1aa3e11a67af557d9189 Fix includes in view/
    • a85a93589e4225e30d10ae01129f7833f4e551ea [skip ci] Update translation template
    • 9f4cb9b48e0887271710a5fb8272ebdf9ccfabb6 stop app-image invalid properties complaints
    • 0f6bb4d1d2bcf14294f6a3980fb263842b176490 compile with GtkSourceView in case it was found
    • 8138dea9eec671cfa49990f705a1d19fe4104588 Disable GTKSourceView when creating installers
    • 62dd554b63d125e417b249f571365dfcea1bfa7c Make gtksourceview-4 optional
    • aea29d135190f33948c37045c0bcd3486c201317 Add gtksourceview-4 data to mac bundle
    • 8f3db47cd0af29cc409f58cac245db360295bb8e Add gtksourceview4 to windows CI dependencies
    • 3671c489a1c19e0433ae2e894a4cb68420bd02b5 TexDialog: Preview: Use dark background for light TeX
    • f79a1b3a9f064b172d9d8880b66f7a6c50429f2a Latex Editor: Add setting for word wrap
    • 76f9af7a55e0f3fa77579d067717b2fa0ebdb1eb SourceView Settings for Line numbers, auto-indent, syntax highlight
    • bf166698014aef75b1bd32353193fd9d99285319 LaTeX Dialog: Add editor font setting
    • 3c3f9a5b4db0b855a62d64501c305457f0ec1f7a LatexSettings: UI for changing editor theme
    • b814a35544aad9cd6ceb403a639214882ba6bca9 LatexDialog: Use GtkSourceView as editor
    • b0cc4f10e8859b6411638bb5c2ba98203e5a978d Update LinuxBuild.md with GtkSourceView4 dependencies
    • e2a3472f7e4366020718e9584a161813fa99f5f6 GtkSourceView: Update Debian and rpm/Fedora dependencies
    • 3f42bc95f252d92e137c29f64a7e157cae04470d CMake: Add gtksourceview4 as a dependency
    • 9f5746f5b652f4fd6f1e0c08e82c4c4907343f2c TexDialog: Add tex command output tab
    • 2725ca69c06749de93c7c542797874cda55c961b LaTeX Dialog: Autoresize preview and textbox
    • 107e98b8eaf2ec31d1a67011e43c9cdadb2083a3 [skip ci] Update translation template
    • cc4e3e8312ed9a1dd8fe808b03a31ff75a8cd0d9 Added several plugin loading paths [ #1155 ]
    • 3cf497209cd2ca72b06d48aa54047584e5e6d345 Merge branch 'release-1.1'
    • 397816ee0fcd7c53c03d0c69523694e20f370bc5 Update Mac build instructions to include GtkSourceView
    • 41d4bf037ea4e3d0d7d5e625686e14a932ce1fde Update open-jpeg and poppler version in MacOS build script
    • a87ec172dc101ae0add96008098d5ebdaa60ff9b [skip ci] Update translation template
    • be443d79c37d6591d4d427c30695d4f2bd69c08a Remove unecessary rerenderings in VerticalToolHandler
    • 50ebd6c7ee008cd0e88119a0cadd722d2de852b1 Remove useless forward declaration of Redrawable in undo classes
    • 5624816864aa4cdceea295cf54b5937373607aff Make view::LayerView infer the rerendered rectangle from context
    • 247719b433e813047434340c785a608c489208ac Clearer names in PageHandler/PageListener
    • 8f8102c493f3fda8ee8a7f923a620592bdf618b1 Prevent fractional translation of mask surface
    • 855347268c2f1553dbea4730190839130d4bba5e [skip ci] Update translation template
    • e26c4f70981d1735d9829715e5d64ae2b1f4fde7 Add copyright info
    • d2c2316303c629d70bfd6996c5ee3cf383025428 Add icon theme combo
    • 790b005a8d9fdfb77738f30782b0303bca6d9b58 Add Lucide Light Icons
    • 9b985dc48d83195446c6d3d4f0d25f74f96c86fe Add Lucide Dark Icons
    • 78f5f1840c477f94d747abc9a6f49e8ed7996fd4 [skip ci] Update translation template
    • 998a5fea38fb50bd1acba701e18310e151a927c1 View refactor: Unify BackgroundView creation in BackgroundView::createForPage
    • 2cf27297995278ba957e4ab5a51af11373123a53 View refactor: BackgroundView for pdf backgrounds
    • d22d605021ef99d6a3e2279513dd0d171626ae34 windows: fix installer crash
    • 9ccfea39075af85afe8b5deed37d96029525328d ci: update Windows VM image to windows-2019
    • 962fd4be4f40061462a75404447c5c469e56153e Fix instability in test ErasableStroke.testIntersectWithPaddedBox
    • bd6d5c2362700c7cbc875e1ccc99cf5c00e733f9 New Crowdin updates
    • 498e6c1cf36191ace998b21bed203807e529ef23 [skip ci] Update translation template
    • a6c58f8b250ba0975c49137c4ef91fe411f7785e fixup: clang-format
    • d9311ad3f11facf0c107461ea587f54cce4d05f7 Fix gcc-bug
    • 08749096ea06317d980906c9f93776eb91b1acf1 Fixed Undefined Behaviour in ColorToolItem.cpp:142
    • 0c2fd14ed5547b04346a758cf2f14533a29c7226 Fixed X11 Hand Recognition not working
    • 579da7c2d5a744ac5f2127b3a963d3fe858f0f16 page template: correct German word order
    • 2d04f0a313ce63d08cd53e9964b3091166358fda [skip ci] Update translation template
    • 77595e28c45f9f991e04dea2736580a639ea6430 Add parameter controlling the line spacing for Ruled and Lined backgrounds
    • 3040e84c0b08bf5d09260ab12472a0c3c7f06ab5 Add margin width parameter for LinedBackground.
    • 8d07503f021697b58ee7633b59a1d41b4585eab0 View refactor: BackgroundView for all generated backgrounds
    • 12f1a18f053c625865d00a199309a20afe84f228 Add Color::isLight()
    • 29a4c8d2ceb550073a9493e43c0b2392f9281da1 [skip ci] Update translation template
    • 8626c04f707f3f85f832ba0e36966f4dbe3a8b3e Move named type Layer::ElementIndex to Element::Index
    • b5aa32b481b95b1c8b2be715d4507220901c61c4 Fix sign-conversion warnings relative to layer indices
    • 1da368947d90095aa15e9f88d8de2fd37912d61b Const-qualify functions in Element and derived classes
    • bd4222e58b891fe14f679832307e9a14b01bcbf6 [skip ci] Update translation template
    • 517f6aedd164b720468034cb393960c4f5afd1f8 Add Select All option to edit menu (#4024)
    • 3f58e076c33dde639b73ead3f1e6b6377e983fce [skip ci] Update translation template
    • d9424c6bb686fa1f7fd0f693a99573e729203c52 Make PdfCache only create XojPdfPage if it's not already in the cache
    • 4a6dc416f52162ba288c5b12743b4eedede204d9 Fix XojPdfDocument copy constructor
    • 4883c49819dc6df176c9ecd3751230e7c46cfdec Unfocus text boxes after the selected page changes (#4027)
    • 12fe586d662a0ba144feefcf7490057197b44fcf [skip ci] Update translation template
    • 5210482a39edaf6e19641ae8be6de1648cde9ca9 Add double-ended arrow tool (#3946)
    • 7da9a156b5e9bf9ee5167559966f7cde9c497321 Fix image loading failure on some images
    • 5224714559fa16738f5b57d6987ce67be11ae0f7 Fix HiDPI bug when using stroke tools
    • dc5188abc34604430d8af37f65847e36e1e4eb10 [skip ci] Update translation template
    • c35498bd7279c1169e6aa64b691827e95208332a Merge branch 'release-1.1'
    • 363bbbca72a16eab35152e6282c0f836ba3a0060 Fix TextEditor render delay regression
    • eed169fbba4defe215b2821c4e10686a4f3fc04e Move view/background to view/oldbackground, BackgroundConfig to model, and new backgrounds classes to view/background
    • bfb4a39b620a306654a4b6a028299082275dd3c0 [skip ci] Update translation template
    • 95f4cf4c68f6f48f6e66ad91be0af1b44e5c146c Split XojPdfPage::render into render and renderForPrinting
    • 2033070ddac93eccd0ef93a8fba474940fb06eb4 View refactor: add xoj::view::SelectionView.
    • 910fb079c0f9b58ea6ee754dc664da019686bdd5 Added a workaround for a reference issue.
    • f757458bfe19192769320e49672cddae972ef45b [skip ci] Update translation template
    • b09e84d05ae724abb47bb83f7016b6a2511055d8 Fixes the ordering of recent files
    • f66a5e67fd91bc12d37937b304c8ea9c6b66115b Small StrokeHandler refactor:
    • c1ba87de7377fc71903a8895cc56487586552f3c Unify zoom handling in PageView::paintPageSync:
    • 0707265c4fbd278afeadcc82c53e2fd1c7bdaf2c [skip ci] Update translation template
    • 377b20b424c649d4ef4395cda2da5617383bf12f fixup merge conflict
    • f5907903442e89883f1f84dc95b69c4feba7cb6f Added transition header
    • 11520936305bb223f7abdd9ad3319d9c9f325f78 Stop using the GtkWidget.destroy vfunc
    • 0652a6fa4a3ec9901f6347f37e9093a22a78e9f4 remove the usage of GdkScreen
    • 7aba02a42deae60fb8c3502374926db15a282c48 Do not access GdkEvent structs directly
    • f9e5f3c3f1e8f0ceba93da0de9e12eb24ea4c0d4 remove later: disable deprecated gtk3 API
    • 8e8b7134768e652ebe347bf72e2641acd8855563 [skip ci] Update translation template
    • 67442575e3e2aa4f368663e47663ae5a0a20fbb1 Fix crash when button pressed while vertical space tool active
    • 951a41ba0f4331ddf4fdfa7d2640d85e7aae23e0 Bugfix: Removed double deletion on GList free
    • 8ee1d5279056ec4abc957a50660a1ca6c2540250 [skip ci] Update translation template
    • 9c4598243cc373dcb02e5f3fce7895c297b39eeb Reworked PageRange to use C++17 STL.
    • 81294ff99771088d2d5d5fc7de6d5ab54501c679 [skip ci] Update translation template
    • f2cdd55bdb925dbb6be2234c50d102976cea7ce2 GListView - A sane Wrapper to iterate over GLists
    • 576d73275801bb9ebfda62fe665100026812b96b MacOS: fix linker flags when using MacPorts
    • 9eced869905aec172b3857eb2708250d2d593fdd [skip ci] Update translation template
    • c33288ef1e90dbe115386559231846398b95f78c Code cleanup:
    • 32b669dcad325000f8967273a4f7226d4ccd3a55 remove x and y from GtkXournal
    • 76f4b409c99bd2bce174a3b0b03be547f44fc149 [skip ci] Update translation template
    • 91c713aaa94903422dc616f3f7ebf5666db42c19 Add documentation on new standard eraser
    • cea3ecc4d27ce026046c44cc0abda6deccb7f660 Add test units for new eraser
    • a042c4990cf75afb97caf339f48cdac5c277a308 Complete rewrite of standard eraser
    • 4120e7f07bcce82cbd1f9b60e791c9ad04d433b5 Fix changed signedness warnings in DeleteUndoAction
    • 5b21b679e75c889dcc3270a613120958353c125e Minor changes to model/Stroke:
    • f013f92cdf56bc4eeb91541b1a7f4a7d8ffdacbc Add Point::isInside and Point::relativeLineTo
    • e33ff1f52a20b818a6f0e32056a3c7c61bcb9eca Add TinyVector (fixed stack capacity) and SmallVector (small stack capacity, replaced by large heap capacity if need be) container classes + test unit
    • 1cb1cc22246365d1dd19bb662539a64403fa80b6 Basic templates for manipulating (union of) intervals + test unit
    • 8a403f9cbfc6bd29c0b0ef9d09e81b210b87b243 3921 show the filepath in the titlebar along with the filename (#3934)
    • 6f151c7704a53efde1714d9a0d98eca7d597c783 Fix display of strokes while erasing
    • 90049c3749284ca70be704d2ddb2ef5718ada831 [skip ci] Update translation template
    • 44cafa6ed4d62ee2654f1d4313ac8782f4d485ab Add class xoj::view::BackgroundView and ImageBackgroundView
    • cfd857c8a5ca3ed64fb3de26561ba5e612056394 Ensure mask in RenderJob is big enough
    • c8325dc317ab7b46425ea617145f06d801e5d4ab Remove DocumentView::applyColor
    • aa5410231db3a16eb05d5abb5d09f900015fc5c0 Add class xoj::view::LayerView
    • 29b02f06bc6c5dfdcd21acf66140f83a66f078b7 View refactor: StrokeView
    • 79725072d657724d9c550159ca325100ebcad12d New classes ImageView and TexImageView in xoj::view namespace
    • 8139db2e478c54b91e5304e1981e5f6998208f8f View refactor: TextView
    • 71de800bc578255dac012994ed742ccc834d5939 Move AudioElement::OPACITY_NO_AUDIO to xoj::view::OPACITY_NO_AUDIO
    • 479ef019d568bd60f1874a5ff9c06976b13df780 Add xoj::view namespace and abstract class xoj::view::ElementView
    • 0091b48fe691b95d186f60b67ca762b0f5624063 Select correct tool when selecting default tool
    • 561a362ad137f2581225e17e5d853e003e5ed32d Fix image loading regression (#3952)
    • dc11f929a88417dc13f6c8be97af40a3208decca [skip ci] Update translation template
    • 8adb7d17d47bfc1b1ce6213423de6f84f8f5d55d MacOS: create pixbuf loader cache when testing
    • 72be311a7fb5bfa38cd0b1b74e3c830b02420a2f Load Image elements using GDK pixbuf
    • 22b56a6cedea9ea2060f4344a60cc473214fc621 Fix attached image loading
    • 40358e19693c56af14ab98a9b6c9286d7eb4096f Code cleanup in Image header
    • 6106431832fbb56fe31a03c4cb9816619e211155 Refactor zip attachment loading
    • ba49c021fc3fb360b5b051233a9e7420de8a45dd [skip ci] Update translation template
    • e8bf4bb905eb8b34756818f3c67aed914b9d70db Initialize locales for commandline exports
    • 7390b61aac74c754eab5725b18be67e6d0167b0f make toolbar and menubar not react to dragging
    • 176e95ac05e30fbf5a5971af6ce2750cf90fe50f Fix TextEditor repaint bounds
    • 103bfd1dca3d68baf4edca66ba0d6167b088d2eb Initialize locales for commandline exports
    • 428fba2680049abcfa98d77942c62e851e1c2a7e Update poppler version on MacOS
    • dcad9363071a067481bd525fc4c05cf3117ad31c update windows build readme
    • 42b61cab7254d8ef239bff1181b7e953a8e84c27 replace portaudio and lua build scripts on windows
    • 871afa819d05c2178524fecaf3b42106e17d9cf8 [skip ci] ci: fix create-installers for Debian
    • 034deb55fec17e39bdbef36e956a9865bbe31922 Fix backtrace linker flags
    • 932d46f18954955079a5b81ae613210aa2ae030f Updated spec file (#3892)
    • c513ef1247bc462e842c27c71c7b5afdf0016efd New Crowdin updates (#3871)
    • 0b9324c8c5356645b48ed137429a24e4ca3c4283 ci: Remove cppunit download from mac build
    • 77e0ecf1a4bc7b824dff42123fef1848eae230aa Allow system gtest; add explicit download flag
    • 8e7810428bbe5a699846274471ca9f1b4f1299a7 make toolbar and menubar not react to dragging
    • 65b97fefdd88475d7bfb0b13ac8c600bffe05fc2 Add CONTRIBUTING.md (#3085)
    • 5ddad8d7017f19419f97c5a850bfd2d202cda83b fix "suggest parantheses around && within ||"
    • 14e2186caccbe4ad441133821ea6bac526edd142 Properly handle blocking of devices for setsquare
    • 2ce0166b67bd0473ce589858ec9fa97666f56d02 Update installation instructions for Debian/Ubuntu
    • af1fdac91f74ecbd55a600f838c48b77f8f6dc97 fix launchpad build recipe
    • ca6e49b875fdc2deaa4b45375af547e8f28b04ca New Crowdin updates (#3808)
    • b76eefbfcf501770e1b33132c74afa7415769775 remove unsupported warning for gcin
    • ccad5c5a063a7938b13da75a8d422213a31241d7 move escape handling after for text editor's event handling
    • f840d0112769dd0f68edf71b8481351c99fe7659 make TextEditor pass events to IM first
    • 0cb53052545753019568f991606111e89f358569 make setsquare handle mouse-keyboard combo
    • 45f3059c07708d7db299d7838f172c872e2dca22 [skip ci] Update translation template
    • 79926e213a2d578d8cac5df105024779d87c0d41 Add setsquare documentation
    • f1ec8b9aaf01f3b13449923adda5918c27f3ea59 fix nasty X11 rendering bug using cairo_text_path
    • 14eb8fb40d1f68246c6c227cdb136e0be15065ff Integrate SetsquareInputHandler
    • daec37a83d3a2f498c218f56fb47d1c15cb70f5e Add SetsquareInputHandler class
    • 97d557197a0552fecd61ca6c328443a4555679a0 Add snapping methods for Setsquare
    • da9e83c0eb70e0604e056b7ce92fbf2559b60ad6 Integrate Setsquare in Toolbar
    • fbf2a89dfc032e939078ac2954c4590e9c25ffe0 Add icons
    • a7f571493fc07ba446741f09766b38cd032e005b Integrate Setsquare in Menubar
    • 4829d4d45c1a2ef1714c963fb983a75ee94b60bb Render Setsquare in XournalView
    • 4ae77cc18d4edbccbfd817006265f9f42526a9c9 Integrate SetsquareView in XournalWidget
    • ff71dcc49ca91eaf1b28afe42c51a8107a94eb1f Add SetsquareView class
    • e37537e53a25228dfe37dedf428195b82222ae15 Add Setsquare class
    • f99307f9efe758f336df56ea944f16a9eed7ede0 Improvements to PageView class
    • 9fbb5eb27bad497cedb018eb62cba36ac48366c3 [skip ci] Update translation template
    • 570395890da9090a097b2116437bd12d165608d8 Add layer merging to 'Journal' dropdown menu
    • b80ead8f13bd20360ca2f9cf8ca25ee323713ab4 Create a small context menu for the layer sidebars [ #1256 ]
    • 13f3cd024e8c73a64db28b527c5595ff8ba24c66 Implement merge-down functionality
    • 8e39fcb0ab7af14af782128df1908f40725b39b5 ci: update Windows agents
    • 66e349a6ab9772d18f88e9dad23cf231b58e56b8 ci: portable Windows installation in release build
    • 071f959456be0c1b4ff995e00d0a3e89871a12a6 [skip ci] Update translation template
    • 79f3e585e27fd4e2e5d2bf6a5d02245d915268e2 position highlight plugin
    • 888c92460c1c79c7f97ed9797acb36b1c716300c introduce toggle action for the position highlighter
    • 0a89ed2c4a25af9174b3e524d19a50c71dea5a58 allow position highlight without cursor [ #2093 ]
    • 7c73a50656a7ad21d8a7a421f6f09fa5f95c539a fix position highlight clipping
    • 8d0b44bef3e47ebffc7bd364d1dca9b64d9033b4 Add maim&xclip option to screenshot plugin
    • bd01e8d6b578cf97aace4a2d3f9eef70043b5da1 [skip ci] Update translation template
    • 507014dbae5b8ce02c9dd6fd801037500916750a Fix capitalization
    • 38258a498f9edfc8cea0e842da745dcaa0fa7505 Fix TextEditor repaint bounds
    • 3dca00c7a4f7fa96794a85cd04e6a34944fc3c4b Fix version bump error when making 1.1.1 release (#3814)
    • d0b3cddef75200e037d3d6f1b6e86454d7813c11 Update appdata, desktop files, readme and package descriptions
    • 47060164c392e897a3af2832f40dd511b05b3fa3 [skip ci] Update translation template
    • 7b2e75a0d857550167dcb4927e426737c16e5e46 Merge back Release 1.1.1
    • e409fb6f92a76c19b30b47a8b3f93f431f43d10b Automated version bump to 1.1.2~dev
    • 34c9a34d6983aad5f76acc1eb3058e3cf55039cb [skip ci] Update translation template
    • 863eee47575505ad46642282bf6c44c75df188ff Simplify selection double click check (#3785)
    • b236b18eaf240d8c0e03dc65dfbf0454e5866ff8 Merge Crowdin updates
    • bc5c119fddb7d534a181581a0b4b46413e4f4ad4 Fix PDF linear text selection on improper rectangles
    • d219bf22b325bc4ded0c216b88141a803901ff32 Add API extensions for adding strokes w/ Lua
    • 33105ea0d61690f4b72241954b2d8ebfef3ebb0c [skip ci] Update translation template
    • b25509306992112a0e0fa5167a1ead863452c431 Handle zoom changes in VerticalToolHandler
    • 44d4ed8d9cb874f552e74638b23699eb1d3d661f Potential performance optimization for VerticalToolHandler
    • baefd26e1c2c2e0d2bf29c0329e9c10fbfb964ce Vertical spacing: move elements above line when holding Ctrl
    • 8d9b722afed93bbb48c2b495ca10f5d1c6ac45d0 Minor code cleanup for VerticalToolHandler
    • 27acdbb1d9217f21fb40c33ee52f40ca51d296d9 Fixup ffa681e8ad17ef242c427c0b1f48a18d602ac5bd
    • 9380a601c2bd137c0d6fe809cbc974753d086b48 Code cleanup in Job
    • ebaed95f4784a4a5b6f276e6d3a9c3b339e60f31 Fix clang-tidy modernize-use-override
    • 7f6f107eb454cff870910e3652db067cfd3821ef [skip ci] Update translation template
    • db6743d2f078e4985f76dd0063f7d13d91c44b91 Refactoring
    • bf338a803cb2593153675ab5497dafd98458514a [skip ci] Update translation template
    • a2a7ca981469fa4aef8e4035f5c9cafbc96eb5db Fix inconsistent path usage for audio files
    • ca56eff0bfaad84890a76d6d56d8620cf918d253 [skip ci] Update translation template
    • 3ab68f018a4578e85e8fc2ed8a26384f4b573d2a Refactoring Rectangle
    • 2f04b9198659248d49089142b893dd42e266d76a Enable linking with gperftools
    • ca36097aa91f5646d02e325485b7805d311cee98 [skip ci] Update translation template
    • 0d3d3facc623d7585431b5341aefa1a84897a215 Fix minor typo: Tex to TeX
    • 18e7ddfaddc71c94574ea7ff1d71ccbb09b141ba GladeGui: Properly destroy toplevel widget
    • 4921418cc5954b20ee7d086fd29315f68978143c Update to Gtk blob based on Gtk 3.24.30 and adapt loaders cache location
    • 0b8b8cd2be15c4a80a1a3c99284c3f2fc59b264d [skip ci] Update translation template
    • b5643c2e39b54e165f22e0f53c53e7f7a643424a Reimplement PDF element selection logic
    • 7b9a28f8ad98954146497ad8efe4940955deacc9 PDF toolbox code cleanup
    • 362be3dda9b8a57e488097b2e4bb6c58a34f72cd Clean up PDF floating toolbox memory management
    • e5f878d1f942315c9474b352498fb1fefd5ab715 Revise PDF toolbox buttons
    • c044bfb836859b90e9224a7e4f32a0f507c859bd Clean up PdfElemSelection
    • 366a409a0366adcc29a370b76eb6d35b0a2e1df7 Add PDF text selection tools
    • ffa681e8ad17ef242c427c0b1f48a18d602ac5bd Allow additional stroke cap styles
    • f8bad335690f0ff4608c49d887deef41188b74ca Fix segfault in GroupUndoAction
    • 2bea77ca5c91fb0f2dad2a4f2dec91e382eeedd5 Remove deprecated lines in libsndfile script
    • 41c8fa7c9aa32b50e2dfedf4733b4e5cbc95d536 Update poppler to version 21.01
    • 1aaf9d2a4558413138be1baf4a46dc2c4eda61dc update macos build scripts
    • 21f74e7642ab5044d633ab79acfb89cd7af31fe0 Refactor BackgroundSelectDialogBase::layout
    • 37fc5b8bd13cc7ff7c807b56cd1d2df934ab5149 BackgroundSelectDialogBase: Fix layout logic
    • df683cca21bb05226983b429addd94779cffb9da [skip ci] Update translation template
    • c2d32c4c2ce6a2ca522333f2fec792815032201b AboutDialog.cpp: Format include
    • 4ecca994faedc1cd454e43f7cd327f7609e491f9 Config: Move git info to separate header
    • 5aebe896b69806baf1fb8772a7ad37bb66765327 Update info on location of executable
    • 6f28fd5c7c1194ecc0436828dd27157acc77d676 [skip ci] Update translation template
    • 1a2a84bb1b8baa7d63088d7262af90bc497d8542 replace raw pointer with unique pointer
    • 4f5bfde867808251c8bc6c65b661aacd86281086 refactor exporting to advoid code duplication
    • 7a8fc3efec5388cd8ce9831a2238b919236338fa add plugin exporting to filename derived from xopp
    • 7f3799e2b41afb50565caf60ea3af8e805e722e2 add xopp filename to app.getDocumentStructure()
    • 50530a5c960b4a162e827525c7fc542624b20a38 add export option for pdf, svg, png to plugin API
    • dc4c2afbe07c0be878af86f5b100602dd8b9cb1e Add more page info to getDocumentStructure of plugin API
    • 1a070ffd407616087921cc72a4202dfd1d456fe7 Update xournalpp.spec
    • c39f60d9bb9c60d4d12448ab8256f5117525cfb7 Update xournalpp.spec
    • 9e85135d5d869451c981c6f8e94eed88141b369e Fix #3655: Load doubles using serdes_stream instead of stoul
    • 981a1119392bf875e5937f900a1d90604122d2f9 Merge pull request #3670 from mb720/patch-1

    This list of changes was auto generated.

    Source code(tar.gz)
    Source code(zip)
    xournalpp-1.1.1+dev-nightly.20220628-Debian-bullseye-x86_64.deb(1.88 MB)
    xournalpp-1.1.1+dev-nightly.20220628-Debian-bullseye-x86_64.tar.gz(1.88 MB)
    xournalpp-1.1.1+dev-nightly.20220628-macos.zip(31.63 MB)
    xournalpp-1.1.1+dev-nightly.20220628-Ubuntu-bionic-x86_64.deb(2.01 MB)
    xournalpp-1.1.1+dev-nightly.20220628-Ubuntu-bionic-x86_64.tar.gz(2.01 MB)
    xournalpp-1.1.1+dev-nightly.20220628-Ubuntu-focal-x86_64.deb(2.02 MB)
    xournalpp-1.1.1+dev-nightly.20220628-Ubuntu-focal-x86_64.tar.gz(2.01 MB)
    xournalpp-1.1.1+dev-nightly.20220628-windows-portable.zip(71.33 MB)
    xournalpp-1.1.1+dev-nightly.20220628-windows.zip(65.43 MB)
    xournalpp-1.1.1+dev-nightly.20220628-x86_64.AppImage(31.36 MB)
  • v1.1.1(Feb 13, 2022)

    This is a new minor version of Xournal++ with many bug fixes and improvements from the community.

    See the changelog for a full list of the changes.

    Some notable changes:

    • Change the edge panning behavior when an element is selected, fixing the absurdly fast edge pan speed bug.
    • Fixed several crashing/freezing issues.
    • Fixed several bugs involving stroke input and rendering.
    • Fixed several bugs involving PDF rendering (in application) and export.
    • Windows: fixed several bugs with fonts and the text tool.
    • MacOS: Updated Gtk to make Xournal++ run on Monterey.
    Detailed commit log
    • 4f113e9478a1908f3d1534f7a5b9763f7834d4d9 Release 1.1.1
    • 10c189d39c29176f767d91bbf8fabde72d663a27 Update changelog in preparation for 1.1.1
    • 7258d0bec14c4414eb20032dc295b9d561534be8 Fix issues with release script
    • 773d063251b06570a10e9a681f00ec060fac16a0 Refactor BackgroundSelectDialogBase::layout
    • e4e3ca56c77690d07fe33a579ef40a48ecb710e4 BackgroundSelectDialogBase: Fix layout logic
    • 87ed1c39a74271665e1b0debdcdeaf90242ae377 Fix possible bug in edge pan timer destruction
    • 3b1a2d7939f832328d17646644f5d826514b7d93 Update Authors lists
    • c80e64bd3b84101084f0d13adb5fc5216a11596d Fix deadlock in SidebarPreviewPages
    • 91ebfab120d35636bed554c926eaadeef3be55a9 Remove the .xopp~ backup file after a successful save [ #3399, #1498 ]
    • 9f66a83e0063f3ffd5ba89d8eee7e862de4fbb3c fix indentation in build mac script
    • 524f8a96c03fc9fc2153047bd8b760988d5f4feb Include cppunit for MacOs on Azure Pipelines
    • ba0a547de7d29f6a5bbebaa82fa9907910b80089 Fixup GDK_PIXBUF_MODULE_FILE string replacement
    • 1b03098e3c4944af84a272ce3b49cf2c5993389c Update macos blob and adapt loaders cache location
    • 57654c0105ba058699c7869d485f095940d17e3e fix: Crash on startup with no recent files [ #3734 ]
    • f961b04b42d7c5d0ddbb1e8f0b5785da0e9ffbdf Fix tool activation
    • c1ae6c31268d828c8c827fcedae749099e630c3c Fix wrong version suffix in relevant files
    • db7a16eec03b8c2b2fcb0db3cf193ff336cd99ba Update release helper script to set correct versions for Fedora and MacOS
    • 95c50affabb682b91a8b214a34e21ebf8185ae74 Add version info in MacOS bundle information file
    • be1dab569ef82a50960db2e3988f64d36f783be4 Update version info in Fedora build recipe
    • 01737d1d47b3854c317b821410b84323a4502a63 Fix #3651 - remove pressure value on Highlighter strokes first point
    • 29bee34dfee35d1a532cf90e0d069a6924c7b606 Fix .PDF detected as pdf
    • 2780815e821cd8094f382f6a66e5055afb7e8382 fix sidebar page preview stuck
    • e2a1f97327d94818cdecb19795308f8aed3177eb Set classic locale for PDF export link attributes (#3551)
    • d88fb379473b582f32ee7565434f525413db1da9 Fixing typo (#3518)
    • 0d8d375a1371ba3bdecf02de11e9cb39525ba8ff Update Debian Pipeline to Bullseye (#3547)
    • 2ed7f70db8b1368a2f0023c4781c553b0f0ee555 Switch to FontConfig Backend for Cairo-Pango on Windows (#3534)
    • c07d399b8be2f2c38e95b81f608c566d4ac44ad4 Add null check to device in InputEvent's handler (#3511)
    • f76a2630f89d90801d7f3b3d31b63bc058278d00 Unreliable internationalization on Windows (#3426)
    • 08923a32661cc0bee88c43939d64f666e9d47a9b Change Tool internals, increase static analysis. (#3465)
    • 7bf1c91590cf1d8124323459d195b31441b0b33d Add unit tests for serialization in ToolEnum. (#3462)
    • a81fe84a320bcbdf03d8b1591009cfb81c04156f Add const qualifier in serialization methods.
    • 32a9ec402a6b45ab24bec66ee0cbef83a7dbc1ee Add const version of getter getElements().
    • 9fa58be4c0cfde7882cbd53ec6dc1ae1a11936ce Add shared data of Poppler to Windows installer (#3477)
    • a02baf53ed45f96a4b41506031390d44607c0a29 Disable CI triggers for installer pipeline
    • 15dc736840e3b260c731844ff2a3a5ef7b2b40f9 Create pipeline for releases via comments
    • 07264b02a89dbbad6fa6d26059adbed3cbb1495f Fix ToolType serialization bug. (#3467)
    • c8d690c2d3eb1ebea008f433f6d7b0ba9968424c Switch from GMutex to std::mutex. (#3382)
    • 412fc8e188a3f49a182feb472527278ad260cc7c ensure lgi loads Gtk 3
    • 98808ff8a919b725ba5404574100ffa6da4c85e0 Fix memory leak in ExportDialog. (#3420)
    • ccd9e9f95909b1b352dbc85d7af28b1aea249ce9 Enable pressure sensitivity of single dot strokes (#3344)
    • f3f596bf5564516d324c34f72af9bd4ac248c3de Close dangling file handlers. (#3392)
    • cbc29af9e8a9a38614f08438405dc3a61e653887 Bump development version to 1.1.1~dev
    • cd72446d0eb9845c627e79cc4149b44f0ab724b7 Update tag trigger for release pipeline
    • 71fe1f1680fb104d919385b3e070527a83958123 [skip ci] Update translation template
    • 3742b7d1bb8b4af00a4f611ec70afe000996dd72 Release Helper Scripts (#3299)
    • 3a77573cb62b481074a54a8d5f5a5adb555a7185 New Crowdin updates (#3301)
    • 623d8654bacbc8db264f2cf9a76aead20be26889 Fix some non-English IMEs not working on Windows
    • f59c3c4a400c9117aba719ee0011b952c532aa1d (Minor) Fix format specifiers to match types
    • 466082db423f8a5abeb9bf1f46f2e52cf1a7c5ba Fix typo from 'orignal' to 'original'
    • ab57ddda2489182039b4f267fc194dfe42bdccf8 Remove horizontal and vertical space compensation
    • 9ceed9f0a8b34793ec456bfb813a07a82c0e9fc2 Remove console window flash at program startup on Windows
    • ff4936e90f1d82784d68862033efd418ca6313dc Hide, not disable, contents tab when unavailable
    • 82ade68b356e03f206edab8465e658cd715f3749 More natural zooming via ctrl+scroll and stepping.
    • aaed673b72943d44f3ffce53cb8cf2231640f01f [skip ci] Update translation template
    • d690146d1ebc63d996f080c618255c02176b4519 Fixed #3330: Allow characters after dot in filename (#3333)
    • dad1ef7e93a6a0d337789d54bf93557711ecaac9 [skip ci] Update translation template
    • e6bb8b797fa5ca66c55724bed5017863b7a0f36c Extend input method check for gcin (#3315)
    • bd3ca75fe33ca1b4c02375e85f3976429fd2fc91 Fix inconsistent display of filled highlighter strokes
    • 60ffda1d6c92ec16a1ceae56746139dff82baf5e Fix text placement snapping issue
    • f41f7e3dfdec1659e16d227c2fb75819b061cfff Fixed 'PDF background missing' text showing (#3350)
    • aca20186860d941195efd63cb3cd62068ae37907 Apply svgo to ui/pixmaps/*.svg
    • 4192b838afe62184faec016508e8d47bd6537242 Replace masks by fill-opacity in ui/pixmaps/com.github.xournalpp.xournalpp.svg without altering the appearence
    • 3fe13126e893f88f461cf48cf891f74654b73b63 [skip ci] Update translation template
    • 76199be22c14040991129d70f915b939d48622cd Remove Placeholder ToolbarItem and fix drop index
    • ca1c9da41c86ac72869f8b203352bee2324ac99a Fix off-by-one error in toolbar customization
    • 4f8240210734e36df02d1e129dedbbe2ea30b1c3 [skip ci] Update translation template
    • 7448364209f6399ad22eaa1cbddee496e8148324 Request dark theme from GTK when dark mode is requested in settings
    • fffaa72e432a529cee7d343f0e337f491d98b431 [skip ci] Update translation template
    • c09e9e389a4abc3fb30cd7d2b1c90c084a826102 Add preference settings for edge panning
    • a10353dabeb8578f24376293727c5380f11c3cc5 Update settings.glade with new Glade version
    • 51c98df1193e2bb3d1b9774bbfa6c9a788469556 Change selection panning behavior to use a timer
    • 099b555c4688ad01867168720bc2f725932e1e7a Refactor EditSelection bounding box calculation
    • 31a5164f76f3e3ba38281b3233e2ff52fa38a498 Simplify KeyboardInputHandler logic
    • 18e18ddeb116ab77b596bd772e28006cb998bb20 Fix implicit type conversions in EditSelection
    • e13cfbc3ca74e7f87041cd5b4ec1518f4f01137d Optimize GdkEventGuard
    • c1adc54fad5dbd52971422f5dd90bd4a17675592 New Crowdin updates (#3300)
    • f80f08b7af77ab4413036e42459413e561f4b4f7 Add Xournal++ pronunciation (#3231)
    • 5b4bc64d849f02e13f5493035b6fb3af9cfa11a9 Update stroke recognizer to preserve line endpoints. (#3285)
    • b20500b675349982ef64055cab4f22a2e46d6191 New Crowdin updates (#3244)
    • c420c53c8cbf21819764802511494d869c0651c7 Remove using std::map from header (#3287)
    • b030b67a2accd59e0e8ffa51534394ae0899c7df [skip ci] Update translation template
    • f4102878f7ac7655ff7dde72c8a7dee63764544a Rebuild layer menu after un-/redone rename
    • 77254ce25150981c21e3e283554f3670cf24a6c4 Remove unnecessary (erroneous) renames
    • 0ab81f7fe078ad57d4e2951156e3f935f6d0e599 Remove X11 callback to flush the X11 context, which happens way too often.
    • 1e39b2392c3c5fef43879d07b1943943fec6562e Optimized the calculation of stroke sizes
    • 4b2d2dbdb543236c815cc8fc2e1e53234252ae7f Remove std::unordered_map to reduce caching issues / increase performance
    • 97c20f62c5a5c16ce6dbb21ffd19240f4fe55961 Add Minimal Top toolbar
    • d04020b9646a8878bce82407f6e16dcf5a46dbfc Add text tool, zoom slider and rename
    • ef9983c2591d96f94267acbc2acecf20c937cdc4 Add minimal toolbar
    • 5e454faf2ccdfc737bd1908b80dd793346e8a78c Update Portaudio to version 19.7 on MS Windows
    • 949b20561a1291aae89046016e8b2f450c429f49 Remove outdated flags from Readme
    • 4edec25954b1c610071e273c278ed8cd7ea45ba3 fixup compiler errors hiding behind flags
    • 4abc8dfda2f573e29af7bd81f1e029e021facc58 generateConvert script: Change «, » to \". (#3271)
    • 976cdce384b04f0f8aea130b320b6f84620ac3d5 Add full stroke repaint when using highligher and Fill
    • 58d8534a45680fa353c46a2b0e0a58f1e2033058 Minimize the area repainted at each Stroke::drawSegmentTo
    • 4ae824d96366fa6b20a962ca8afb718f952e8d13 [skip ci] Update translation template
    • 55cbf477e82847f517f3617501b2d939ab44180e Fixed typos in Stabilizer's settings
    • 5abfd934bfd24f3d0fa01e46c0f284bfb8fa521b [skip ci] Update translation template
    • 3b10bb195d918cd280539312af17bd415155f78e Use npos instead of -1
    • a5bc52f93e424073ba63f6424445e5e0b69564a5 Fix simple implicit type conversions
    • b245355419b359f27268cd450e24348f659614c5 [skip ci] Update translation template
    • cb9594d8419b39b3e6ed2be1fe23d327519edb36 Remove using std::* statements in header files
    • 97b7460cee92744f0807116ab489e65279837b15 Avoid deprecated mimetypes tag
    • ce1299e35e4d9340a6b4b8ed8254426b5a3974bd Update appdata screenshots

    This list of changes was auto generated.

    Note to distro maintainers (Feb 14, 2022)
    • We have permanently switched the git tag format for releases from X.Y.Z to vX.Y.Z. Apologies for the inconvenience.
    • -lbacktrace may need to be added to the linker flags for xournalpp-thumbnailer. See #3817.
    Source code(tar.gz)
    Source code(zip)
    xournalpp-1.1.1-Debian-bullseye-x86_64.deb(1.61 MB)
    xournalpp-1.1.1-Debian-bullseye-x86_64.tar.gz(1.61 MB)
    xournalpp-1.1.1-macos.zip(36.12 MB)
    xournalpp-1.1.1-Ubuntu-bionic-x86_64.deb(1.74 MB)
    xournalpp-1.1.1-Ubuntu-bionic-x86_64.tar.gz(1.74 MB)
    xournalpp-1.1.1-Ubuntu-focal-x86_64.deb(1.75 MB)
    xournalpp-1.1.1-Ubuntu-focal-x86_64.tar.gz(1.75 MB)
    xournalpp-1.1.1-windows.zip(68.37 MB)
    xournalpp-1.1.1-x86_64.AppImage(30.13 MB)
  • 1.1.0-hotfix.1(Jul 22, 2021)

  • 1.1.0(Jul 18, 2021)

    This is a new major version of Xournal++ with many new features, improvements, and bug fixes thanks to over one year's worth of contributions from the community.

    See the full changelog for more information. In particular, please check to see if you are affected by the breaking changes.

    Windows Users: Please use the follow-up release which includes the updated version of GTK+ 3.24.30.


    Known serious issues:

    • Moving selected objects may cause rapid scrolling (#2889).
    • MacOS
      • Catalina and newer may experience issues related to permissions (#1757).
      • BigSur (and to lesser degree, Catalina) may suffer from serious lag (#2302)
      • Audio recording may not work.
    • Windows
      • There may be problems with input handling ( #3176, #3124, #2894, #2628, #1976, #3205). This will mostly be resolved when GTK+ is updated to version 3.24.30. ~We plan to make a follow-up release then. Alternatively, you can update your gtk/gdk libraries manually following this advice.~ Please use the follow-up release which includes the updated version of GTK+ 3.24.30.
      • On some Gaomon tablets, Xournal++ crashes immediately due to some gtk/gdk bug (#3117). This may also be fixed in GTK+ 3.24.30, so you may follow the advice above. Please use the follow-up release which includes the updated version of GTK+ 3.24.30.
      • Localizations to other languages than English only work when Xournal++ is executed from the Start menu or from the bin folder in which the executable is located (#3215).
    • On some Linux distributions, Xournal++ crashes when the image-missing icon is not present in the icon theme. The Breeze theme was lacking of this icon in earlier versions(#2248, #2311). Installing that icon manually or installing adwaita-icon-theme-full solves this problem.
    • Dark mode icons and light mode icons are switched when using an older GTK version. This happens in particular for Ubuntu 18.04 and for the AppImage (#3190).
    • Text spacing slightly changes on export to PDF when using a Pango version prior to 1.48.5. (#2182, #1390)

    Note: ~we are currently experiencing some issues with our build infrastructure. Please be patient while we fix these issues and upload the binaries.~ The binaries are now available to download.

    Windows Users: Please use the follow-up release which includes the updated version of GTK+ 3.24.30.

    Source code(tar.gz)
    Source code(zip)
    xournalpp-1.1.0-Debian-buster-x86_64.deb(1.70 MB)
    xournalpp-1.1.0-Debian-buster-x86_64.tar.gz(1.69 MB)
    xournalpp-1.1.0-macos.zip(35.98 MB)
    xournalpp-1.1.0-Ubuntu-bionic-x86_64.deb(1.71 MB)
    xournalpp-1.1.0-Ubuntu-bionic-x86_64.tar.gz(1.71 MB)
    xournalpp-1.1.0-Ubuntu-focal-x86_64.deb(1.72 MB)
    xournalpp-1.1.0-Ubuntu-focal-x86_64.tar.gz(1.72 MB)
    xournalpp-1.1.0-windows.zip(63.77 MB)
    xournalpp-1.1.0-x86_64.AppImage(30.10 MB)
  • 1.0.20(Dec 17, 2020)

    This is a new minor release of Xournal++ with some bugfixes.

    We recommend to activate the new input system. The old input system has some issues and will be removed in future versions.

    Presumably this is the last release in the 1.0.x series. After this release we plan to take the current 1.1.0+dev version as basis for all future releases.

    The following bugs have been fixed:

    • Fixed a regression with pdf files that could not be overwritten (#2355)
    • Fixed page layout update after inserting or deleting a page, changing the page layout or zooming (#1777, #2346, #2442)
    • Fixed incorrect rendering of pages after changing the page format (#2457)
    • Fixed blocked scrolling after saving a file (#2062)
    • Fixed presentation mode after startup (#2413)
    Source code(tar.gz)
    Source code(zip)
    xournalpp-1.0.20-Debian-buster-x86_64.deb(12.97 MB)
    xournalpp-1.0.20-Debian-buster-x86_64.tar.gz(12.97 MB)
    xournalpp-1.0.20-macos.zip(31.12 MB)
    xournalpp-1.0.20-Ubuntu-bionic-x86_64.deb(10.03 MB)
    xournalpp-1.0.20-Ubuntu-bionic-x86_64.tar.gz(10.03 MB)
    xournalpp-1.0.20-Ubuntu-focal-x86_64.deb(13.14 MB)
    xournalpp-1.0.20-Ubuntu-focal-x86_64.tar.gz(13.14 MB)
    xournalpp-1.0.20-Ubuntu-xenial-x86_64.deb(9.09 MB)
    xournalpp-1.0.20-Ubuntu-xenial-x86_64.tar.gz(9.09 MB)
    xournalpp-1.0.20-windows.zip(31.35 MB)
    xournalpp-1.0.20-x86_64.AppImage(35.78 MB)
  • 1.0.19(Oct 21, 2020)

    This is a new minor release of Xournal++ with many bugfixes thanks to help from our community contributors.

    Debian users: due to some unexpected issues, we were not able to build a stable package for Debian. Please use the Flatpak build or compile the program manually.

    • Changed select object algorithm to be more intuitive
    • Added ability for taps with Select Rectangle and Select Region to act like Select Object (#1980)
    • Improved document loading speed (#2002)
    • Added a --version command to print the Xournal++ version
    • Added a libgtk version display to the About dialog
    • Added a 16kHz sample rate to audio settings and fixed the 91kHz sample rate (#2092)
    • Added file version check for future compatibility (#1991)
    • Changed wording of new page template dialog to be less confusing (#1524)
    • Fixed behavior of "Attach file to the journal" option when choosing "Annotate PDF" (#1725, #2106). This now allows the background PDF and the annotation files to be renamed and moved as long as they 1) share the same file prefix; and 2) share the same relative path.
    • Fixed an issue where clicking the X on the replace file dialog would overwrite the file (#1983)
    • (libcairo >= 1.16 only): Fixed PDF export crashing when the table of contents is empty (#2236).
    • Fixed a bug where the PDF background would not update when loading a new document (#1964)
    • Fixed plugin window causing a crash on Ubuntu 16.04
    • Fixed a bug where the icon would not appear correctly on some desktop environments (#1892)
    • Fixed inconsistent ordering of button keybindings (#1961)
    • Fixed the Enter key not confirming PDF export settings (#1977)
    • Fixed exported PDF title (#2039)
    • Fixed a bug where different page backgrounds can cause PDFs to be exported with the wrong backgrounds (#2119)
    • Fixed a bug where the page number count would not be updated after deleting a page (#2134)
    • Fixed selection object tool not working correctly (#2081) / crashing (#2133) when there are multiple layers
    Source code(tar.gz)
    Source code(zip)
    xournalpp-1.0.19-macos.zip(31.13 MB)
    xournalpp-1.0.19-Ubuntu-bionic-x86_64.deb(10.03 MB)
    xournalpp-1.0.19-Ubuntu-bionic-x86_64.tar.gz(10.03 MB)
    xournalpp-1.0.19-Ubuntu-focal-x86_64.deb(13.32 MB)
    xournalpp-1.0.19-Ubuntu-focal-x86_64.tar.gz(13.33 MB)
    xournalpp-1.0.19-Ubuntu-xenial-x86_64.deb(9.09 MB)
    xournalpp-1.0.19-Ubuntu-xenial-x86_64.tar.gz(9.10 MB)
    xournalpp-1.0.19-windows.zip(32.90 MB)
    xournalpp-1.0.19-x86_64.AppImage(35.78 MB)
  • 1.0.18(Apr 15, 2020)

    This is a new minor release of Xournal++ with many bugfixes.

    We now provide an AppImage build for Linux distros. The AppImage is compatible with distros that have been released after or roughly around the time of Ubuntu 16.04 LTS.

    • Fixed a crash occurring when recent file entries are invalid (#1730, thanks to @iczero)
    • Fixed translations not being built correctly, causing packaging issues (#1596)
    • Fixed background PDF outlines not being saved in exported PDF (only available when compiled with Cairo 1.16 or newer)
    • Fixed a deadlock occurring when a second PDF with an outline is opened (#1582).
    • Fixed the settings file being written to when it is parsed (#1074, thanks to @Guldoman)
    • Fixed dark mode icons not loading properly (#1767, thanks to @badshah400)
    • Added missing dark mode icons (#1765, thanks to @badshah400)
    • Fixed crash in Export As ... on some page range options (#1790)
    • Fixed crash caused by custom colors in toolbar being "too close" (#1659)
    • Windows: Fixed the LaTeX tool always failing to find kpsewhich (#1738). Note that to make this work properly, a console window will now flash briefly before Xournal++ starts.

    Known serious issues:

    • AppImage: Choosing Plugin > Plugin Manager causes a crash.
    Source code(tar.gz)
    Source code(zip)
    xournalpp-1.0.18-Debian-buster-x86_64.deb(12.88 MB)
    xournalpp-1.0.18-Debian-buster-x86_64.tar.gz(12.88 MB)
    xournalpp-1.0.18-macos.zip(31.12 MB)
    xournalpp-1.0.18-Ubuntu-xenial-x86_64.deb(8.96 MB)
    xournalpp-1.0.18-Ubuntu-xenial-x86_64.tar.gz(8.97 MB)
    xournalpp-1.0.18-windows.zip(31.10 MB)
    xournalpp-1.0.18-x86_64.AppImage(34.59 MB)
  • 1.0.17(Feb 3, 2020)

    This is a new minor release of Xournal++.

    Note: Some changes have been made to the compilation instructions (particularly for generating packages). Please see readme/LinuxBuild.md.

    • Fixed arrow tip scaling: now scales with thickness instead of length (#967, thanks to @redweasel)
    • Changed coordinate draw direction (thanks to @redweasel)
    • Fixed audio playback failures not showing error messages to the user (#1573)
    • Fixed text tool bold shortcut not working when capslock is enabled (#1583, thanks to @matepak)
    • Fixed sidebar preview context menu "Move Page Up" and "Move Page Down" buttons not being disabled on the first and last page, respectively (#1637)
    • Fixed Enter keypress on the "Goto Page" (Ctrl-G) dialog not changing the page (#975, thanks to @MrMallIronmaker)
    • Fixed missing Xournal++ icon errors on most of the dialog windows (#1667)
    • (Windows) Fixed missing libssl/libcrypto errors in the official installation (#1660).
    Source code(tar.gz)
    Source code(zip)
    xournalpp-1.0.17-Debian-buster-x86_64.deb(12.84 MB)
    xournalpp-1.0.17-Debian-buster-x86_64.tar.gz(12.84 MB)
    xournalpp-1.0.17-macos.zip(31.12 MB)
    xournalpp-1.0.17-Ubuntu-xenial-x86_64.deb(8.96 MB)
    xournalpp-1.0.17-Ubuntu-xenial-x86_64.tar.gz(8.95 MB)
    xournalpp-1.0.17-windows.zip(31.07 MB)
  • 1.0.16(Nov 11, 2019)

    This is a new minor release of Xournal++.

    Important notice: From this release onward, the 1.0.x series will be in maintenance mode and will only receive bugfixes. For new features (but potentially breaking changes), use the master branch.

    Windows users: the installer provided below may not work correctly (see #1600). We are currently looking into a fix.

    • Fixed currently editing textboxes not exporting to PDF.
    • Fixed line tool breaking when snap-to-grid is disabled.
    Source code(tar.gz)
    Source code(zip)
    xournalpp-1.0.16-Debian-buster-x86_64.deb(12.82 MB)
    xournalpp-1.0.16-Debian-buster-x86_64.tar.gz(12.83 MB)
    xournalpp-1.0.16-macos.zip(31.12 MB)
    xournalpp-1.0.16-Ubuntu-xenial-x86_64.deb(8.95 MB)
    xournalpp-1.0.16-Ubuntu-xenial-x86_64.tar.gz(8.95 MB)
    xournalpp-1.0.16-windows.zip(29.65 MB)
  • 1.0.15(Oct 15, 2019)

    This is a new minor release of Xournal++ that fixes a serious bug in version 1.0.14.

    Attention: Please see the 1.0.14 patch notes before installing this version.

    Known serious bugs: The line tool with grid snap disabled does not render correctly (#1580).

    • Fixed an issue where copying and pasting strokes would crash the program.
    Source code(tar.gz)
    Source code(zip)
    xournalpp-1.0.15-Debian-buster-x86_64.deb(12.82 MB)
    xournalpp-1.0.15-Debian-buster-x86_64.tar.gz(12.83 MB)
    xournalpp-1.0.15-macos.zip(31.12 MB)
    xournalpp-1.0.15-Ubuntu-xenial-x86_64.deb(8.95 MB)
    xournalpp-1.0.15-Ubuntu-xenial-x86_64.tar.gz(8.95 MB)
    xournalpp-1.0.15-windows.zip(30.85 MB)
  • 1.0.14(Oct 12, 2019)

    This is a new minor release of Xournal++ that includes many bugfixes as well as some quality-of-life enhancements and new experimental features.

    Attention: users who installed with make install will need to follow special instructions to update. See the "Breaking change" section of CHANGELOG.md.

    Known serious bugs: Pasting strokes will cause a crash. A new minor release will fix this bug shortly.

    The summary of changes is listed below. For the full changelog, see CHANGELOG.md. For a list of all issues and PRs related to 1.0.14, see the 1.0.14 milestone.

    • Text field bugfixes
    • Latex tool enhancements
    • Image tool bugfixes
    • Misc quality-of-life enhancements
    • New experimental floating toolbox
    • Improved input handling, bugfixes
    • Updated preferences window
    • Fixed some crashing issues
    • Refactoring and other non-user visible changes
    • Other misc features and bugfixes
    Source code(tar.gz)
    Source code(zip)
    xournalpp-1.0.14-macos.zip(31.12 MB)
    xournalpp-1.0.14-Ubuntu-xenial-x86_64.deb(8.95 MB)
    xournalpp-1.0.14-windows-setup.exe(31.25 MB)
  • 1.0.12(May 26, 2019)

    This is a new minor release of Xournal++ and includes many bugfixes, as well as a few new features. Summary:

    • Added new experimental input system that should fix a lot of issues related to input handling (can be enabled from Preferences > Input System).
    • Added experimental stroke filter (can be enabled in Preferences > Drawing Area) to allow selections using drawing tool
    • Added ability to double click on selected objects (e.g. text fields and LaTeX) to begin editing them (only available with the new input system enabled)
    • Fixed some issues with selections
    • Fixed some issues involving autosaving
    • Improved LaTeX editor experience, as well as bug fixes
    • Fixed text editor copying and pasting to the wrong clipboard
    • Fixed many zoom issues while in presentation mode
    • Fixed some other miscellaneous issues

    The full change log can be found here.

    Source code(tar.gz)
    Source code(zip)
    Xournal++-1.0.12-mac.zip(37.75 MB)
    xournalpp-setup-1.0.12-win.exe(29.92 MB)
  • 1.0.10(Apr 2, 2019)

  • 1.0.8(Feb 16, 2019)

  • 1.0.7(Jan 19, 2019)

  • 1.0.6-macOS-alpha1(Jan 5, 2019)

  • 1.0.6-macOS-Test(Jan 4, 2019)

    There is now a new script which creates an .app for macOS.

    This is the first build which seems to be working. I'll upload it for testing purpose, this is not a release for all day work.

    • Pressure Sensitivity is not working #569
    • Translation seems to be missing
    • Menubar should be on top #680
    • HighDPI is not really supported #172

    Use only for testing

    Source code(tar.gz)
    Source code(zip)
    Xournal++-test1.zip(36.89 MB)
  • 1.0.5(Dec 30, 2018)

    • New Layer Sidebar
    • Fill support
    • Multiple fixes and improvements

    Windows

    Feedback welcome: None of the main developer is working on Windows. For feedback or bugs create an Issue here on Github. Known Bugs:

    • After each Windows Restart you have to start Xournal++ once, write a stroke with the pen, close Xournal++ and start again. Then pressure sensitivity is available, else not. #659
    • GTK Translation are not loaded, therefore the base menu entries etc. are not translated, like "save". #660

    Developer working on Windows are welcome! Contact us over issues if you would like to help.

    macOS

    Working, but no pressure support because of GTK, see #569 Currently there is no .app available

    Developer working on macOS are welcome! Contact us over issues if you would like to help.

    Source code(tar.gz)
    Source code(zip)
    xournalpp-setup-1.0.5-win.exe(28.07 MB)
  • 1.0.4-win-beta-01(Dec 22, 2018)

  • 1.0.3-win-alpha-02(Dec 17, 2018)

  • 1.0.3-win-alpha-01(Dec 16, 2018)

    This is the first release which is working for Windows. For Ubuntu use the PPA which is automatically built daily.

    This is an alpha build, which may contains errors If you find errors, please create a ticked.

    If you are a developer, working on windows, please contact us, e.g. over a new Issue.

    If you want to install it to the Program Files folder, run the Setup as Administrator (it does not request it automatically at the moment)

    Source code(tar.gz)
    Source code(zip)
    xournalpp-setup-1.0.3-win-alpha-01.exe(50.98 MB)
  • v1.0.0-glib(Feb 9, 2014)

    The first release of Xournalpp. Versions with mathtex support require a latex package (e.g. texlive) installed in your path (these versions contain -mathtex_ in their filename). For the Fedora releases, just copy the /usr directory contained into your /usr directory!

    Source code(tar.gz)
    Source code(zip)
    xournalpp-jessie-mathtex_1.0.0-1_i386.deb(1.22 MB)
    xournalpp-precise-mathtex_1.0.0-1_i386.deb(2.34 MB)
    xournalpp-saucy-mathtex_1.0.0-1_amd64.deb(1.22 MB)
    xournalpp-saucy-mathtex_1.0.0-1_i386.deb(1.23 MB)
    xournalpp-wheezy-mathtex_1.0.0-1_i386.deb(1.26 MB)
    xournalpp-wheezy_1.0.0-1_i386.deb(1.20 MB)
    xournalpp_fc19_i686_mathtex.tar.gz(4.89 MB)
  • v1.0.0(Feb 9, 2014)

  • 20131011-alpha(Oct 11, 2013)

Provide building blocks (software, hardware and algorithms) for implementing SLAM using small sensors

RemoteSLAM The purpose of this repo is to provide the building blocks (software drivers, hardware and algorithms) for implementing SLAM systems using

Autonomous Drones Lab, Tel Aviv University 38 Jan 20, 2022
A library of common data structures and algorithms written in C.

C Algorithms The C programming language includes a very limited standard library in comparison to other modern programming languages. This is a coll

Simon Howard 2.8k Jun 27, 2022
Two priority queue implemenations for R. One written in pure R, the other C

priorityqueue priorityqueue is a package with two priority queue implementations for R: one written in C, and the other written in plain R. Both of th

mikefc 6 Jan 23, 2022
C++ fundamentals and questions for beginners and intermediates. Welcoming developers, content writers, and programming enthusiasts.

Rules To Contribute To This Repo You can write solutions only in C++ for Data Structure and Algorithms (if you dont know C++ you can submit only algor

Sushree Satarupa 196 Jun 20, 2022
Collection of algorithms and data structures in C++ and Java

Collection of algorithms and data structures in C++ and Java

Andrei Navumenka 1.7k Jun 26, 2022
Organic Maps is a better fork of MAPS.ME, an Android & iOS offline maps app for travelers, tourists, hikers, and cyclists based on top of crowd-sourced OpenStreetMap data and curated with love by MAPS.ME founders.

?? Organic Maps is a better fork of MAPS.ME, an Android & iOS offline maps app for travelers, tourists, hikers, and cyclists based on top of crowd-sourced OpenStreetMap data and curated with love by MAPS.ME founders. No ads, no tracking, no data collection, no crapware.

Organic Maps 3.5k Jun 25, 2022
WasmEdge Runtime is a high-performance, extensible, and hardware optimized WebAssembly Virtual Machine for automotive, cloud, AI, and blockchain applications.

WasmEdge Runtime is a high-performance, extensible, and hardware optimized WebAssembly Virtual Machine for automotive, cloud, AI, and blockchain applications.

null 3.4k Jun 27, 2022
Emusicchain is a blockchain built using Cosmos SDK and Tendermint and created with Starport.

emusicchain emusicchain is a blockchain built using Cosmos SDK and Tendermint and created with Starport. Get started starport chain serve serve comma

null 2 May 13, 2022
Several algorithms and data structures implemented in C++ by me (credited to others where necessary).

Algorithms This repository contains my implementations of several algorithms and data structures in C++ (credited to others where necessary). It has i

Petar Veličković 571 Jun 25, 2022
Rufus is a utility that helps format and create bootable USB flash drives.

Rufus is a utility that helps format and create bootable USB flash drives.

Pete Batard 18.6k Jun 26, 2022
Pseudofermion functional renormalization group solver for (frustrated) quantum magnets in two and three spatial dimensions.

SpinParser SpinParser ("Spin Pseudofermion Algorithms for Research on Spin Ensembles via Renormalization") is a software platform to perform pseudofer

Finn Lasse Buessen 19 Apr 22, 2022
Fundamentals of Data structures and algorithms in c++

Data Structures & Algorithms About the repository: Contains theories and programming questions related to fundamentals of data structures and algorith

fifu 38 Jun 13, 2022
CXXGraph is a Header-Only C++ Library for Graph Representation and Algorithms

CXXGraph is a small library, header only, that manages the Graph and it's algorithms in C++. In other words a "Comprehensive C++ Graph Library".

ZigRazor 144 Jun 21, 2022
Official ACM CSS PEC repository for resources and all things Open source

Contributing Guidelines Ahoy there! Welcome to the PEC-ACM Open Source Repository. We request you to read the whole guidelines before making any pull

PEC CSS 74 Jun 12, 2022
Header-only C++ library for robotics, control, and path planning algorithms.

Header-only C++ library for robotics, control, and path planning algorithms.

null 335 Jun 22, 2022
c++ library including few algorithms and datastructures

c++ library including few algorithms and datastructures

null 2 Dec 25, 2021
A simple single header C/C++ Library for AABB Collision detection and resolution.

A simple single header C/C++ Library for AABB Collision detection and resolution

Siddharth Roy 8 Nov 14, 2021
My attempt at implementing the fast voxel traversal algorithm by Amanatides and Woo using OpenGL

Attempt at implementing the fast voxel traversal algorithm Works on both Linux and Windows. Recommended software: Linux: Visual Studio Code / Windows:

Niklas Mäckle 2 Sep 24, 2021
Quick sort is a highly efficient sorting algorithm and is based on partitioning of array of data into smaller arrays.

Quick sort is a highly efficient sorting algorithm and is based on partitioning of array of data into smaller arrays. A large array is partitioned into two arrays one of which holds values smaller than the specified value, say pivot, based on which the partition is made and another array holds values greater than the pivot value.

Lakshan Sandanayaka 2 Sep 21, 2021