diff options
| -rw-r--r-- | Cargo.toml | 1 | ||||
| -rw-r--r-- | docs/images/workcardimages/das_schweigende_spiegelbild_image.png | bin | 0 -> 96608 bytes | |||
| -rw-r--r-- | docs/images/workcardimages/hubristic_failures_image.png | bin | 0 -> 97370 bytes | |||
| -rw-r--r-- | docs/images/workcardimages/mit_gutem_gewissen_image.png | bin | 0 -> 117141 bytes | |||
| -rw-r--r-- | docs/index.html | 2 | ||||
| -rw-r--r-- | docs/stories.html | 82 | ||||
| -rw-r--r-- | images/workcardimages/das_schweigende_spiegelbild_image.png (renamed from docs/images/das_schweigende_spiegelbild_image.png) | bin | 527213 -> 527213 bytes | |||
| -rw-r--r-- | images/workcardimages/hubristic_failures_image.png (renamed from docs/images/hubristic_failures_image.png) | bin | 458872 -> 458872 bytes | |||
| -rw-r--r-- | images/workcardimages/mit_gutem_gewissen_image.png (renamed from docs/images/mit_gutem_gewissen_image.png) | bin | 568149 -> 568149 bytes | |||
| -rw-r--r-- | src/images_processing.rs | 24 | ||||
| -rw-r--r-- | src/main.rs | 2 | ||||
| -rw-r--r-- | stories.json | 6 | ||||
| -rw-r--r-- | templates/stories.html | 28 |
13 files changed, 82 insertions, 63 deletions
@@ -10,3 +10,4 @@ tera = "1.17" serde = {version = "1.0", features = ["derive"]} serde_json = "1.0" anyhow = "1.0" +image = "0.24.4" diff --git a/docs/images/workcardimages/das_schweigende_spiegelbild_image.png b/docs/images/workcardimages/das_schweigende_spiegelbild_image.png Binary files differnew file mode 100644 index 0000000..7d817d7 --- /dev/null +++ b/docs/images/workcardimages/das_schweigende_spiegelbild_image.png diff --git a/docs/images/workcardimages/hubristic_failures_image.png b/docs/images/workcardimages/hubristic_failures_image.png Binary files differnew file mode 100644 index 0000000..4dccb7f --- /dev/null +++ b/docs/images/workcardimages/hubristic_failures_image.png diff --git a/docs/images/workcardimages/mit_gutem_gewissen_image.png b/docs/images/workcardimages/mit_gutem_gewissen_image.png Binary files differnew file mode 100644 index 0000000..854001d --- /dev/null +++ b/docs/images/workcardimages/mit_gutem_gewissen_image.png diff --git a/docs/index.html b/docs/index.html index bc925a0..cd7df22 100644 --- a/docs/index.html +++ b/docs/index.html @@ -5,7 +5,7 @@ <title>Home - Vithuran Vishnuthas</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> - <link rel="stylesheet" href="style.css"> + <link rel="stylesheet" href="./style.css"> </head> <body> diff --git a/docs/stories.html b/docs/stories.html index 71db5ff..173f076 100644 --- a/docs/stories.html +++ b/docs/stories.html @@ -5,7 +5,7 @@ <title>Stories - Vithuran Vishnuthas</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> - <link rel="stylesheet" href="style.css"> + <link rel="stylesheet" href="./style.css"> </head> <body> @@ -19,49 +19,43 @@ </nav> <main> - -<a href="./stories/mit_gutem_gewissen.pdf" style="background-image: url('./images/mit_gutem_gewissen_image.png');" class="work-card" download> - <!--<article class="story-section" style="background-image: url('./images/mit_gutem_gewissen_image.png');">--> - <div class="title-and-description"> - <h3>Mit gutem Gewissen</h3> - <p>Lorem ipsum dolor sit amet, officia excepteur.</p> - </div> - <div class="info"> - <span>7 Pages</span> - <span>German</span> - <span>Shortstory</span> - </div> - <!--</article>--> -</a> - -<a href="./stories/das_schweigende_spiegelbild.pdf" style="background-image: url('./images/das_schweigende_spiegelbild_image.png');" class="work-card" download> - <!--<article class="story-section" style="background-image: url('./images/das_schweigende_spiegelbild_image.png');">--> - <div class="title-and-description"> - <h3>Das schweigende Spiegelbild</h3> - <p>Em pariatur mollit ex esse exercitation amet. Nisi anim cupidatat excepteur officia.</p> - </div> - <div class="info"> - <span>2 Pages</span> - <span>German</span> - <span>Shortstory</span> - </div> - <!--</article>--> -</a> - -<a href="./stories/hubristic_failures.pdf" style="background-image: url('./images/hubristic_failures_image.png');" class="work-card" download> - <!--<article class="story-section" style="background-image: url('./images/hubristic_failures_image.png');">--> - <div class="title-and-description"> - <h3>Hubristic Failures</h3> - <p>Ui minim labore adipisicing minim sint cillum sint consectetur cupidatat.ex esse exercitation idatat excepteur officia.</p> - </div> - <div class="info"> - <span>2 Pages</span> - <span>English</span> - <span>Screenplay</span> - </div> - <!--</article>--> -</a> - + + <a href="./stories/mit_gutem_gewissen.pdf" style="background-image: url('./images/workcardimages/mit_gutem_gewissen_image.png');" class="work-card" download> + <div class="title-and-description"> + <h3>Mit gutem Gewissen</h3> + <p>Lorem ipsum dolor sit amet, officia excepteur.</p> + </div> + <div class="info"> + <span>7 Pages</span> + <span>German</span> + <span>Shortstory</span> + </div> + </a> + + <a href="./stories/das_schweigende_spiegelbild.pdf" style="background-image: url('./images/workcardimages/das_schweigende_spiegelbild_image.png');" class="work-card" download> + <div class="title-and-description"> + <h3>Das schweigende Spiegelbild</h3> + <p>Em pariatur mollit ex esse exercitation amet. Nisi anim cupidatat excepteur officia.</p> + </div> + <div class="info"> + <span>2 Pages</span> + <span>German</span> + <span>Shortstory</span> + </div> + </a> + + <a href="./stories/hubristic_failures.pdf" style="background-image: url('./images/workcardimages/hubristic_failures_image.png');" class="work-card" download> + <div class="title-and-description"> + <h3>Hubristic Failures</h3> + <p>Ui minim labore adipisicing minim sint cillum sint consectetur cupidatat.ex esse exercitation idatat excepteur officia.</p> + </div> + <div class="info"> + <span>2 Pages</span> + <span>English</span> + <span>Screenplay</span> + </div> + </a> + </main> <footer> diff --git a/docs/images/das_schweigende_spiegelbild_image.png b/images/workcardimages/das_schweigende_spiegelbild_image.png Binary files differindex 115a343..115a343 100644 --- a/docs/images/das_schweigende_spiegelbild_image.png +++ b/images/workcardimages/das_schweigende_spiegelbild_image.png diff --git a/docs/images/hubristic_failures_image.png b/images/workcardimages/hubristic_failures_image.png Binary files differindex a96bd3e..a96bd3e 100644 --- a/docs/images/hubristic_failures_image.png +++ b/images/workcardimages/hubristic_failures_image.png diff --git a/docs/images/mit_gutem_gewissen_image.png b/images/workcardimages/mit_gutem_gewissen_image.png Binary files differindex d320e63..d320e63 100644 --- a/docs/images/mit_gutem_gewissen_image.png +++ b/images/workcardimages/mit_gutem_gewissen_image.png diff --git a/src/images_processing.rs b/src/images_processing.rs new file mode 100644 index 0000000..483d44c --- /dev/null +++ b/src/images_processing.rs @@ -0,0 +1,24 @@ +use anyhow::{Context, Result}; + +// resize all work card images to 250 x 250 px +pub fn resize_workcard_images() -> Result<Vec<()>> { + let mut result: Vec<()> = Vec::new(); + for image_file in std::fs::read_dir("images/workcardimages")? { + let path = image_file?.path(); + let filename = if let Some(name) = &path.to_str() { + Ok(format!("docs/{}", name)) + } else { + Err(anyhow::Error::msg("")) + }; + + let img = image::open(&path)?; + let processed_image = img.resize(250, 250, image::imageops::FilterType::Triangle); + let mut output_file = std::fs::File::create(filename?)?; + result.push( + processed_image + .write_to(&mut output_file, image::ImageFormat::Png) + .with_context(|| format!("Failed to resize work card image from {:?}", path))?, + ); + } + Ok(result) +} diff --git a/src/main.rs b/src/main.rs index 942b621..39d4b9d 100644 --- a/src/main.rs +++ b/src/main.rs @@ -3,9 +3,11 @@ use tera::{Context, Tera}; use crate::works::Works; +mod images_processing; mod works; fn main() -> Result<()> { + images_processing::resize_workcard_images()?; // new tera instance let tera = Tera::new("templates/**/*.html")?; diff --git a/stories.json b/stories.json index 45bb7a2..e39aa83 100644 --- a/stories.json +++ b/stories.json @@ -4,7 +4,7 @@ "title": "Mit gutem Gewissen", "description": "Lorem ipsum dolor sit amet, officia excepteur.", "path_to_document": "./stories/mit_gutem_gewissen.pdf", - "path_to_image": "./images/mit_gutem_gewissen_image.png", + "path_to_image": "mit_gutem_gewissen_image.png", "number_of_pages": 7, "story_type": "Shortstory", "language": "German" @@ -14,7 +14,7 @@ "title": "Das schweigende Spiegelbild", "description": "Em pariatur mollit ex esse exercitation amet. Nisi anim cupidatat excepteur officia.", "path_to_document": "./stories/das_schweigende_spiegelbild.pdf", - "path_to_image": "./images/das_schweigende_spiegelbild_image.png", + "path_to_image": "das_schweigende_spiegelbild_image.png", "number_of_pages": 2, "story_type": "Shortstory", "language": "German" @@ -24,7 +24,7 @@ "title": "Hubristic Failures", "description": "Ui minim labore adipisicing minim sint cillum sint consectetur cupidatat.ex esse exercitation idatat excepteur officia.", "path_to_document": "./stories/hubristic_failures.pdf", - "path_to_image": "./images/hubristic_failures_image.png", + "path_to_image": "hubristic_failures_image.png", "number_of_pages": 2, "story_type": "Screenplay", "language": "English" diff --git a/templates/stories.html b/templates/stories.html index 4c1267b..481a431 100644 --- a/templates/stories.html +++ b/templates/stories.html @@ -1,19 +1,17 @@ {% extends "base.html" %} {% block title %}Stories{% endblock title %} {% block content %} -{% for work in works %} -<a href="{{work.path_to_document}}" style="background-image: url('{{work.path_to_image}}');" class="work-card" download> - <!--<article class="story-section" style="background-image: url('{{work.path_to_image}}');">--> - <div class="title-and-description"> - <h3>{{work.title}}</h3> - <p>{{work.description}}</p> - </div> - <div class="info"> - <span>{{work.number_of_pages}} Pages</span> - <span>{{work.language}}</span> - <span>{{work.story_type}}</span> - </div> - <!--</article>--> -</a> -{% endfor %} + {% for work in works %} + <a href="{{work.path_to_document}}" style="background-image: url('./images/workcardimages/{{work.path_to_image}}');" class="work-card" download> + <div class="title-and-description"> + <h3>{{work.title}}</h3> + <p>{{work.description}}</p> + </div> + <div class="info"> + <span>{{work.number_of_pages}} Pages</span> + <span>{{work.language}}</span> + <span>{{work.story_type}}</span> + </div> + </a> + {% endfor %} {% endblock content %} |
