Siyuan Hu commited on
Commit
4babf88
·
1 Parent(s): 5340fb3

feat(debug): copy repo fonts into zip project and append font overrides so theme uses ./fonts; fix DejaVu fallback issue

Browse files
Files changed (38) hide show
  1. .DS_Store +0 -0
  2. Lato,Raleway/.DS_Store +0 -0
  3. Lato,Raleway/Lato/Lato-Black.ttf +3 -0
  4. Lato,Raleway/Lato/Lato-BlackItalic.ttf +3 -0
  5. Lato,Raleway/Lato/Lato-Bold.ttf +3 -0
  6. Lato,Raleway/Lato/Lato-BoldItalic.ttf +3 -0
  7. Lato,Raleway/Lato/Lato-Italic.ttf +3 -0
  8. Lato,Raleway/Lato/Lato-Light.ttf +3 -0
  9. Lato,Raleway/Lato/Lato-LightItalic.ttf +3 -0
  10. Lato,Raleway/Lato/Lato-Regular.ttf +3 -0
  11. Lato,Raleway/Lato/Lato-Thin.ttf +3 -0
  12. Lato,Raleway/Lato/Lato-ThinItalic.ttf +3 -0
  13. Lato,Raleway/Lato/OFL.txt +93 -0
  14. Lato,Raleway/Raleway/.DS_Store +0 -0
  15. Lato,Raleway/Raleway/OFL.txt +93 -0
  16. Lato,Raleway/Raleway/README.txt +81 -0
  17. Lato,Raleway/Raleway/Raleway-Italic-VariableFont_wght.ttf +3 -0
  18. Lato,Raleway/Raleway/Raleway-VariableFont_wght.ttf +3 -0
  19. Lato,Raleway/Raleway/static/Raleway-Black.ttf +3 -0
  20. Lato,Raleway/Raleway/static/Raleway-BlackItalic.ttf +3 -0
  21. Lato,Raleway/Raleway/static/Raleway-Bold.ttf +3 -0
  22. Lato,Raleway/Raleway/static/Raleway-BoldItalic.ttf +3 -0
  23. Lato,Raleway/Raleway/static/Raleway-ExtraBold.ttf +3 -0
  24. Lato,Raleway/Raleway/static/Raleway-ExtraBoldItalic.ttf +3 -0
  25. Lato,Raleway/Raleway/static/Raleway-ExtraLight.ttf +3 -0
  26. Lato,Raleway/Raleway/static/Raleway-ExtraLightItalic.ttf +3 -0
  27. Lato,Raleway/Raleway/static/Raleway-Italic.ttf +3 -0
  28. Lato,Raleway/Raleway/static/Raleway-Light.ttf +3 -0
  29. Lato,Raleway/Raleway/static/Raleway-LightItalic.ttf +3 -0
  30. Lato,Raleway/Raleway/static/Raleway-Medium.ttf +3 -0
  31. Lato,Raleway/Raleway/static/Raleway-MediumItalic.ttf +3 -0
  32. Lato,Raleway/Raleway/static/Raleway-Regular.ttf +3 -0
  33. Lato,Raleway/Raleway/static/Raleway-SemiBold.ttf +3 -0
  34. Lato,Raleway/Raleway/static/Raleway-SemiBoldItalic.ttf +3 -0
  35. Lato,Raleway/Raleway/static/Raleway-Thin.ttf +3 -0
  36. Lato,Raleway/Raleway/static/Raleway-ThinItalic.ttf +3 -0
  37. app.py +49 -14
  38. template/beamerthemegemini.sty +41 -17
.DS_Store ADDED
Binary file (6.15 kB). View file
 
Lato,Raleway/.DS_Store ADDED
Binary file (6.15 kB). View file
 
Lato,Raleway/Lato/Lato-Black.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:abf64cfa14645043a7c33f76435125f8b3de79c510adb938a1c16085518d4341
3
+ size 69500
Lato,Raleway/Lato/Lato-BlackItalic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e1eb271de3a571d566e534d3e521cfa46becfc789821257bc347455167d586f3
3
+ size 72000
Lato,Raleway/Lato/Lato-Bold.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d7f0b7f2570f2f28b504da1181b4d71b1420b10be2c4fd690927f1c8ee3b19c3
3
+ size 73332
Lato,Raleway/Lato/Lato-BoldItalic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e38611f4c0ff3251a58fe751991c39784d8f9be420b004891e0b9277228ec32f
3
+ size 77732
Lato,Raleway/Lato/Lato-Italic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3be26bf6973f49df6a7dfd130041017354342bfbb023e6b9610b42daeba6de34
3
+ size 75792
Lato,Raleway/Lato/Lato-Light.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fb5343c4375c38b1c3026336d355335e6a5b8531cbc9c6506eb4b6f6d67c152f
3
+ size 77208
Lato,Raleway/Lato/Lato-LightItalic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6d5176f3babd0ccba79845088f8e9ede5dbb7b408fb40161963daa95a71cef2e
3
+ size 49080
Lato,Raleway/Lato/Lato-Regular.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e82542aed8293f49fc83c4aaea566b1f6b4fc7a9ab5da11e6fb9bc0973b5324b
3
+ size 75152
Lato,Raleway/Lato/Lato-Thin.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fee1bd1daaa5efbcb93c8d074c61378dce155df0d32e00199b6a9457e427bc45
3
+ size 69976
Lato,Raleway/Lato/Lato-ThinItalic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8130560da30ad6f19994fd410f71985acafca1576592235161ffb75757635594
3
+ size 48864
Lato,Raleway/Lato/OFL.txt ADDED
@@ -0,0 +1,93 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Copyright (c) 2010-2014 by tyPoland Lukasz Dziedzic ([email protected]) with Reserved Font Name "Lato"
2
+
3
+ This Font Software is licensed under the SIL Open Font License, Version 1.1.
4
+ This license is copied below, and is also available with a FAQ at:
5
+ https://openfontlicense.org
6
+
7
+
8
+ -----------------------------------------------------------
9
+ SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
10
+ -----------------------------------------------------------
11
+
12
+ PREAMBLE
13
+ The goals of the Open Font License (OFL) are to stimulate worldwide
14
+ development of collaborative font projects, to support the font creation
15
+ efforts of academic and linguistic communities, and to provide a free and
16
+ open framework in which fonts may be shared and improved in partnership
17
+ with others.
18
+
19
+ The OFL allows the licensed fonts to be used, studied, modified and
20
+ redistributed freely as long as they are not sold by themselves. The
21
+ fonts, including any derivative works, can be bundled, embedded,
22
+ redistributed and/or sold with any software provided that any reserved
23
+ names are not used by derivative works. The fonts and derivatives,
24
+ however, cannot be released under any other type of license. The
25
+ requirement for fonts to remain under this license does not apply
26
+ to any document created using the fonts or their derivatives.
27
+
28
+ DEFINITIONS
29
+ "Font Software" refers to the set of files released by the Copyright
30
+ Holder(s) under this license and clearly marked as such. This may
31
+ include source files, build scripts and documentation.
32
+
33
+ "Reserved Font Name" refers to any names specified as such after the
34
+ copyright statement(s).
35
+
36
+ "Original Version" refers to the collection of Font Software components as
37
+ distributed by the Copyright Holder(s).
38
+
39
+ "Modified Version" refers to any derivative made by adding to, deleting,
40
+ or substituting -- in part or in whole -- any of the components of the
41
+ Original Version, by changing formats or by porting the Font Software to a
42
+ new environment.
43
+
44
+ "Author" refers to any designer, engineer, programmer, technical
45
+ writer or other person who contributed to the Font Software.
46
+
47
+ PERMISSION & CONDITIONS
48
+ Permission is hereby granted, free of charge, to any person obtaining
49
+ a copy of the Font Software, to use, study, copy, merge, embed, modify,
50
+ redistribute, and sell modified and unmodified copies of the Font
51
+ Software, subject to the following conditions:
52
+
53
+ 1) Neither the Font Software nor any of its individual components,
54
+ in Original or Modified Versions, may be sold by itself.
55
+
56
+ 2) Original or Modified Versions of the Font Software may be bundled,
57
+ redistributed and/or sold with any software, provided that each copy
58
+ contains the above copyright notice and this license. These can be
59
+ included either as stand-alone text files, human-readable headers or
60
+ in the appropriate machine-readable metadata fields within text or
61
+ binary files as long as those fields can be easily viewed by the user.
62
+
63
+ 3) No Modified Version of the Font Software may use the Reserved Font
64
+ Name(s) unless explicit written permission is granted by the corresponding
65
+ Copyright Holder. This restriction only applies to the primary font name as
66
+ presented to the users.
67
+
68
+ 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
69
+ Software shall not be used to promote, endorse or advertise any
70
+ Modified Version, except to acknowledge the contribution(s) of the
71
+ Copyright Holder(s) and the Author(s) or with their explicit written
72
+ permission.
73
+
74
+ 5) The Font Software, modified or unmodified, in part or in whole,
75
+ must be distributed entirely under this license, and must not be
76
+ distributed under any other license. The requirement for fonts to
77
+ remain under this license does not apply to any document created
78
+ using the Font Software.
79
+
80
+ TERMINATION
81
+ This license becomes null and void if any of the above conditions are
82
+ not met.
83
+
84
+ DISCLAIMER
85
+ THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
86
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
87
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
88
+ OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
89
+ COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
90
+ INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
91
+ DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
92
+ FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
93
+ OTHER DEALINGS IN THE FONT SOFTWARE.
Lato,Raleway/Raleway/.DS_Store ADDED
Binary file (6.15 kB). View file
 
Lato,Raleway/Raleway/OFL.txt ADDED
@@ -0,0 +1,93 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Copyright 2010 The Raleway Project Authors ([email protected]), with Reserved Font Name "Raleway".
2
+
3
+ This Font Software is licensed under the SIL Open Font License, Version 1.1.
4
+ This license is copied below, and is also available with a FAQ at:
5
+ https://openfontlicense.org
6
+
7
+
8
+ -----------------------------------------------------------
9
+ SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
10
+ -----------------------------------------------------------
11
+
12
+ PREAMBLE
13
+ The goals of the Open Font License (OFL) are to stimulate worldwide
14
+ development of collaborative font projects, to support the font creation
15
+ efforts of academic and linguistic communities, and to provide a free and
16
+ open framework in which fonts may be shared and improved in partnership
17
+ with others.
18
+
19
+ The OFL allows the licensed fonts to be used, studied, modified and
20
+ redistributed freely as long as they are not sold by themselves. The
21
+ fonts, including any derivative works, can be bundled, embedded,
22
+ redistributed and/or sold with any software provided that any reserved
23
+ names are not used by derivative works. The fonts and derivatives,
24
+ however, cannot be released under any other type of license. The
25
+ requirement for fonts to remain under this license does not apply
26
+ to any document created using the fonts or their derivatives.
27
+
28
+ DEFINITIONS
29
+ "Font Software" refers to the set of files released by the Copyright
30
+ Holder(s) under this license and clearly marked as such. This may
31
+ include source files, build scripts and documentation.
32
+
33
+ "Reserved Font Name" refers to any names specified as such after the
34
+ copyright statement(s).
35
+
36
+ "Original Version" refers to the collection of Font Software components as
37
+ distributed by the Copyright Holder(s).
38
+
39
+ "Modified Version" refers to any derivative made by adding to, deleting,
40
+ or substituting -- in part or in whole -- any of the components of the
41
+ Original Version, by changing formats or by porting the Font Software to a
42
+ new environment.
43
+
44
+ "Author" refers to any designer, engineer, programmer, technical
45
+ writer or other person who contributed to the Font Software.
46
+
47
+ PERMISSION & CONDITIONS
48
+ Permission is hereby granted, free of charge, to any person obtaining
49
+ a copy of the Font Software, to use, study, copy, merge, embed, modify,
50
+ redistribute, and sell modified and unmodified copies of the Font
51
+ Software, subject to the following conditions:
52
+
53
+ 1) Neither the Font Software nor any of its individual components,
54
+ in Original or Modified Versions, may be sold by itself.
55
+
56
+ 2) Original or Modified Versions of the Font Software may be bundled,
57
+ redistributed and/or sold with any software, provided that each copy
58
+ contains the above copyright notice and this license. These can be
59
+ included either as stand-alone text files, human-readable headers or
60
+ in the appropriate machine-readable metadata fields within text or
61
+ binary files as long as those fields can be easily viewed by the user.
62
+
63
+ 3) No Modified Version of the Font Software may use the Reserved Font
64
+ Name(s) unless explicit written permission is granted by the corresponding
65
+ Copyright Holder. This restriction only applies to the primary font name as
66
+ presented to the users.
67
+
68
+ 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
69
+ Software shall not be used to promote, endorse or advertise any
70
+ Modified Version, except to acknowledge the contribution(s) of the
71
+ Copyright Holder(s) and the Author(s) or with their explicit written
72
+ permission.
73
+
74
+ 5) The Font Software, modified or unmodified, in part or in whole,
75
+ must be distributed entirely under this license, and must not be
76
+ distributed under any other license. The requirement for fonts to
77
+ remain under this license does not apply to any document created
78
+ using the Font Software.
79
+
80
+ TERMINATION
81
+ This license becomes null and void if any of the above conditions are
82
+ not met.
83
+
84
+ DISCLAIMER
85
+ THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
86
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
87
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
88
+ OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
89
+ COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
90
+ INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
91
+ DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
92
+ FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
93
+ OTHER DEALINGS IN THE FONT SOFTWARE.
Lato,Raleway/Raleway/README.txt ADDED
@@ -0,0 +1,81 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Raleway Variable Font
2
+ =====================
3
+
4
+ This download contains Raleway as both variable fonts and static fonts.
5
+
6
+ Raleway is a variable font with this axis:
7
+ wght
8
+
9
+ This means all the styles are contained in these files:
10
+ Raleway/Raleway-VariableFont_wght.ttf
11
+ Raleway/Raleway-Italic-VariableFont_wght.ttf
12
+
13
+ If your app fully supports variable fonts, you can now pick intermediate styles
14
+ that aren’t available as static fonts. Not all apps support variable fonts, and
15
+ in those cases you can use the static font files for Raleway:
16
+ Raleway/static/Raleway-Thin.ttf
17
+ Raleway/static/Raleway-ExtraLight.ttf
18
+ Raleway/static/Raleway-Light.ttf
19
+ Raleway/static/Raleway-Regular.ttf
20
+ Raleway/static/Raleway-Medium.ttf
21
+ Raleway/static/Raleway-SemiBold.ttf
22
+ Raleway/static/Raleway-Bold.ttf
23
+ Raleway/static/Raleway-ExtraBold.ttf
24
+ Raleway/static/Raleway-Black.ttf
25
+ Raleway/static/Raleway-ThinItalic.ttf
26
+ Raleway/static/Raleway-ExtraLightItalic.ttf
27
+ Raleway/static/Raleway-LightItalic.ttf
28
+ Raleway/static/Raleway-Italic.ttf
29
+ Raleway/static/Raleway-MediumItalic.ttf
30
+ Raleway/static/Raleway-SemiBoldItalic.ttf
31
+ Raleway/static/Raleway-BoldItalic.ttf
32
+ Raleway/static/Raleway-ExtraBoldItalic.ttf
33
+ Raleway/static/Raleway-BlackItalic.ttf
34
+
35
+ Get started
36
+ -----------
37
+
38
+ 1. Install the font files you want to use
39
+
40
+ 2. Use your app's font picker to view the font family and all the
41
+ available styles
42
+
43
+ Learn more about variable fonts
44
+ -------------------------------
45
+
46
+ https://developers.google.com/web/fundamentals/design-and-ux/typography/variable-fonts
47
+ https://variablefonts.typenetwork.com
48
+ https://medium.com/variable-fonts
49
+
50
+ In desktop apps
51
+
52
+ https://theblog.adobe.com/can-variable-fonts-illustrator-cc
53
+ https://helpx.adobe.com/nz/photoshop/using/fonts.html#variable_fonts
54
+
55
+ Online
56
+
57
+ https://developers.google.com/fonts/docs/getting_started
58
+ https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Fonts/Variable_Fonts_Guide
59
+ https://developer.microsoft.com/en-us/microsoft-edge/testdrive/demos/variable-fonts
60
+
61
+ Installing fonts
62
+
63
+ MacOS: https://support.apple.com/en-us/HT201749
64
+ Linux: https://www.google.com/search?q=how+to+install+a+font+on+gnu%2Blinux
65
+ Windows: https://support.microsoft.com/en-us/help/314960/how-to-install-or-remove-a-font-in-windows
66
+
67
+ Android Apps
68
+
69
+ https://developers.google.com/fonts/docs/android
70
+ https://developer.android.com/guide/topics/ui/look-and-feel/downloadable-fonts
71
+
72
+ License
73
+ -------
74
+ Please read the full license text (OFL.txt) to understand the permissions,
75
+ restrictions and requirements for usage, redistribution, and modification.
76
+
77
+ You can use them in your products & projects – print or digital,
78
+ commercial or otherwise.
79
+
80
+ This isn't legal advice, please consider consulting a lawyer and see the full
81
+ license for all details.
Lato,Raleway/Raleway/Raleway-Italic-VariableFont_wght.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cabbe31da3d0ca920047af996e85c7edea205fb996b309d7d52053f510b9ecf7
3
+ size 303788
Lato,Raleway/Raleway/Raleway-VariableFont_wght.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fee471ff8d2a0827ac3fb77344fb93e6428d0f01d0e83e792b7c5e3e7da1e117
3
+ size 309444
Lato,Raleway/Raleway/static/Raleway-Black.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8ca79c75f5cda5669239e696cee3fe7494e2ca859afb8fa7334b9819e540b7df
3
+ size 163408
Lato,Raleway/Raleway/static/Raleway-BlackItalic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:99825372c6d67484242006f708283191d138fc1aac915a3e5587d486ecdf2c98
3
+ size 161904
Lato,Raleway/Raleway/static/Raleway-Bold.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:dc26a12a68cb78a83d13dcea38848af687b6d0260fa2df7ace13381508516ae1
3
+ size 163768
Lato,Raleway/Raleway/static/Raleway-BoldItalic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d16bfd8ffd7b56314a1b3ec80502ae0ae066031b10a596cac30d77ab4326112c
3
+ size 162252
Lato,Raleway/Raleway/static/Raleway-ExtraBold.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e1dd847b073c6a54d9c19ae3f496c61982be7be494cf2ed91079dbff5abb55ea
3
+ size 163876
Lato,Raleway/Raleway/static/Raleway-ExtraBoldItalic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:bf20918c9d69bd6142164769e5223d29e67dee820f718bed3e34cdd4e2122f30
3
+ size 162500
Lato,Raleway/Raleway/static/Raleway-ExtraLight.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3b23412d4a96b214bea6dbf5026812be6a9791962f71351c7a4cf39703eb4068
3
+ size 163912
Lato,Raleway/Raleway/static/Raleway-ExtraLightItalic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:76062ddd9e4ffe691ca3970e0e25dca08d39d477106d5f953310722235d9ae21
3
+ size 162200
Lato,Raleway/Raleway/static/Raleway-Italic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4f9680ef2fed5c4302d94f874a6199b350332e4719f3967bfae8035a0bf50f9b
3
+ size 162040
Lato,Raleway/Raleway/static/Raleway-Light.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fda235da5ad94ca7bcdfc7d43b9b30513cc62f05db306247bd2727f76beb6bb7
3
+ size 163836
Lato,Raleway/Raleway/static/Raleway-LightItalic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f88244bdc787efd3ffaa765d8596c62a84570d354c141218d7fcc1b103f7398e
3
+ size 162256
Lato,Raleway/Raleway/static/Raleway-Medium.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7c12e3cb8a9e36c7f635971024d321f51ad6f3e691fa91046fc59f5b3490e284
3
+ size 163852
Lato,Raleway/Raleway/static/Raleway-MediumItalic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:224cf9ef0e09a0140de01d5f4e365111819f1539a60fc4a5a629e263eff528e1
3
+ size 162160
Lato,Raleway/Raleway/static/Raleway-Regular.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:bf386500b0655a15f11a20c06a459aec2002fa2d1f44e0bc2549a08bb69a8f76
3
+ size 163840
Lato,Raleway/Raleway/static/Raleway-SemiBold.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1a6f239d4543acbf8d07d5b0eaa415b14873dc5f6662d094c54cdb7fc21958e3
3
+ size 163856
Lato,Raleway/Raleway/static/Raleway-SemiBoldItalic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9d4f7249ef07a9a482c69c4d8590df8c902f781c8500d7551cd34af483f22301
3
+ size 162372
Lato,Raleway/Raleway/static/Raleway-Thin.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5e940562e9ae89527539f3b99b5c38f0e0e67d7ef2017051d6a7cd11baa4abc3
3
+ size 163620
Lato,Raleway/Raleway/static/Raleway-ThinItalic.ttf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7cfab46e32235d968f2eac7527e0ec3cb83b84959d2b33c183a814fc4b7a3724
3
+ size 161884
app.py CHANGED
@@ -669,6 +669,31 @@ def debug_compile_output_zip():
669
  except Exception as e:
670
  logs.append(f"⚠️ left_logo adjust failed: {e}")
671
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
672
  # Compile to PDF
673
  pdf_path = _compile_tex_to_pdf(tex_path, logs)
674
  if not pdf_path or not pdf_path.exists():
@@ -736,7 +761,7 @@ def debug_compile_uploaded_zip(zip_file):
736
  logs.append("❌ No .tex file found in uploaded zip")
737
  _write_logs(LOG_PATH, logs)
738
  return "<div style='color:#b00'>No .tex found in uploaded zip</div>"
739
- # Disable logoleft if missing; also patch local theme fonts if present
740
  try:
741
  logos_dir = tex_path.parent / "logos"
742
  has_left = False
@@ -753,19 +778,29 @@ def debug_compile_uploaded_zip(zip_file):
753
  if new_txt != txt:
754
  tex_path.write_text(new_txt, encoding="utf-8")
755
  logs.append("ℹ️ No left_logo found; disabled \\logoleft in uploaded project.")
756
- # Patch theme font fallbacks if the zip includes the theme file
757
- for sty in work_zip_dir.rglob("beamerthemegemini.sty"):
758
- try:
759
- s = sty.read_text(encoding="utf-8")
760
- if "\\newfontfamily\\Raleway" in s or "\\newfontfamily\\Lato" in s:
761
- import re as _re
762
- s = _re.sub(r"\\newfontfamily\\Raleway\[[^\]]*\]\{Raleway\}", r"\\IfFontExistsTF{Raleway}{\\newfontfamily\\Raleway[Ligatures=TeX]{Raleway}}{\\newfontfamily\\Raleway[Ligatures=TeX]{DejaVu Sans}}", s)
763
- s = _re.sub(r"\\newfontfamily\\Lato\[[^\]]*\]\{Lato\}", r"\\IfFontExistsTF{Lato}{\\newfontfamily\\Lato[Ligatures=TeX]{Lato}}{\\newfontfamily\\Lato[Ligatures=TeX]{DejaVu Sans}}", s)
764
- s = _re.sub(r"\\setsansfont\{Lato\}\[[^\]]*\]", r"\\IfFontExistsTF{Lato}{\\setsansfont{Lato}[UprightFont=*-Light,ItalicFont=*-LightItalic,BoldFont=*-Regular,BoldItalicFont=*-Italic]}{\\IfFontExistsTF{DejaVu Sans}{\\setsansfont{DejaVu Sans}[BoldFont=*-Bold,ItalicFont=*-Oblique,BoldItalicFont=*-BoldOblique]}{\\setsansfont{Latin Modern Sans}}}", s)
765
- sty.write_text(s, encoding="utf-8")
766
- logs.append(f"🛠️ Patched fonts in {sty.relative_to(work_zip_dir)}")
767
- except Exception as e:
768
- logs.append(f"⚠️ Font patch failed for {sty}: {e}")
 
 
 
 
 
 
 
 
 
 
769
  except Exception as e:
770
  logs.append(f"⚠️ left_logo adjust failed: {e}")
771
  # Compile
 
669
  except Exception as e:
670
  logs.append(f"⚠️ left_logo adjust failed: {e}")
671
 
672
+ # Ensure local fonts present in project and override theme to use them
673
+ try:
674
+ src_fonts = ROOT / "template" / "fonts"
675
+ dst_fonts = work_zip_dir / "fonts"
676
+ if src_fonts.exists():
677
+ for root_dir, dirs, files in os.walk(src_fonts):
678
+ rel = Path(root_dir).relative_to(src_fonts)
679
+ out_dir = dst_fonts / rel
680
+ out_dir.mkdir(parents=True, exist_ok=True)
681
+ for fn in files:
682
+ if fn.lower().endswith((".ttf", ".otf")):
683
+ shutil.copy2(Path(root_dir)/fn, out_dir/fn)
684
+ logs.append("📁 Copied local fonts → zip_proj/fonts/")
685
+ # Append overrides into theme file(s)
686
+ for sty in work_zip_dir.rglob("beamerthemegemini.sty"):
687
+ with open(sty, "a", encoding="utf-8") as fh:
688
+ fh.write("\n% === overrides inserted for local fonts ===\n")
689
+ fh.write("\\makeatletter\\@ifpackageloaded{fontspec}{%\n")
690
+ fh.write("\\IfFileExists{fonts/Raleway/Raleway-Regular.ttf}{\\renewfontfamily\\Raleway[Path=fonts/Raleway/, UprightFont=*-Regular, ItalicFont=*-Italic, BoldFont=*-Bold, BoldItalicFont=*-BoldItalic, Ligatures=TeX]{Raleway}}{}\n")
691
+ fh.write("\\IfFileExists{fonts/Lato/Lato-Regular.ttf}{\\renewfontfamily\\Lato[Path=fonts/Lato/, UprightFont=*-Light, ItalicFont=*-LightItalic, BoldFont=*-Regular, BoldItalicFont=*-Italic, Ligatures=TeX]{Lato}\\setsansfont{Lato}[Path=fonts/Lato/, UprightFont=*-Light, ItalicFont=*-LightItalic, BoldFont=*-Regular, BoldItalicFont=*-Italic]}{}\n")
692
+ fh.write("}{ }\\makeatother\n")
693
+ logs.append(f"🛠️ Appended local font overrides in {sty.relative_to(work_zip_dir)}")
694
+ except Exception as e:
695
+ logs.append(f"⚠️ Local font setup failed: {e}")
696
+
697
  # Compile to PDF
698
  pdf_path = _compile_tex_to_pdf(tex_path, logs)
699
  if not pdf_path or not pdf_path.exists():
 
761
  logs.append("❌ No .tex file found in uploaded zip")
762
  _write_logs(LOG_PATH, logs)
763
  return "<div style='color:#b00'>No .tex found in uploaded zip</div>"
764
+ # Disable logoleft if missing; also ensure local fonts and override theme to use them
765
  try:
766
  logos_dir = tex_path.parent / "logos"
767
  has_left = False
 
778
  if new_txt != txt:
779
  tex_path.write_text(new_txt, encoding="utf-8")
780
  logs.append("ℹ️ No left_logo found; disabled \\logoleft in uploaded project.")
781
+ # Copy repo-local fonts into the zip project under ./fonts/, then append overrides into theme
782
+ try:
783
+ src_fonts = ROOT / "template" / "fonts"
784
+ dst_fonts = work_zip_dir / "fonts"
785
+ if src_fonts.exists():
786
+ for root_dir, dirs, files in os.walk(src_fonts):
787
+ rel = Path(root_dir).relative_to(src_fonts)
788
+ out_dir = dst_fonts / rel
789
+ out_dir.mkdir(parents=True, exist_ok=True)
790
+ for fn in files:
791
+ if fn.lower().endswith((".ttf", ".otf")):
792
+ shutil.copy2(Path(root_dir)/fn, out_dir/fn)
793
+ logs.append("📁 Copied local fonts zip_upload/fonts/")
794
+ for sty in work_zip_dir.rglob("beamerthemegemini.sty"):
795
+ with open(sty, "a", encoding="utf-8") as fh:
796
+ fh.write("\n% === overrides inserted for local fonts ===\n")
797
+ fh.write("\\makeatletter\\@ifpackageloaded{fontspec}{%\n")
798
+ fh.write("\\IfFileExists{fonts/Raleway/Raleway-Regular.ttf}{\\renewfontfamily\\Raleway[Path=fonts/Raleway/, UprightFont=*-Regular, ItalicFont=*-Italic, BoldFont=*-Bold, BoldItalicFont=*-BoldItalic, Ligatures=TeX]{Raleway}}{}\n")
799
+ fh.write("\\IfFileExists{fonts/Lato/Lato-Regular.ttf}{\\renewfontfamily\\Lato[Path=fonts/Lato/, UprightFont=*-Light, ItalicFont=*-LightItalic, BoldFont=*-Regular, BoldItalicFont=*-Italic, Ligatures=TeX]{Lato}\\setsansfont{Lato}[Path=fonts/Lato/, UprightFont=*-Light, ItalicFont=*-LightItalic, BoldFont=*-Regular, BoldItalicFont=*-Italic]}{}\n")
800
+ fh.write("}{ }\\makeatother\n")
801
+ logs.append(f"🛠️ Appended local font overrides in {sty.relative_to(work_zip_dir)}")
802
+ except Exception as e:
803
+ logs.append(f"⚠️ Local font setup failed: {e}")
804
  except Exception as e:
805
  logs.append(f"⚠️ left_logo adjust failed: {e}")
806
  # Compile
template/beamerthemegemini.sty CHANGED
@@ -15,37 +15,61 @@
15
  % Fonts
16
  % ====================
17
 
18
- % Prefer Raleway/Lato if available; otherwise fall back to DejaVu or Latin Modern Sans
19
  \usefonttheme{professionalfonts}
20
 
21
- \IfFontExistsTF{Raleway}{
22
- \newfontfamily\Raleway[Ligatures=TeX]{Raleway}
 
 
 
 
 
 
 
 
23
  }{
24
- \newfontfamily\Raleway[Ligatures=TeX]{DejaVu Sans}
25
- }
26
-
27
- \IfFontExistsTF{Lato}{
28
- \newfontfamily\Lato[Ligatures=TeX]{Lato}
29
- }{
30
- \newfontfamily\Lato[Ligatures=TeX]{DejaVu Sans}
31
  }
32
 
33
- \IfFontExistsTF{Lato}{
 
 
 
 
 
 
 
 
 
34
  \setsansfont{Lato}[
 
35
  UprightFont=*-Light,
36
  ItalicFont=*-LightItalic,
37
  BoldFont=*-Regular,
38
  BoldItalicFont=*-Italic
39
  ]
40
  }{
41
- \IfFontExistsTF{DejaVu Sans}{
42
- \setsansfont{DejaVu Sans}[
43
- BoldFont=*-Bold,
44
- ItalicFont=*-Oblique,
45
- BoldItalicFont=*-BoldOblique
 
 
46
  ]
47
  }{
48
- \setsansfont{Latin Modern Sans}
 
 
 
 
 
 
49
  }
50
  }
51
 
 
15
  % Fonts
16
  % ====================
17
 
18
+ % Prefer local fonts under fonts/ if present; else fallback to system fonts; else DejaVu/Latin Modern
19
  \usefonttheme{professionalfonts}
20
 
21
+ % Raleway family
22
+ \IfFileExists{fonts/Raleway/Raleway-Regular.ttf}{
23
+ \newfontfamily\Raleway[
24
+ Path=fonts/Raleway/,
25
+ UprightFont=*-Regular,
26
+ ItalicFont=*-Italic,
27
+ BoldFont=*-Bold,
28
+ BoldItalicFont=*-BoldItalic,
29
+ Ligatures=TeX
30
+ ]{Raleway}
31
  }{
32
+ \IfFontExistsTF{Raleway}{
33
+ \newfontfamily\Raleway[Ligatures=TeX]{Raleway}
34
+ }{
35
+ \newfontfamily\Raleway[Ligatures=TeX]{DejaVu Sans}
36
+ }
 
 
37
  }
38
 
39
+ % Lato family + main sans font
40
+ \IfFileExists{fonts/Lato/Lato-Regular.ttf}{
41
+ \newfontfamily\Lato[
42
+ Path=fonts/Lato/,
43
+ UprightFont=*-Light,
44
+ ItalicFont=*-LightItalic,
45
+ BoldFont=*-Regular,
46
+ BoldItalicFont=*-Italic,
47
+ Ligatures=TeX
48
+ ]{Lato}
49
  \setsansfont{Lato}[
50
+ Path=fonts/Lato/,
51
  UprightFont=*-Light,
52
  ItalicFont=*-LightItalic,
53
  BoldFont=*-Regular,
54
  BoldItalicFont=*-Italic
55
  ]
56
  }{
57
+ \IfFontExistsTF{Lato}{
58
+ \newfontfamily\Lato[Ligatures=TeX]{Lato}
59
+ \setsansfont{Lato}[
60
+ UprightFont=*-Light,
61
+ ItalicFont=*-LightItalic,
62
+ BoldFont=*-Regular,
63
+ BoldItalicFont=*-Italic
64
  ]
65
  }{
66
+ \IfFontExistsTF{DejaVu Sans}{
67
+ \setsansfont{DejaVu Sans}[BoldFont=*-Bold, ItalicFont=*-Oblique, BoldItalicFont=*-BoldOblique]
68
+ \newfontfamily\Lato[Ligatures=TeX]{DejaVu Sans}
69
+ }{
70
+ \setsansfont{Latin Modern Sans}
71
+ \newfontfamily\Lato[Ligatures=TeX]{Latin Modern Sans}
72
+ }
73
  }
74
  }
75