1 #ifndef LVDOCVIEWPROPS_H
2 #define LVDOCVIEWPROPS_H
3 
4 // standard properties supported by LVDocView
5 #define PROP_FONT_GAMMA              "font.gamma" // currently supported: 0.65 .. 1.35, see gammatbl.h
6 #define PROP_FONT_GAMMA_INDEX        "font.gamma.index" // currently supported: 0..30 ~= 0.65 .. 1.35, see gammatbl.h
7 #define PROP_FONT_ANTIALIASING       "font.antialiasing.mode"
8 #define PROP_FONT_HINTING            "font.hinting.mode"
9 #define PROP_FONT_SHAPING            "font.shaping.mode"
10 #define PROP_FONT_KERNING_ENABLED    "font.kerning.enabled"
11 #define PROP_FONT_COLOR              "font.color.default"
12 #define PROP_FONT_FACE               "font.face.default"
13 #define PROP_FONT_WEIGHT_EMBOLDEN    "font.face.weight.embolden"
14 #define PROP_BACKGROUND_COLOR        "background.color.default"
15 #define PROP_BACKGROUND_IMAGE        "background.image.filename"
16 #define PROP_TXT_OPTION_PREFORMATTED "crengine.file.txt.preformatted"
17 #define PROP_LOG_FILENAME            "crengine.log.filename"
18 #define PROP_LOG_LEVEL               "crengine.log.level"
19 #define PROP_LOG_AUTOFLUSH           "crengine.log.autoflush"
20 #define PROP_FONT_SIZE               "crengine.font.size"
21 #define PROP_FALLBACK_FONT_FACES     "crengine.font.fallback.faces"
22 #define PROP_STATUS_FONT_COLOR       "crengine.page.header.font.color"
23 #define PROP_STATUS_FONT_FACE        "crengine.page.header.font.face"
24 #define PROP_STATUS_FONT_SIZE        "crengine.page.header.font.size"
25 #define PROP_PAGE_MARGIN_TOP         "crengine.page.margin.top"
26 #define PROP_PAGE_MARGIN_BOTTOM      "crengine.page.margin.bottom"
27 #define PROP_PAGE_MARGIN_LEFT        "crengine.page.margin.left"
28 #define PROP_PAGE_MARGIN_RIGHT       "crengine.page.margin.right"
29 #define PROP_ROUNDED_CORNERS_MARGIN  "crengine.rounded.corners.margin"
30 #define PROP_PAGE_VIEW_MODE          "crengine.page.view.mode" // pages/scroll
31 #define PROP_INTERLINE_SPACE         "crengine.interline.space"
32 #if CR_INTERNAL_PAGE_ORIENTATION==1
33 #define PROP_ROTATE_ANGLE            "window.rotate.angle"
34 #endif
35 #define PROP_EMBEDDED_STYLES         "crengine.doc.embedded.styles.enabled"
36 #define PROP_EMBEDDED_FONTS          "crengine.doc.embedded.fonts.enabled"
37 #define PROP_NONLINEAR_PAGEBREAK     "crengine.doc.nonlinear.pagebreak.force"
38 #define PROP_DISPLAY_INVERSE         "crengine.display.inverse"
39 #define PROP_DISPLAY_FULL_UPDATE_INTERVAL "crengine.display.full.update.interval"
40 #define PROP_DISPLAY_TURBO_UPDATE_MODE "crengine.display.turbo.update"
41 #define PROP_STATUS_LINE             "window.status.line"
42 #define PROP_BOOKMARK_ICONS          "crengine.bookmarks.icons"
43 #define PROP_FOOTNOTES               "crengine.footnotes"
44 #define PROP_SHOW_TIME               "window.status.clock"
45 #define PROP_SHOW_TITLE              "window.status.title"
46 #define PROP_STATUS_CHAPTER_MARKS    "crengine.page.header.chapter.marks"
47 #define PROP_SHOW_BATTERY            "window.status.battery"
48 #define PROP_SHOW_POS_PERCENT        "window.status.pos.percent"
49 #define PROP_SHOW_PAGE_COUNT         "window.status.pos.page.count"
50 #define PROP_SHOW_PAGE_NUMBER        "window.status.pos.page.number"
51 #define PROP_SHOW_BATTERY_PERCENT    "window.status.battery.percent"
52 #define PROP_LANDSCAPE_PAGES         "window.landscape.pages"
53 #define PROP_AUTOSAVE_BOOKMARKS      "crengine.autosave.bookmarks"
54 
55 // Obsolete hyph settings:
56 #define PROP_HYPHENATION_DICT_VALUE_NONE "@none"
57 #define PROP_HYPHENATION_DICT_VALUE_ALGORITHM "@algorithm"
58 // Still used hyph settings:
59 #define PROP_HYPHENATION_DICT                "crengine.hyphenation.directory"
60 #define PROP_HYPHENATION_LEFT_HYPHEN_MIN     "crengine.hyphenation.left.hyphen.min"
61 #define PROP_HYPHENATION_RIGHT_HYPHEN_MIN    "crengine.hyphenation.right.hyphen.min"
62 #define PROP_HYPHENATION_TRUST_SOFT_HYPHENS  "crengine.hyphenation.trust.soft.hyphens"
63 // New textlang typography settings:
64 #define PROP_TEXTLANG_MAIN_LANG              "crengine.textlang.main.lang"
65 #define PROP_TEXTLANG_EMBEDDED_LANGS_ENABLED "crengine.textlang.embedded.langs.enabled"
66 #define PROP_TEXTLANG_HYPHENATION_ENABLED    "crengine.textlang.hyphenation.enabled"
67 #define PROP_TEXTLANG_HYPH_SOFT_HYPHENS_ONLY "crengine.textlang.hyphenation.soft.hyphens.only"
68 #define PROP_TEXTLANG_HYPH_FORCE_ALGORITHMIC "crengine.textlang.hyphenation.force.algorithmic"
69 
70 #define PROP_FLOATING_PUNCTUATION    "crengine.style.floating.punctuation.enabled"
71 
72 #define PROP_FORMAT_SPACE_WIDTH_SCALE_PERCENT        "crengine.style.space.width.scale.percent"
73 #define PROP_FORMAT_MIN_SPACE_CONDENSING_PERCENT     "crengine.style.space.condensing.percent"
74 // % of unused space on a line to trigger hyphenation, or addition of letter spacing for justification
75 #define PROP_FORMAT_UNUSED_SPACE_THRESHOLD_PERCENT   "crengine.style.unused.space.threshold.percent"
76 // Max allowed added letter spacing (% of font size)
77 #define PROP_FORMAT_MAX_ADDED_LETTER_SPACING_PERCENT "crengine.style.max.added.letter.spacing.percent"
78 
79 #define PROP_FILE_PROPS_FONT_SIZE    "cr3.file.props.font.size"
80 
81 // default is 96 (1 css px = 1 screen px)
82 // use 0 for old crengine behaviour (no support for absolute units and 1css px = 1 screen px)
83 #define PROP_RENDER_DPI                 "crengine.render.dpi"
84 #define PROP_RENDER_SCALE_FONT_WITH_DPI "crengine.render.scale.font.with.dpi"
85 #define PROP_RENDER_BLOCK_RENDERING_FLAGS "crengine.render.block.rendering.flags"
86 #define PROP_REQUESTED_DOM_VERSION   "crengine.render.requested_dom_version"
87 
88 #define PROP_CACHE_VALIDATION_ENABLED  "crengine.cache.validation.enabled"
89 #define PROP_MIN_FILE_SIZE_TO_CACHE  "crengine.cache.filesize.min"
90 #define PROP_FORCED_MIN_FILE_SIZE_TO_CACHE  "crengine.cache.forced.filesize.min"
91 #define PROP_PROGRESS_SHOW_FIRST_PAGE  "crengine.progress.show.first.page"
92 #define PROP_HIGHLIGHT_COMMENT_BOOKMARKS "crengine.highlight.bookmarks"
93 #define PROP_HIGHLIGHT_SELECTION_COLOR "crengine.highlight.selection.color"
94 #define PROP_HIGHLIGHT_BOOKMARK_COLOR_COMMENT "crengine.highlight.bookmarks.color.comment"
95 #define PROP_HIGHLIGHT_BOOKMARK_COLOR_CORRECTION "crengine.highlight.bookmarks.color.correction"
96 // image scaling settings
97 // mode: 0=disabled, 1=integer scaling factors, 2=free scaling
98 // scale: 0=auto based on font size, 1=no zoom, 2=scale up to *2, 3=scale up to *3
99 #define PROP_IMG_SCALING_ZOOMIN_INLINE_MODE  "crengine.image.scaling.zoomin.inline.mode"
100 #define PROP_IMG_SCALING_ZOOMIN_INLINE_SCALE  "crengine.image.scaling.zoomin.inline.scale"
101 #define PROP_IMG_SCALING_ZOOMOUT_INLINE_MODE "crengine.image.scaling.zoomout.inline.mode"
102 #define PROP_IMG_SCALING_ZOOMOUT_INLINE_SCALE "crengine.image.scaling.zoomout.inline.scale"
103 #define PROP_IMG_SCALING_ZOOMIN_BLOCK_MODE  "crengine.image.scaling.zoomin.block.mode"
104 #define PROP_IMG_SCALING_ZOOMIN_BLOCK_SCALE  "crengine.image.scaling.zoomin.block.scale"
105 #define PROP_IMG_SCALING_ZOOMOUT_BLOCK_MODE "crengine.image.scaling.zoomout.block.mode"
106 #define PROP_IMG_SCALING_ZOOMOUT_BLOCK_SCALE "crengine.image.scaling.zoomout.block.scale"
107 
108 #endif // LVDOCVIEWPROPS_H
109