User Settings Reference

1. Root attributes: identity, localization, startup, UI, and behavior

1.1 Identity, locale, update, and internal/service flags

XML pathTypeValid values / meaningDefaultNotes
root@UpdateScheduleStringweekly, monthly, neverinstall4j default, effectively monthly if unsetUpdate-check schedule
root@EnableMessagingbooleantrue / falsetrueEnables app messaging subsystem
root@SendUsageDatabooleantrue / falselibrary/app defaultTelemetry opt-in/out
root@KeepAlivebooleantrue / falsetrueInternal app/window keepalive behavior
root@LastUsedPreflightStringLast preflight profile name/idemptyMRU only
root@TabTipsbooleantrue / falsetrueShow tab tooltips/hints

1.2 Main window, tabs, ribbons, and shell integration

XML pathTypeValid values / meaningDefaultNotes
root@FrameXintMain window X positionruntime-calculatedUser preference
root@FrameYintMain window Y positionruntime-calculatedUser preference
root@FrameWidthintMain window width, DPI-scaled when savedabout 1280 * dpiScale
root@FrameHeightintMain window height, DPI-scaled when savedabout 860 * dpiScale
root@FrameMaximizedbooleantrue / falsefalse
root@SplitPositionintMain document/sidebar split positionruntime-calculated
root@RightSplitWhenCommentsbooleantrue / falsefalseKeeps right pane split only when comments are shown
root@RibbonToolbarsbooleantrue / falsetrueEnables ribbon UI
root@RibbonMinimizedbooleantrue / falsefalseRibbon collapsed state
root@Tabsbooleantrue / falsetrueEnables document tabs vs document frames
root@SameWindowbooleantrue / falsefalseOpen documents in same window
root@RestoreSessionbooleantrue / falsefalseRestore previously open documents/session
root@NativeFileDialogbooleantrue / falsetrueUse native OS file dialogs
root@ModOnTitlebarbooleantrue / falsetrueShow modified marker in title bar
root@TitleBarbooleantrue / falsetrueShow document title in title bar
root@OverrideTitlebooleantrue / falsefalseOverride document/title behavior with app preference
root@BindingStringBinding/page-side preference stringempty unless setUsed with page view/binding behavior
root@OverrideBindingbooleantrue / falsefalseForces app binding preference
root@CreateTempOnSavebooleantrue / falsetrueSave-via-temp-file safety behavior
root@RestoreLastViewbooleantrue / falsefalseRestore last page/view for reopened docs
root@PastePagesAfterbooleantrue / falsetruePaste/import pages after current page

1.3 Units, thumbnails, tools, rendering, and navigation

XML pathTypeValid values / meaningDefaultNotes
root@DefaultUnitsStringUnit token used throughout the UI; commonly inches/points/mm/cminchesThe UI sources unit values from UnitsUtil.VALUE_UNITS
root@ThumbnailWidthintThumbnail width (DPI-scaled on save)runtime-calculated
root@ThumbnailHeightintThumbnail height (DPI-scaled on save)runtime-calculated
root@ToolSizeintToolbar icon/tool size (DPI-scaled on save)runtime-calculated
root@ShowRulersbooleantrue / falsefalseToggles ruler display
root@ShowGridbooleantrue / falsefalseToggles page grid display
root@ShowSignatureValiditybooleantrue / falserenderer defaultShows signature-validation UI state
root@FieldsHighlightbooleantrue / falsetrueHighlight form fields
root@ShowTabOrderbooleantrue / falsefalseShow form tab order
root@FieldGridSpacesbooleantrue / falsefalseUse space-based field grid sizing/alignment
root@HighlightBookmarkbooleantrue / falsetrueHighlight current bookmark
root@DefaultBkmkZoomintbookmark zoom mode codelibrary defaultExact numeric mapping comes from external GotoPageAction constants
root@WrapBookmarksbooleantrue / falsetrueWrap long bookmark text
root@ToolsDefaultStringdefault tool command idStopSelect command constantInternal command string, not a human label
root@ToolsKeepActivebooleantrue / falsefalseKeep current tool active after use
root@HandShouldZoombooleantrue / falsefalseAlternate hand-tool zoom behavior
root@InvertColorsModebooleantrue / falsefalseInvert-colors viewing mode
root@AdjustToZoombooleantrue / falsefalseWhen pasting/importing images, adjust to current zoom
root@EnhanceThinLinesbooleantrue / falserenderer defaultThin-line enhancement
root@ScreenResolutionOptionStringsystem, custom, legacy standardcustomstandard is normalized to custom on load
root@ScreenResolutionintcustom effective screen resolution / PPIcomputed from environment, min about 110Used only when ScreenResolutionOption=custom
root@FingerModeEnabledbooleantrue / falsefalseTouch/finger mode
root@ShowCommentBubblebooleantrue / falsetrueControls comment bubble UI
root@CreateLinksFromURLsbooleantrue / falsetrueAuto-create clickable links from URL text

1.4 Theme, colors, scaling, external browser/storage toggles

XML pathTypeValid values / meaningDefaultNotes
root@LookFeelStringcurrent UI theme token; known values include Auto, Light, Darkapp defaultNewer builds favor FlatLaf values
root@IconColorsetStringUI shows Color vs Monochrome; exact value comes from print chromaticity constantscolorUsed to recolor SVG icons
root@FullScreenBackgroundcolor stringany parsed colorblack-ish renderer defaultFull-screen background color
root@XodoDriveEnabledbooleantrue/falsetrueEnable Xodo Drive integration
root@GoogleDriveEnabledbooleantrue / falsetrue
Enable Google Drive integration
root@DropboxEnabledbooleantrue / falsetrue
Enable Dropbox integration
root@OneDriveEnabledbooleantrue / falsetrueEnable OneDrive integration

1.5 Prompts, warnings, and feature-specific booleans

XML pathTypeValid values / meaningDefaultNotes
root@ShowDeletePagesWarningbooleantrue / falsetrueConfirm before deleting pages
root@ShowDeleteAnnotsWaringbooleantrue / falsetrueExact XML name contains Waring typo
root@ShowFlattenAnnotsWarningbooleantrue / falsetrueConfirm before flattening annotations
root@ShowCloseTabsWaringbooleantrue / falsetrueExact XML name contains Waring typo
root@ShowSecuritySaveWarningbooleantrue / falsetrueWarn when saving security-sensitive changes
root@ShowSignWarningbooleantrue / falsetrueWarn before signing
root@ShowSanitizeWarningbooleantrue / falsetrueWarn before sanitize action
root@ShowAlignPointsWarningbooleantrue / falsetrueWarn for align-points behavior
root@NewDocSizeDialogbooleantrue / falsetrueShow size dialog for new document/page creation
root@CADToPDFWarningbooleantrue / falsetrueWarn before converting CAD files to PDF
root@ShowDetectFormsbooleantrue / falsetruePrompt to detect form fields in a local PDF
root@ShowDetectOnlineFormsbooleantrue / falsetruePrompt to detect form fields in a PDF opened online
root@ShowUnappliedRedactionMsgbooleantrue / falsetrueWarn when saving a document that has marked but unapplied redactions
root@ActivateSearchResultbooleantrue / falsetrueBring window/tab to front when jumping to a search result
root@AllowEXEbooleantrue / falsetrueAllow launching executable file attachments/links from a PDF
root@NTDontShowFeedbackAgainbooleantrue / falsefalseDismisses the new-toolbar feedback prompt permanently
root@NTShowStaticFeedbackButtonbooleantrue / falsefalseShows a persistent feedback button for the new toolbar

2. Root attributes: document creation, print, OCR, scan, export, and conversion

2.1 New-document defaults

XML pathTypeValid values / meaningDefaultNotes
root@PageSizeStringLetter, Legal, A3, A4, A5, B5 (JIS), B4 (JIS), Executive, Tabloid, B5 (ISO), B4 (ISO), CustomLetterDefault page size for new blank pages/docs
root@UseFirstPageSizebooleantrue / falsefalseReuse first page size from source document when applicable
root@PageOrientationint0 = portrait, 1 = landscape0Only meaningful for non-custom page sizes
root@PageWidthdoublepoints612.0Used for custom page size
root@PageHeightdoublepoints792.0Used for custom page size

2.2 Flatten/merge behavior and signatures/create-stamp defaults

XML pathTypeValid values / meaningDefaultNotes
root@PaintPushButtonsbooleantrue / falsefalsePaint pushbuttons when flattening fields
root@PaintOnlyImageButtonsbooleantrue / falsefalseOnly paint image pushbuttons when flattening
root@PaintNonprintFieldsbooleantrue / falsefalseInclude non-print fields during flatten
root@RenameFieldsbooleantrue / falsefalseRename fields on merge
root@LastCreatedSigTypeStringsignature-creation mode tokenemptyLast “create signature” choice
root@LastCreatedSigFontStringfont family/base nameemptyLast font used for typed signature
root@UseCustomStampPreviewbooleantrue / falsefalseUse custom preview behavior for stamp creation
root@UseStampNamebooleantrue / falsefalseUse profile/stamp name in UI/output
root@ReplaceContentsOnlybooleantrue / falsefalseReplace pages/content without replacing page objects outside content stream
root@EditContentModeString/int bitmaskinternal content-edit mode bitmask19Exact bit-to-feature mapping is partly external; controls which content types are editable
root@AutoSaveEnabledbooleantrue / falsetrueAutosave master switch
root@AutoSaveDelaylongminutes5Autosave delay

2.3 OCR defaults

XML pathTypeValid values / meaningDefaultNotes
root@OCRLanguageStringTesseract/engine language code, e.g. engengSaved only when OCR support is present
root@OCRPageRangeStringpage-choice token; commonly PageAll, PageCurrent, PageRangePageAllLoader also normalizes older display strings
root@OCRDPIintDPI300
root@RotateAfterOCRbooleantrue / falsetrueAuto-rotate after OCR

2.4 Scan defaults

XML pathTypeValid values / meaningDefaultNotes
root@ScanTargetStringBeginning of document, Current Page, End of document, New Document, Interleave, Reverse Interleave, Multiple DocumentsEnd of documentExact strings are significant
root@ScanPageSizeStringSize to Image, Same As DocumentSize to ImagePlacement/sizing mode
root@ScanCompressionStringJPEG, FLATE, JBIG2 (B/W)JPEGOutput compression
root@ScanQualityintquality percent-like integer80Used mainly with JPEG
root@ScanMultiDocLocationStringoutput folder pathemptyFor multi-document scan mode
root@ScanOCRbooleantrue / falsefalseRun OCR after scanning
root@ScanFunctionalUnitintdriver-specific unit code0Scanner-dependent
root@ScanDuplexbooleantrue / falsefalseDuplex scanning
root@ScanColorintdriver-specific color mode code0Scanner-dependent
root@ScanSizeStringscanner paper-size tokendevice/default dependentScanner-dependent
root@ScanDPIintDPI300
root@ScanBrightnessintbrightness adjustment0
root@ScanContrastintcontrast adjustment0
root@ScanDeskewbooleantrue / falsefalseDeskew scanned pages

2.5 Spell check and snapshot defaults

XML pathTypeValid values / meaningDefaultNotes
root@EnableSpellCheckbooleantrue / falsetrueMaster spellcheck toggle
root@IgnoreAllCapsbooleantrue / falsefalseIgnore ALL-CAPS words
root@IgnoreNumbersbooleantrue / falsefalseIgnore tokens containing numbers
root@SpellCheckColorcolor stringany parsed colorinternal default underline colorSerialized as hex string
root@SpellCheckDictionariesStringdictionary list/serialization used by spellcheck manageremptyExact delimiter format is manager-defined
root@SSShowDialogbooleantrue / falsetrueShow snapshot dialog
root@SSSaveImagebooleantrue / falsetrueSave image on snapshot
root@SSPrintbooleantrue / falsefalsePrint snapshot
root@SSImageFormatStringJPEG, PNG, TIFF, GIFPNGSnapshot output format
root@SSFolderStringfolder pathemptySnapshot output folder

2.6 Batch-processing memory and import/export MRU values

XML pathTypeValid values / meaningDefaultNotes
root@BatchLastUseDefaultDirectorybooleantrue / falsefalseReuse default output directory
root@BatchDefaultIncludeSubdirsbooleantrue / falsefalseDefault for recursive batch search
root@BatchLastOverwriteSorucesbooleantrue / falsefalseExact XML key contains Soruces typo
root@BatchLastRenameFilesbooleantrue / falsefalseRename outputs during batch
root@BatchLastPreserveStructurebooleantrue / falsefalsePreserve source folder structure
root@BatchPDFACreateReportbooleantrue / falsefalseGenerate PDF/A report in batch
root@BatchPDFXCreateReportbooleantrue / falsefalseGenerate PDF/X report in batch
root@ImportImageUseDefaultDirectorybooleantrue / falsefalseSeparate from importimagesettings.xml

2.7 Office/text conversion and fallback font settings

XML pathTypeValid values / meaningDefaultNotes
root@WordOptionStringconversion-output command token, e.g. ConvertToDocxConvertToDocxLast-used "Convert to Word" output format
root@UseFallbackFontStringTHROW_ERROR, USE_PDFSTUDIO_FALLBACKFONT, USER_SPECIFIED_FALLBACKFONTengine defaultWord/general fallback policy
root@FallbackPathStringfont file pathemptyUsed when fallback policy is user-specified
root@EmbedFontsbooleantrue / falseapp defaultEmbed fonts during Word conversion
root@MaxMissingCharsWordintthreshold before fallback/errorapp defaultWord conversion only
root@UseFallbackFontExcelStringsame enum as aboveengine defaultExcel fallback policy
root@FallbackPathExcelStringfont file pathempty
root@EmbedFontsExcelbooleantrue / falseapp default
root@MaxMissingCharsExcelintthreshold integerapp default
root@UseFallbackFontPowerPointStringsame enum as aboveengine defaultPowerPoint fallback policy
root@FallbackPathPowerPointStringfont file pathempty
root@EmbedFontsPowerPointbooleantrue / falseapp default
root@MaxMissingCharsPowerPointintthreshold integerapp default
root@BookmarkHeadingsbooleantrue / falseapp defaultCreate bookmarks from heading styles
root@WordMaxDPIintmax DPI for Word/image conversionapp default
root@BookmarkSheetsbooleantrue / falseapp defaultCreate bookmarks from spreadsheet sheets
root@ExcelMaxPagesintmax pages to generateapp default
root@ExcelPagingStringworkbook paging mode tokenapp defaultControls Excel pagination strategy
root@WordConvertSheetsStringMultiSheet, SingleSheet, PageSingleSheetMultiSheetControls how Word documents with multiple sections/columns are laid out on export
root@NonTableContentbooleantrue / falsetrueInclude non-tabular page content when converting to Word/Excel
root@officeConvertLibStringQOPPA, APRYSEAPRYSESelects which underlying library performs Office document conversion

3. Child element: SMTPSettings

XML pathTypeValid values / meaningDefaultNotes
root/SMTPSettings@SMTPPortString/intport number as stringempty
root/SMTPSettings@SMTPStartTLSString/boolean-ishstarttls flag as stored by mail UIemptyStored as string, not normalized here
root/SMTPSettings@SMTPAuthRequiredString/boolean-ishwhether auth is requiredemptyStored as string
root/SMTPSettings@SMTPRememberPasswordbooleantrue / falsefalse
root/SMTPSettings@BccStringBCC address listempty
root@EMailPrefStringemail delivery preference tokenemptyOutside SMTPSettings
root@EmailFlattenAnnotsbooleantrue / falsefalseFlatten annotations before emailing
root@EmailFlattenFieldsbooleantrue / falsefalseFlatten form fields before emailing

4. Child element: Messages

This section is mostly internal state for the in-app messaging.

XML pathTypeValid values / meaningDefaultNotes
root/Messages@LastMessageIDintlast full message ID shown0
root/Messages@MessageFileChecklonglast server check timestamp0
root/Messages@MessageFileModifiedlongremote message-file modified time0
root/Messages@LastMessageShowbooleantrue / falsetrue“do not show again” inverse flag
root/Messages@LastMiniMessageIDintlast mini-message ID shown0
root/Messages@MiniMessageStringmini-message text/id payloademptyPresent only when set
root/Messages@MiniEndDateStringend-date stringemptyFormatting is message-system-defined



5. Child elements: InitialView and BatchInitialView

5.1 InitialView

root/InitialView is serialized and parsed by the external InitialViewSettings class:

XML pathTypeValid values / meaningDefaultNotes
root/InitialView@OverridePageModebooleantrue / falsefalseWhen true, forces the configured page-mode default onto every document, ignoring the document's own embedded setting
root/InitialView@OverridePageLayoutbooleantrue / falsefalseWhen true, forces the configured page-layout default onto every document
root/InitialView@OverrideMagnificationbooleantrue / falsefalseWhen true, forces the configured magnification/zoom default onto every document

5.2 BatchInitialView

These are the same concepts, but explicitly validated in StudioSettings for batch workflows:

XML pathTypeValid values / meaningDefaultNotes
root/BatchInitialView@BatchSelectedPageint1-based page number1

6. Child element: ToolDefaults

ToolDefaults stores annotation-tool defaults and feature toggles. The root-level flags are visible in settings_en.xml; many tool-specific children are emitted/parsed by the external AnnotationTools serializer.

6.1 Root attributes on ToolDefaults

XML pathTypeValid values / meaningDefault from sampleNotes
root/ToolDefaults@FlattenEnabledbooleantrue / falsetrueAllow annotation flatten command
root/ToolDefaults@ReviewEnabledbooleantrue / falsetrueAllow review-related UI
root/ToolDefaults@MiniToolbarEnabledbooleantrue / falsetrueAllow mini toolbar
root/ToolDefaults@AuthorEditbooleantrue / falsetrueAllow editing comment author
root/ToolDefaults@DeleteEnabledbooleantrue / falsetrueAllow deleting annotations
root/ToolDefaults@DrawOverlappingAnnotationsEnabledbooleantrue / falsetrueAllow drawing new annotations that overlap existing ones
root/ToolDefaults@CtrlDragCopyAnnotationsEnabledbooleantrue / falsetrueAllow Ctrl+drag to duplicate an annotation

6.2 Common attributes used by many tool children

These child elements appear directly under ToolDefaults, for example <TextHighlight .../>, <Line .../>, <Redaction .../>.

Common attributes observed in code/sample XML:

AttributeTypeMeaning
StickyToolbooleanKeep the tool active after one use
ShowPropDialogboolean or intWhether to show a properties dialog. Most tools use boolean; the note/text tool sample uses 2 and that numeric meaning is external/ambiguous.
TransparencyintPercentage-like transparency setting used by many markup tools
ColorintMain RGB color
BorderColorintOutline RGB color
FillColorintFill RGB color
BorderWidthdoubleStroke width
FontName / FontSizeString / doubleText-based annotation font defaults
LineStartStyle / LineEndStyleStringPDF line-ending style names, e.g. None, ClosedArrow

6.3 Tool child names seen in the shipped defaults

The sample settings_en.xml includes all of these children under ToolDefaults:

  • FileAttach
  • Sound
  • TextHighlight
  • TextUnderline
  • TextCross
  • TextReplacement
  • TextInser (exact spelling in XML)
  • TextSquiggly
  • Link
  • Circle
  • Square
  • AreaHighlight
  • Cloud
  • Polygon
  • PolygonDimension
  • Polyline
  • PolylineDimension
  • Pencil
  • Line
  • LineArrow
  • LineDimension
  • DimensionTool
  • RubberStamp
  • FreeText
  • Callout
  • Typewriter
  • Text (note/comment tool)
  • Redaction
  • Bookmark
  • Marker (highlighter-style freehand tool)
  • ContentCircle, ContentSquare, ContentCloud, ContentPolygon, ContentPolyline, ContentPencil, ContentLine, ContentLineArrow, ContentRubberStamp, ContentTypewriter, ContentFreeText (defaults used by the "Edit Content" drawing tools, mirroring the standard annotation tools above)
  • optional AnnotPaneView child element containing annotation-pane layout state

6.4 Tool-specific attributes visible in the sample XML

ChildExtra attributes visible in sampleNotes
TextHighlight, TextUnderline, TextCross, TextReplacement, TextSquigglyMarkUpTextContentWhether the selected text content is included in the created markup/comment
TextInserSizeInsert-text caret/markup size
Cloud, ContentCloudBorderStyleNumeric style code; exact mapping external
PolygonDimension, PolylineDimensionUnitsStringType, DisplayMeasurementMeasurement display options
Pencil, Marker, ContentPencilEnableCurveFit, TimerDelayFreehand smoothing/timing options
LineDimensionShowCalibrateMsgWhether to prompt calibration guidance
DimensionToolShowDimensionDialog, ScalePageUnits, ScaleDisplayUnits, ScaleDisplayValue, ScalePageValue, ScaleDisplayValueY, ScalePageValueY, ScaleDisplayUnitsY, ScalePageUnitsY, ScalePrecision, SeparateVerticalScale, SnapToConent, ShiftPressedMeasurement calibration defaults; note the exact misspelling SnapToConent
RubberStamp, ContentRubberStampCompression, QualityRaster-stamp preview/compression options
FreeText, Callout, ContentFreeTextTextAlignX, TextAlignY, FontUnderline, FontStrikethroughNumeric alignment codes from external classes, plus default underline/strikethrough text style
Typewriter, ContentTypewriterFontUnderline, FontStrikethroughDefault underline/strikethrough text style
TextInitiallyOpen, IconNamePopup/note initial-open behavior and default note icon (e.g. Note, Comment, Key)
RedactionOverlayFillColor, OverlayRepeat, OverlaySize, OverlayFont, OverlayColor, OverlayAlignmentDefault appearance for redaction overlay text
BookmarkBookmarkStyle, BookmarkColorNumeric bookmark-style code and default bookmark text color

Admin note: this is an important section for locking down annotation behavior, but some numeric codes (BookmarkStyle, TextAlignX/Y, UnitsStringType, some ShowPropDialog values) are defined in external classes not present in this repo.


7. Child element: Accessibility

XML pathTypeValid values / meaningDefaultNotes
root/Accessibility@ReplaceDocColorsbooleantrue / falsefalseReplace document colors in viewer
root/Accessibility@UseHighContrastbooleantrue / falsetrueUse one of the preset contrast combos
root/Accessibility@HighContrastComboStringgreentextonblack, yellowtextonblack, whitetextonblack, blacktextonwhiteblacktextonwhiteStrictly validated
root/Accessibility@PageBackgroundcolor stringany parsed colorwhiteUsed when not using preset/high contrast
root/Accessibility@TextColorcolor stringany parsed colorblack
root/Accessibility@OnlyChangeBlackbooleantrue / falsefalseOnly remap black text/content
root/Accessibility@ChangeLineArtbooleantrue / falsefalseAlso recolor line art

8. Child element: JavaScriptSettings

XML pathTypeValid values / meaningDefaultNotes
root/JavaScriptSettings@JSEnabledint0 = off, 1 = prompt, 2 = on0 if nothing configuredExplicitly mapped in code
root/JavaScriptSettings@JSSilenceErrorsbooleantrue / falselibrary defaultSuppress JS errors
root/JavaScriptSettings@JSSubmitFormWarnbooleantrue / falselibrary defaultWarn on submit-form JS
root/JavaScriptSettings@JSMailDocWarnbooleantrue / falselibrary defaultWarn on mail-doc JS

9. Child elements: print defaults

9.1 PrintSettings

XML pathTypeValid values / meaningDefaultNotes
root/PrintSettings@AutoRotatebooleantrue / falsetrue
root/PrintSettings@ShrinkToMarginsbooleantrue / falsetrue
root/PrintSettings@ExpandToMarginsbooleantrue / falsefalse
root/PrintSettings@CenterInPagebooleantrue / falsetrue
root/PrintSettings@ScaleImagesToOutputbooleantrue / falsefalse
root/PrintSettings@PrintAnnotationsbooleantrue / falsetrue
root/PrintSettings@PrintFormFieldsbooleantrue / falsetrue
root/PrintSettings@PrintPageContentsbooleantrue / falsetrue
root/PrintSettings@PrintCustomDialogbooleantrue / falsetrue
root/PrintSettings@PrintAsImagebooleantrue / falsefalse
root/PrintSettings@PrintImageDPIStringDPI preset tokenDefaultExact preset strings come from print UI

9.2 PrintDefaults

PDF Studio also saves a separate child element produced by the external com.qoppa.pdf.PrintDefaults class:

  • root/PrintDefaults ...

The repo source confirms that it is loaded and saved as part of settings.xml, but the exact inner attribute list is not visible in the checked-in sources. For admin authoring, the safest approach is to capture a generated sample from a configured installation if you need this specific block.


10. Child element: PDFAOptions

XML pathTypeValid values / meaningDefaultNotes
root/PDFAOptions@PDFASavebooleantrue / falsefalseEnable “save as PDF/A” behavior
root/PDFAOptions@PDFARetainbooleantrue / falsefalseRetain PDF/A on save when applicable
root/PDFAOptions@PDFAUnsupportedAnnotsintlibrary constant for Delete, Flatten, or WarnOPTION_DELETENumeric value comes from external library
root/PDFAOptions@PDFATransparencyintlibrary constant for Opaque or WarnOPTION_OPAQUE
root/PDFAOptions@PDFAEmbeddedFilesintlibrary constant for Delete or WarnOPTION_DELETE
root/PDFAOptions@PDFXInvalidAnnotsintlibrary constant for Delete, Flatten, or WarnOPTION_DELETEPDF/X conversion option
root/PDFAOptions@PDFXTransparencyintlibrary constant for Opaque or WarnOPTION_OPAQUE
root/PDFAOptions@PDFXEmbeddedFilesintlibrary constant for Delete or WarnOPTION_DELETE
root/PDFAOptions@PDFAShowPreConvertbooleantrue / falsefalseShow pre-convert dialog for PDF/A
root/PDFAOptions@PDFXShowPrevConvertbooleantrue / falsefalseExact XML key includes Prev typo
root/PDFAOptions@PDFXImageCompressionintlibrary constant for JPEG or FLATECO_JPEG
root/PDFAOptions@PDFXOutputProfileStringnamed CMYK output profile identifieremptyProfile names come from preflight library

11. Child elements: certificate/signature preferences

11.1 OSCertificates

XML pathTypeValid values / meaningDefaultNotes
root/OSCertificates@OSIDsbooleantrue / falsefalseUse operating-system digital IDs
root/OSCertificates@OSCAsbooleantrue / falsefalseUse operating-system trusted CAs

Important admin note: OSCertificates is only applied during the initial/default-level load path. The admin layer does not meaningfully re-apply this block.

11.2 Root certificate/signature attributes and LastSigSettings

XML pathTypeValid values / meaningDefaultNotes
root@JavaCAsbooleantrue / falsefalseUse Java trust store CAs
root/LastSigSettings@LastDigitalIDlonglast selected digital ID id0User MRU
root/LastSigSettings@LastSignAPlonglast selected signature appearance id0
root/LastSigSettings@FormatStringsigning-format tokenempty
root/LastSigSettings@Typebooleantrue = certifying, false = approvalfalse
root/LastSigSettings@Lockbooleantrue / falsefalseLock-after-sign preference
root/LastSigSettings@PermsStringcertification-permission tokenempty
root/LastSigSettings@ReasonStringsigning reasonempty
root/LastSigSettings@LocationStringsigning locationempty
root/LastSigSettings@ContactStringsigning contact infoempty

12. Child element: TextToPDFSettings

XML pathTypeValid values / meaningDefaultNotes
root/TextToPDFSettings@PageWidthdoublepoints612.08.5" x 72
root/TextToPDFSettings@PageHeightdoublepoints792.011" x 72
root/TextToPDFSettings@MarginLeftdoublepoints72.01 inch
root/TextToPDFSettings@MarginRightdoublepoints72.01 inch
root/TextToPDFSettings@MarginTopdoublepoints72.01 inch
root/TextToPDFSettings@MarginBottomdoublepoints72.01 inch
root/TextToPDFSettings@UseBackgroundbooleantrue / falsefalseUse PDF/page background file
root/TextToPDFSettings/Font@FontNameStringPDF font/base font nameHelveticaStored by FontWrapper
root/TextToPDFSettings/Font@Sizedoublefont size11.0
root/TextToPDFSettings/Font@StyleintJava font style code (0 plain, 1 bold, etc.)0

Compatibility note: if TextToPDFSettings is absent, the loader also accepts these same attributes directly on root.


13. Child element: ExportImage

XML pathTypeValid values / meaningDefaultNotes
root/ExportImage@ImageFormatStringGIF, JPEG, PNG, TIFF; code also supports SVG and HTMLJPEGStandard UI exposes raster formats; code also handles SVG/HTML export
root/ExportImage@FilePatternStringoutput filename patternempty
root/ExportImage@DPIResintDPI150
root/ExportImage@TiffCompressionStringTIFF codec name such as CCITT RLE, Group 3, Group 4, PackBits, LZW, ZLIB, DEFLATE, or no compressionLZWExact stored strings come from TIFFOptions constants
root/ExportImage@JPGQualint0-10 style quality slider value8
root/ExportImage@TiffSinglebooleantrue / falsefalseExport one multipage TIFF
root/ExportImage@PageRangeTypeStringpage-choice token, usually PageAll or PageRangePageAllSame family as other page-choice settings
root/ExportImage@SVGPageBorderbooleantrue / falsefalseInclude page border
root/ExportImage@SVGCompressImgsbooleantrue / falsetrueCompress embedded images
root/ExportImage@TiffGrayscalebooleantrue / falsefalseExport TIFF images in grayscale
root/ExportImage@HTMLConvertOptionStringconversion mode token, e.g. HTMLToSVGHTMLToSVGControls how pages are rendered when exporting to HTML

14. Child elements: reusable profile lists

14.1 WatermarkList

WatermarkList contains reusable watermark profiles. Profile names (Name) are how admin and user lists merge.

Common profile attributes

AttributeTypeMeaning
NameStringprofile name/key
ShowOnMenubooleanwhether it appears in UI menus
PageChoiceStringPageAll, PageRange, PageEven, PageOdd, sometimes PageLast
PageRangeStringexplicit range such as 1-3,7

WatermarkList/Text

XML pathTypeValid values / meaningDefault for new text watermarkNotes
root/WatermarkList/Text@TextStringwatermark text; special fields like $page are supportedlocalized “Watermark”
...@Transparencyinttransparency percentage-like value75
...@LocationXdoublehorizontal offset0.0
...@LocationYdoublevertical offset0.0
...@LocationUnitsStringunit token such as Inchesinherited/current units
...@LocationXFromStringFromLeft, FromRight, FromCenterFromCenter
...@LocationYFromStringFromTop, FromBottom, FromCenterFromCenter
...@Justificationint or legacy Stringleft/center/right alignmentcenterLoader accepts both int and strings Left/Center/Right
...@BorderStringborder style token such as NoBorderNoBorder
...@BorderWidthintborder width1
...@BorderColorcolorborder colorblack
...@Angleintrotation degrees315
...@FgndColorcolortext/foreground colorred
...@UseBgndbooleantrue / falsefalse
...@BgndColorcolorbackground/fill colorwhite
...@ShowOnScreenbooleantrue / falsetrueWatermark visible on screen
...@ShowOnPrintbooleantrue / falsetrueWatermark visible when printed
...@BehindContentbooleantrue / falsefalsePaint watermark behind existing page content
.../Font@FontNameStringfont namedefault Java sans serif at creation time
.../Font@Sizedoublefont size72 in constructor, sample uses 48
.../Font@StyleintJava font style code0

Legacy note: old files may use StartPageNumber and Sequential with $page text substitution.

14.2 HeaderFooterList

XML pathTypeValid values / meaningDefault for new profileNotes
root/HeaderFooterList/HeaderFooter@HeaderLeftStringleft header textemptySpecial fields allowed
...@HeaderCenterStringcenter header textempty
...@HeaderRightStringright header textempty
...@FooterLeftStringleft footer textempty
...@FooterCenterStringcenter footer textempty
...@FooterRightStringright footer textempty
...@Topdoubletop margin0.5
...@Bottomdoublebottom margin0.5
...@Leftdoubleleft margin1.0
...@Rightdoubleright margin1.0
...@MarginUnitsStringunits such as Inchescurrent units
...@BorderStringborder style tokenNoBorder
...@FgndColorcolortext colorblue
...@UseBgndbooleantrue / falsefalse
...@BgndColorcolorbackground coloryellow
...@BorderColorcolorborder colorblack
...@BorderWidthintborder width1
...@AutoShrinkbooleantrue / falsefalseShrink text to fit
.../Font@FontNameStringfont nameHelvetica
.../Font@Sizedoublefont size18.0
.../Font@Styleintfont style0

Legacy note: old files may use StartPageNumber and Sequential in combination with $page placeholders.

14.3 SplitList

Each Split profile stores defaults for split-document operations.

XML pathTypeValid values / meaningDefault for new profileNotes
root/SplitList/Split@SplitByStringPageCount, Bookmark, PageRange, BlankPage, TextSearchSplitBefore, TextSearchSplitAfterPageCount
...@PageCountintpages per output document1Used for SplitBy=PageCount
...@BookmarkEndintmaximum bookmark level/end depth1Used for bookmark split
...@TextSearchBeforeStringsplit before this textempty
...@TextSearchAfterStringsplit after this textempty
...@PageRangeStringexplicit split rangesempty
...@BaseFileNameStringoutput base filename patternemptySupports placeholders like $sourcefilename, $counter, $pagerange, $firstpage, $lastpage, $currentbookmark, $fullhierarchy, $date, $pagelabel
...@UseFileNamebooleantrue / falsetrueUse source filename as base
...@DestinationFolderStringoutput folder pathempty
...@UseSourceFolderOrPromptbooleantrue / falsetrueUse source folder or prompt
...@SuffixOptionStringSuffixDocNumber, SuffixPageRange, CurrentBookmark, BookmarkHierarchySuffixPageRange
...@DocNumberStartintstarting sequence number1
...@OverwriteFilesbooleantrue / falsefalse
...@AnalyzePagebooleantrue / falsetrueBlank-page detection mode
...@Toleranceintblank-page tolerance5

Important quirk: the shipped settings_en.xml still uses UseSourceFolder, but the current code reads/writes UseSourceFolderOrPrompt. The sample file appears to be using the older attribute name.

14.4 TextFieldList

This list stores reusable text-field formatting scripts.

XML pathTypeValid values / meaningDefaultNotes
root/TextFieldList/Format@NameStringprofile namerequiredMerge key
root/TextFieldList/Format@ShowOnMenubooleantrue / falsetrue
root/TextFieldList/Format@JSFormatStringAcrobat-style JavaScript format functiondefault number-format script
root/TextFieldList/Format@KeystrokeStringAcrobat-style keystroke-validation functiondefault number-keystroke script

15. Child element: ReplacementFonts

Structure:

<ReplacementFonts>
  <FontSubs IsEnabled="true">
    <FontSubRec FontName="Original Font" SubName="Replacement Font"
                SubPreferred="false" IsBundled="true"/>
  </FontSubs>
</ReplacementFonts>
XML pathTypeMeaning
root/ReplacementFonts/FontSubs@IsEnabledbooleanmaster enable flag for substitution table
root/ReplacementFonts/FontSubs/FontSubRec@FontNameStringoriginal/missing font name
root/ReplacementFonts/FontSubs/FontSubRec@SubNameStringsubstitute font name
root/ReplacementFonts/FontSubs/FontSubRec@SubPreferredbooleanprefer substitute even when original may exist
root/ReplacementFonts/FontSubs/FontSubRec@IsBundledbooleanreplacement font is bundled with PDF Studio

If the whole element is absent, PDF Studio falls back to its built-in substitution table from getDefaultFontSubstitutions().


16. Child elements: compare, layer-comparison, and output preview

16.1 CompareOverlay

XML pathTypeMeaningDefault
root/CompareOverlay@OverlayColorOrigcolorcolor used for original document overlayexternal default
root/CompareOverlay@OverlayColorComparecolorcolor used for compare document overlayexternal default

16.2 ComparisonLayers

XML pathTypeMeaningDefault
root/ComparisonLayers@ColorsStringcolon-delimited color list for layer comparison UIempty/external default

16.3 OutputPreview

XML pathTypeMeaningDefault
root/OutputPreview@ColorSpaceNameStringselected output-preview color space/profile nameexternal default
root/OutputPreview@SimulateOverprintingbooleansimulate overprintingexternal default
root/OutputPreview@BackgroundColorcolorpreview background colorexternal default
root/OutputPreview@UseBackgroundColorbooleanenable custom background colorexternal default

17. Child element: LastStamp

LastStamp stores the most recently used rubber stamp so it can be pre-selected the next time the Stamp tool is used. When the last stamp was a text-based stamp, its formatting is stored under a TextStamp child.

XML pathTypeValid values / meaningDefaultNotes
root/LastStamp/TextStamp@NameStringstamp name/labelempty
root/LastStamp/TextStamp@TextStringstamp text contentempty
root/LastStamp/TextStamp@Colorcolorstamp text/outline colorapp default
root/LastStamp/TextStamp@FontSizeintstamp font sizeapp default
root/LastStamp/TextStamp@TextStyleintJava font style bitmaskbold + italic
root/LastStamp/TextStamp@Justificationint or legacy Stringleft/center/right alignmentcenterLoader accepts both int and strings Left/Center/Right
root/LastStamp/TextStamp@DropShadowbooleantrue / falsetrueDraw a drop shadow behind the stamp text
root/LastStamp/TextStamp@ShowBorderbooleantrue / falsetrueDraw a border around the stamp


17. Special Use

This section reflects special use only items

XML pathTypeValid values / meaningDefaultNotes
root@NoConnectionsbooleantrue / falsefalseEnables air gapped mode
root@ShowSurveyDialogbooleantrue / falsetrueChanges to false after the survey has been completed
root@ShowSurveyPromptint00Controls when survey is next due to show
root@JXBrowswerEnabledbooleantrue / falsetrueDisables app's embedded browser for in-web content
root@XodoSignEnabledbooleantrue / falsetrueShows/HidesXodo Sign option