Skip to content

Commit 31012e5

Browse files
committed
Update materials
1 parent 3ee5415 commit 31012e5

File tree

8 files changed

+40
-31
lines changed

8 files changed

+40
-31
lines changed

code-image-generator/source_code_step_01/templates/base.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@
44
<meta charset="utf-8"/>
55
<meta name="viewport" content="width=device-width, initial-scale=1"/>
66
<title>
7-
Code to Image {% block title %}{% endblock %}
7+
Code to Image
8+
{% block title %}
9+
{% endblock title %}
810
</title>
911
<link rel="stylesheet"
1012
type="text/css"

code-image-generator/source_code_step_02/templates/base.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@
44
<meta charset="utf-8"/>
55
<meta name="viewport" content="width=device-width, initial-scale=1"/>
66
<title>
7-
Code to Image {% block title %}{% endblock %}
7+
Code to Image
8+
{% block title %}
9+
{% endblock title %}
810
</title>
911
<link rel="stylesheet"
1012
type="text/css"

code-image-generator/source_code_step_03/app.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -38,15 +38,6 @@ def reset_session():
3838
return redirect(url_for("code"))
3939

4040

41-
@app.route("/save_style", methods=["POST"])
42-
def save_style():
43-
if request.form.get("style") is not None:
44-
session["style"] = request.form.get("style")
45-
if request.form.get("code") is not None:
46-
session["code"] = request.form.get("code")
47-
return redirect(url_for("style"))
48-
49-
5041
@app.route("/style", methods=["GET"])
5142
def style():
5243
if session.get("style") is None:
@@ -56,10 +47,19 @@ def style():
5647
"message": "Select Your Style 🎨",
5748
"code": session["code"],
5849
"all_styles": list(get_all_styles()),
59-
"style_bg_color": formatter.style.background_color,
6050
"style_definitions": formatter.get_style_defs(),
51+
"style_bg_color": formatter.style.background_color,
6152
"highlighted_code": highlight(
6253
session["code"], Python3Lexer(), formatter
6354
),
6455
}
6556
return render_template("style_selection.html", **context)
57+
58+
59+
@app.route("/save_style", methods=["POST"])
60+
def save_style():
61+
if request.form.get("style") is not None:
62+
session["style"] = request.form.get("style")
63+
if request.form.get("code") is not None:
64+
session["code"] = request.form.get("code")
65+
return redirect(url_for("style"))

code-image-generator/source_code_step_03/templates/base.html

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@
55
<meta name="viewport" content="width=device-width, initial-scale=1"/>
66
<title>
77
Code to Image {% block title %}{% endblock %}
8+
Code to Image
9+
{% block title %}
10+
{% endblock title %}
811
</title>
912
<link rel="stylesheet"
1013
type="text/css"

code-image-generator/source_code_step_04/app.py

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
from pygments.lexers import Python3Lexer
77
from pygments.styles import get_all_styles
88

9-
from utils import take_screenshot
9+
from utils import take_screenshot_from_url
1010

1111
app = Flask(__name__)
1212
app.secret_key = "mysecretkey"
@@ -42,15 +42,6 @@ def reset_session():
4242
return redirect(url_for("code"))
4343

4444

45-
@app.route("/save_style", methods=["POST"])
46-
def save_style():
47-
if request.form.get("style") is not None:
48-
session["style"] = request.form.get("style")
49-
if request.form.get("code") is not None:
50-
session["code"] = request.form.get("code")
51-
return redirect(url_for("style"))
52-
53-
5445
@app.route("/style", methods=["GET"])
5546
def style():
5647
if session.get("style") is None:
@@ -60,24 +51,33 @@ def style():
6051
"message": "Select Your Style 🎨",
6152
"code": session["code"],
6253
"all_styles": list(get_all_styles()),
63-
"style_bg_color": formatter.style.background_color,
6454
"style_definitions": formatter.get_style_defs(),
55+
"style_bg_color": formatter.style.background_color,
6556
"highlighted_code": highlight(
6657
session["code"], Python3Lexer(), formatter
6758
),
6859
}
6960
return render_template("style_selection.html", **context)
7061

7162

63+
@app.route("/save_style", methods=["POST"])
64+
def save_style():
65+
if request.form.get("style") is not None:
66+
session["style"] = request.form.get("style")
67+
if request.form.get("code") is not None:
68+
session["code"] = request.form.get("code")
69+
return redirect(url_for("style"))
70+
71+
7272
@app.route("/image", methods=["GET"])
7373
def image():
74-
session_dict = {
74+
session_data = {
7575
"name": app.config["SESSION_COOKIE_NAME"],
7676
"value": request.cookies.get(app.config["SESSION_COOKIE_NAME"]),
7777
"url": request.host_url,
7878
}
7979
target_url = request.host_url + url_for("style")
80-
image_bytes = take_screenshot(target_url, session_dict)
80+
image_bytes = take_screenshot_from_url(target_url, session_data)
8181
context = {
8282
"message": "Done! 🎉",
8383
"image_b64": base64.b64encode(image_bytes).decode("utf-8"),

code-image-generator/source_code_step_04/static/styles.css

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,11 +60,11 @@ select {
6060
line-height: 1.4em;
6161
}
6262

63-
.code_picture {
63+
.code-picture {
6464
text-align: center;
6565
}
6666

67-
img {
67+
.code-picture img {
6868
margin: 1em 0;
6969
border: 1px solid #cecece;
7070
max-width: 80%;

code-image-generator/source_code_step_04/templates/base.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@
44
<meta charset="utf-8"/>
55
<meta name="viewport" content="width=device-width, initial-scale=1"/>
66
<title>
7-
Code to Image {% block title %}{% endblock %}
7+
Code to Image
8+
{% block title %}
9+
{% endblock title %}
810
</title>
911
<link rel="stylesheet"
1012
type="text/css"
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
from playwright.sync_api import sync_playwright
22

33

4-
def take_screenshot(target, session_dict):
4+
def take_screenshot_from_url(url, session_data):
55
with sync_playwright() as playwright:
66
webkit = playwright.webkit
77
browser = webkit.launch()
88
browser_context = browser.new_context(device_scale_factor=2)
9-
browser_context.add_cookies([session_dict])
9+
browser_context.add_cookies([session_data])
1010
page = browser_context.new_page()
11-
page.goto(target)
11+
page.goto(url)
1212
screenshot_bytes = page.locator(".code").screenshot()
1313
browser.close()
1414
return screenshot_bytes

0 commit comments

Comments
 (0)