diff --git a/app/src/assets/scss/_protyle.scss b/app/src/assets/scss/_protyle.scss index d0f887ddf..83325348b 100644 --- a/app/src/assets/scss/_protyle.scss +++ b/app/src/assets/scss/_protyle.scss @@ -65,6 +65,11 @@ top: -9px; opacity: 0; font-size: 12px; + font-weight: normal; + + & > div.protyle-attr--bookmark { + flex: 1; + } & > div:not(.protyle-attr--refcount) { margin: 0 4px; diff --git a/app/src/assets/scss/export.scss b/app/src/assets/scss/export.scss index 32e4c62c3..e60908901 100644 --- a/app/src/assets/scss/export.scss +++ b/app/src/assets/scss/export.scss @@ -39,8 +39,13 @@ svg { display: flex; opacity: 0; font-size: 12px; + font-weight: normal; - & > div { + & > div.protyle-attr--bookmark { + flex: 1; + } + + & > div:not(.protyle-attr--refcount) { margin: 0 4px; display: flex; align-items: center; @@ -54,8 +59,8 @@ svg { svg { height: 12px; width: 12px; - margin-right: 2px; - flex-shrink: 0; + margin: 2px 2px 0 0; + float: left; } } diff --git a/app/src/protyle/export/index.ts b/app/src/protyle/export/index.ts index efb4fcfbf..aca5557d8 100644 --- a/app/src/protyle/export/index.ts +++ b/app/src/protyle/export/index.ts @@ -106,7 +106,7 @@ const renderPDF = (id: string) => { #action { width: 200px; background: var(--b3-theme-background-light); - padding: 16px; + padding: 12px; position: fixed; right: 0; top: 0; @@ -132,6 +132,10 @@ const renderPDF = (id: string) => { max-width: none; } + .b3-switch { + margin-left: 14px; + } + .exporting::-webkit-scrollbar { width: 0; height: 0; @@ -151,8 +155,8 @@ const renderPDF = (id: string) => { border-bottom: 1px solid var(--b3-theme-surface-lighter); display: block; color: var(--b3-theme-on-surface); - padding-bottom: 16px; - margin-bottom: 16px; + padding-bottom: 12px; + margin-bottom: 12px; } ${setInlineStyle(false)} @@ -432,6 +436,7 @@ const renderPDF = (id: string) => { scale: parseFloat(actionElement.querySelector("#scale").value), pageSize: actionElement.querySelector("#pageSize").value, }, + left: previewElement.style.paddingLeft, keepFold: keepFoldElement.checked, mergeSubdocs: mergeSubdocsElement.checked, removeAssets: actionElement.querySelector("#removeAssets").checked, @@ -440,7 +445,7 @@ const renderPDF = (id: string) => { }) actionElement.remove(); previewElement.classList.add("exporting"); - previewElement.style.paddingTop = "0"; + previewElement.style.paddingTop = "6px"; previewElement.style.paddingBottom = "0"; }); setPadding(); @@ -454,7 +459,7 @@ const renderPDF = (id: string) => { modal: true, show: true, width: 1032, - height: 618, + height: 638, resizable: false, frame: "darwin" === window.siyuan.config.system.os, icon: path.join(window.siyuan.config.system.appDir, "stage", "icon-large.png"), diff --git a/app/src/util/onGetConfig.ts b/app/src/util/onGetConfig.ts index 60c9d437f..17075ad23 100644 --- a/app/src/util/onGetConfig.ts +++ b/app/src/util/onGetConfig.ts @@ -378,6 +378,11 @@ const initWindow = () => { mergeSubdocs: ipcData.mergeSubdocs, }))); try { + ipcData.pdfOptions.displayHeaderFooter = true; + ipcData.pdfOptions.headerTemplate = ""; + ipcData.pdfOptions.footerTemplate = `
+ ${window.siyuan.languages.exportBySiYuan} +
` window.siyuan.printWin.webContents.printToPDF(ipcData.pdfOptions).then((pdfData) => { fetchPost("/api/export/exportHTML", { id: ipcData.rootId,