mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-05-04 01:59:05 +08:00
This commit is contained in:
parent
bed8b3f5a0
commit
ec92c7837b
@ -116,7 +116,6 @@ const renderPDF = (id: string) => {
|
|||||||
#preview > .code-block {
|
#preview > .code-block {
|
||||||
margin-left: auto;
|
margin-left: auto;
|
||||||
margin-right: auto;
|
margin-right: auto;
|
||||||
width: 800px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#preview.exporting {
|
#preview.exporting {
|
||||||
@ -221,7 +220,34 @@ const renderPDF = (id: string) => {
|
|||||||
<script>
|
<script>
|
||||||
let pdfLeft = 0;
|
let pdfLeft = 0;
|
||||||
let pdfTop = 0;
|
let pdfTop = 0;
|
||||||
const setPadding = (previewElement) => {
|
const previewElement = document.getElementById('preview');
|
||||||
|
const setLineNumberWidth = (element) => {
|
||||||
|
let width = 800
|
||||||
|
switch (element.value) {
|
||||||
|
case "A3":
|
||||||
|
width = 842
|
||||||
|
break;
|
||||||
|
case "A4":
|
||||||
|
width = 595
|
||||||
|
break;
|
||||||
|
case "A5":
|
||||||
|
width = 420
|
||||||
|
break;
|
||||||
|
case "Legal":
|
||||||
|
case "Letter":
|
||||||
|
width = 612
|
||||||
|
break;
|
||||||
|
case "Tabloid":
|
||||||
|
width = 792
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
previewElement.querySelectorAll('.hljs.protyle-linenumber').forEach((item) => {
|
||||||
|
item.parentElement.style.width = width + "px";
|
||||||
|
item.removeAttribute('data-render');
|
||||||
|
})
|
||||||
|
Protyle.highlightRender(previewElement, "${servePath}/stage/protyle");
|
||||||
|
}
|
||||||
|
const setPadding = () => {
|
||||||
const isLandscape = document.querySelector("#landscape").checked;
|
const isLandscape = document.querySelector("#landscape").checked;
|
||||||
switch (document.querySelector("#marginsType").value) { // none
|
switch (document.querySelector("#marginsType").value) { // none
|
||||||
case "0":
|
case "0":
|
||||||
@ -260,10 +286,6 @@ const renderPDF = (id: string) => {
|
|||||||
item.parentElement.style.overflow = "hidden";
|
item.parentElement.style.overflow = "hidden";
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
previewElement.querySelectorAll('.hljs.protyle-linenumber').forEach((item) => {
|
|
||||||
item.removeAttribute('data-render');
|
|
||||||
})
|
|
||||||
Protyle.highlightRender(previewElement, "${servePath}/stage/protyle");
|
|
||||||
}, 300);
|
}, 300);
|
||||||
}
|
}
|
||||||
const fetchPost = (url, data, cb) => {
|
const fetchPost = (url, data, cb) => {
|
||||||
@ -276,7 +298,7 @@ const renderPDF = (id: string) => {
|
|||||||
cb(response);
|
cb(response);
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
const renderPreview = (previewElement, html) => {
|
const renderPreview = (html) => {
|
||||||
previewElement.innerHTML = html;
|
previewElement.innerHTML = html;
|
||||||
Protyle.mathRender(previewElement, "${servePath}/stage/protyle", true);
|
Protyle.mathRender(previewElement, "${servePath}/stage/protyle", true);
|
||||||
Protyle.mermaidRender(previewElement, "${servePath}/stage/protyle");
|
Protyle.mermaidRender(previewElement, "${servePath}/stage/protyle");
|
||||||
@ -286,6 +308,10 @@ const renderPDF = (id: string) => {
|
|||||||
Protyle.mindmapRender(previewElement, "${servePath}/stage/protyle");
|
Protyle.mindmapRender(previewElement, "${servePath}/stage/protyle");
|
||||||
Protyle.abcRender(previewElement, "${servePath}/stage/protyle");
|
Protyle.abcRender(previewElement, "${servePath}/stage/protyle");
|
||||||
Protyle.plantumlRender(previewElement, "${servePath}/stage/protyle");
|
Protyle.plantumlRender(previewElement, "${servePath}/stage/protyle");
|
||||||
|
Protyle.highlightRender(previewElement, "${servePath}/stage/protyle");
|
||||||
|
setTimeout(() => {
|
||||||
|
setLineNumberWidth(document.querySelector("#action #pageSize"));
|
||||||
|
}, 600);
|
||||||
}
|
}
|
||||||
fetchPost("/api/export/exportPreviewHTML", {
|
fetchPost("/api/export/exportPreviewHTML", {
|
||||||
id: "${id}",
|
id: "${id}",
|
||||||
@ -309,7 +335,6 @@ const renderPDF = (id: string) => {
|
|||||||
},
|
},
|
||||||
languages: {copy:"${window.siyuan.languages.copy}"}
|
languages: {copy:"${window.siyuan.languages.copy}"}
|
||||||
};
|
};
|
||||||
const previewElement = document.getElementById('preview');
|
|
||||||
previewElement.addEventListener("click", (event) => {
|
previewElement.addEventListener("click", (event) => {
|
||||||
let target = event.target;
|
let target = event.target;
|
||||||
while (target && !target.isEqualNode(previewElement)) {
|
while (target && !target.isEqualNode(previewElement)) {
|
||||||
@ -343,18 +368,22 @@ const renderPDF = (id: string) => {
|
|||||||
alert(response2.msg)
|
alert(response2.msg)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
setPadding(previewElement);
|
setPadding();
|
||||||
renderPreview(previewElement, response2.data.content);
|
renderPreview(response2.data.content);
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
actionElement.querySelector("#scale").addEventListener("input", () => {
|
actionElement.querySelector("#scale").addEventListener("input", () => {
|
||||||
actionElement.querySelector("#scaleTip").innerText = actionElement.querySelector("#scale").value;
|
actionElement.querySelector("#scaleTip").innerText = actionElement.querySelector("#scale").value;
|
||||||
})
|
})
|
||||||
|
const pageSizeElement = actionElement.querySelector("#pageSize")
|
||||||
|
pageSizeElement.addEventListener('change', () => {
|
||||||
|
setLineNumberWidth(pageSizeElement);
|
||||||
|
});
|
||||||
actionElement.querySelector("#marginsType").addEventListener('change', () => {
|
actionElement.querySelector("#marginsType").addEventListener('change', () => {
|
||||||
setPadding(previewElement);
|
setPadding();
|
||||||
});
|
});
|
||||||
actionElement.querySelector("#landscape").addEventListener('change', () => {
|
actionElement.querySelector("#landscape").addEventListener('change', () => {
|
||||||
setPadding(previewElement);
|
setPadding();
|
||||||
});
|
});
|
||||||
actionElement.querySelector('.b3-button--cancel').addEventListener('click', () => {
|
actionElement.querySelector('.b3-button--cancel').addEventListener('click', () => {
|
||||||
const {ipcRenderer} = require("electron");
|
const {ipcRenderer} = require("electron");
|
||||||
@ -386,8 +415,8 @@ const renderPDF = (id: string) => {
|
|||||||
previewElement.style.paddingTop = "0";
|
previewElement.style.paddingTop = "0";
|
||||||
previewElement.style.paddingBottom = "0";
|
previewElement.style.paddingBottom = "0";
|
||||||
});
|
});
|
||||||
setPadding(previewElement);
|
setPadding();
|
||||||
renderPreview(previewElement, response.data.content);
|
renderPreview(response.data.content);
|
||||||
});
|
});
|
||||||
</script></body></html>`;
|
</script></body></html>`;
|
||||||
const mainWindow = getCurrentWindow();
|
const mainWindow = getCurrentWindow();
|
||||||
|
Loading…
Reference in New Issue
Block a user