Mitigate Vulnerabilities: CVE-2022-36033, CVE-2021-37714, CVE-2021-29425 #8

Closed
Luke1298 wants to merge 5 commits from master into master
5 changed files with 27 additions and 8 deletions

View file

@ -116,7 +116,7 @@ When set to a map, the map should include CSS styles for the HTML `<body>` tag o
default styles shown above. Two additional keys can be set in this map:
* `:styles` a single file or vector of filenames pointing to any additional CSS stylesheets to be included.
* `:fonts` a sequence of maps of the form `{:font-family "font-family-name-here" :src "/path/to/custom-font.ttf"}` which allows you to use custom fonts in other CSS style definitions using the `:font-family` name specified here.
* `:fonts` a sequence of maps of the form `{:font-family "font-family-name-here" :src "file:/path/to/custom-font.ttf"}` which allows you to use custom fonts in other CSS style definitions using the `:font-family` name specified here. Note that to use a relative font path with `:src`, just drop the `file:` prefix and of course don't include a leading slash.
If you want to include your own custom CSS styles without the base `htmltopdf-base.css` stylesheet being included nor
any other base styles being injected, then you can specify either a single CSS filename or a vector of multiple CSS

View file

@ -4,12 +4,12 @@
:license {:name "GNU Lesser General Public License v3.0"
:url "https://www.gnu.org/licenses/lgpl.html"}
:dependencies [[com.openhtmltopdf/openhtmltopdf-core "1.0.8"]
[com.openhtmltopdf/openhtmltopdf-pdfbox "1.0.8"]
[com.openhtmltopdf/openhtmltopdf-rtl-support "1.0.8"]
[com.openhtmltopdf/openhtmltopdf-svg-support "1.0.8"]
[org.jsoup/jsoup "1.12.1"]
[commons-io/commons-io "2.6"]
:dependencies [[com.openhtmltopdf/openhtmltopdf-core "1.0.10"]
[com.openhtmltopdf/openhtmltopdf-pdfbox "1.0.10"]
[com.openhtmltopdf/openhtmltopdf-rtl-support "1.0.10"]
[com.openhtmltopdf/openhtmltopdf-svg-support "1.0.10"]
[org.jsoup/jsoup "1.15.3"]
[commons-io/commons-io "2.11.0"]
[hiccup "1.0.5"]]
:resource-paths ["resources"]

View file

@ -209,7 +209,8 @@
(fn [{:keys [font-family src]}]
["@font-face"
{:font-family font-family
:src (str "url(\"" (utils/string->url-or-file src) "\")")}])
; TODO: maybe should use whatever the current uri-resolver function is for this ?
:src (str "url(\"" src #_(utils/string->url-or-file src) "\")")}])
fonts)))
(defn build-base-css-styles

Binary file not shown.

View file

@ -185,3 +185,21 @@
:page nil
:debug {:display-html? true
:display-options? true}})))
(comment
(let [filename "test-custom-font.pdf"
relative-font-path "FirstTimeWriting-DOy8d.ttf"
absolute-font-path (str (io/resource relative-font-path))]
(println "\n **** " filename " **** \n")
(->pdf
[:div
[:h1 "Custom fonts!"]
[:p {:style "font-family: custom-font-relative"} "This should be styled in a custom font, specified via relative path!"]
[:p {:style "font-family: custom-font-absolute"} "This should also be styled with a custom font, but specified via an absolute path!"]]
filename
{:styles {:fonts [{:font-family "custom-font-relative"
:src relative-font-path}
{:font-family "custom-font-absolute"
:src relative-font-path}]}
:debug {:display-html? true
:display-options? true}})))