Skip to content

Commit 4e3beff

Browse files
committed
WIP add info on file format
1 parent 7df6f93 commit 4e3beff

File tree

2 files changed

+50
-0
lines changed

2 files changed

+50
-0
lines changed

docs/guide/file-format.md

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# File Format
2+
3+
This page outlines the main file formats used by Xournal++. The primary file
4+
format is `.xopp`, with some plans to switch to more advanced file formats in
5+
the near future.
6+
7+
## xopp
8+
9+
The `.xopp` file format consists of a GZIP-compressed XML file. To inspect the
10+
XML contents, run a decompression command such as `gzip -d my_file.xopp` or
11+
`zcat my_file.xopp`. Structurally, an `.xopp` file is like an extended version
12+
of the `.xoj` file format used by the [Xournal program][xournal]; we briefly
13+
explain our extensions and changes in this section.
14+
15+
(TODO: add text explaining the differences)
16+
17+
## xopz
18+
19+
!!! warning "Experimental Feature"
20+
21+
This is an experimental feature that is only available in unstable
22+
development branches and is subject to change.
23+
24+
The `.xopz` file format is the next generation file format to be used by
25+
Xournal++. A `.xopz` file is a zip file containing an "annotation" XML file that
26+
stores the main journal data, along with other resources such as PDF files,
27+
images, and audio. The XML file is the same as the one used in an `.xopp` file.
28+
This new file format is being developed to overcome limitations and shortcomings
29+
in the `.xopp` file format, including excessive file sizes and lack of support
30+
for more powerful features.
31+
32+
The contents of the zip file are as follows:
33+
34+
* `contents.xml`: the main annotation data stored in XML form; this is the same
35+
format used in `.xopp`.
36+
* `META-INF/version`: FIXME: legacy code (not sure why this exists)
37+
* `background.pdf`: the background PDF used, if it exists.
38+
* `thumbnail.jpg`: a thumbnail of the document used for preview purposes.
39+
* `images/`: a folder containing images inserted into the document.
40+
* `latex/`: a folder containing rendered LaTeX images
41+
42+
## xoj support in Xournal++
43+
44+
Xournal++ supports limited export to the `.xoj` format supported by Xournal.
45+
However, there _will_ be limitations because the feature set of Xournal++ is
46+
much larger than that of Xournal.
47+
48+
[xournal]: http://xournal.sourceforge.net/manual.html

mkdocs.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ nav:
2323
- Notable plugins: guide/plugins/notable.md
2424
- File locations: guide/file-locations.md
2525
- Tips: guide/tips.md
26+
- File Format: guide/file-format.md
2627
- Community:
2728
- Getting help & helping out: community/help.md
2829
- Xournal++ & other software: community/other-software.md
@@ -63,5 +64,6 @@ markdown_extensions:
6364
- pymdownx.highlight
6465
- pymdownx.superfences
6566
- pymdownx.tabbed
67+
- admonition
6668
- toc:
6769
permalink: true

0 commit comments

Comments
 (0)