-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Change logo #71
Change logo #71
Conversation
paobtorres
commented
Jun 10, 2024
•
edited by jngrad
Loading
edited by jngrad
- Added logo with no background
- Added extra logo file formats
- Added banner on README.md
- Moved logo to dedicated branch
@paobtorres please fix the history of your branch to match the main repository! |
README.md
Outdated
@@ -1,3 +1,4 @@ | |||
![banner](https://github.com/pyMBE-dev/pyMBE/tree/main/logo/banner.png) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Why delete the SVG file? EPS files are notoriously hard to edit.
- Also, why are the EPS files 10 MB large? I opened one them and it seemed to be a bitmap image containing strong JPG artifacts. Did something go wrong when exporting the SVG to EPS? EPS natively support vector graphics.
- Is the project repository the right place to store derived files like EPS/PDF/PNG? We did that in the ESPResSo project, because we used to store the entire website HTML files in the repository itself, which turned out to be a bad idea. Here we could instead store these files on a separate branch. That way, the size of the repository main branch doesn't increase whenever we update the PNG/EPS/PDF files.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Because SVG files were deprecated from PS since 2020.
- Maybe I did something wrong while saving the EPS file on PS. I should check that.
- I think that's a very good idea.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Because SVG files were deprecated from PS since 2020.
But PS isn't meant to work with vector files. Illustrator is. Do we really want our open-source project to require a commercial closed-source software to edit some of its source files? The .svg format is supported by all web browsers, while .ai and .eps formats aren't.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree that is a good idea to store the derived files in a dedicated branch:
- Should we put a README notice in the logo folder in the main so people can actually find this other branch?
- We need to decide what files we should store in main. What about the logo ( as shown in the article, .png), the background-less logo (.svg) and the banner (.png)? Then other derived files with other formats could be stored in a dedicated branch
pyMBE-logos
.
As a general philosophy, I would say that we should not rely on closed-source software but I believe that @paobtorres was simply using PS because that's the tool she is familiar with. I do not know if she has also access to Illustrator but maybe that would solve the issue with the artifacts when saving the background-less logo in .eps. I guess that one should be able to remove the background also with Gimp, although I have never managed to do it cleanly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The SVG format allows you to automatize image manipulation with command line tools, such as changing the background color or transforming text. For example, Inkscape Actions support these transformations. See jngrad/pyMBE:logo to convince yourself that we can achieve more with SVG than with EPS. The logo.svg
is the single source of truth, from which the makefile generates:
logo_plain.svg
: a version where the text is replaced with a trace, so that it looks correct even if you don't have the fonts embeddedlogo_{sepia,white,transparent}.png
: raster versions with 192dpi resolution (can be tweaked in the Makefile)logo_{sepia,white}.eps
: vector versions for printinglogo_{sepia,white}.pdf
: vector versions for LaTeX (currently broken in some web browsers, maybe my Inkscape version is too old)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jngrad thank you for this! I did not know that Inkscape had such convenient tools for image manipulation.
If we can generate the other files with command lines, would not be simpler to store the source .svg files for the logo and banner in main and provide the Makefile command line tools rather than having all other derived files stored in a branch?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would argue we need a place where these derived logos are readily available. When there isn't much time left to finalize a poster, people probably don't want to install inkscape and realize they are missing a font and need to install it too. A separate branch, or a separate repo pyMBE-dev/corporate-design
, would help us keep the pyMBE source code (and git history) more tidy. We would also no longer need to think about licensing issues w.r.t code vs. images (unless we decide to introduce pictures in e.g. tutorials...).
We could introduce a GitHub Action to install inkscape and push the generated logo files to a branch logo-build
or similar, every time branch logo
changes. Then source files and regenerable files are completely separate, and it will be clear that people need to browse the logo-build
branch to download the logos, instead of using the logo.svg
source file (which doesn't embed the font).
Regarding inclusion into readme files, this should be possible across branches and forks. For example ![pyMBE logo with sepia background](https://github.com/jngrad/pyMBE/blob/logo/logo_sepia.png)
in a Markdown file will display the image, but it won't necessarily work in a GitHub Markdown comment, where a different syntax is needed.
For more details on GitHub rendering of images, see this help page. Apparently it's possible to choose a different image based on the light/dark theme using the <picture>
feature, something I didn't know about. The <picture>
solution also allows us to specify the size of the image using the width=
attribute of the <img>
tag.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is brilliant! It might be easier for people to find the logos if they are within the same repository so I think that it is better to have them in a separated branch than in another repository. Otherwise, I think that your solution is the way to go.
Move the logo to a dedicated branch `corporate-design`. Automatically deploy PDF/PNG/EPS versions of the logo to branch `logos`. Create a pyMBE banner in two alternate versions for light and dark themes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@pm-blanco I've pushed my changes in this PR. Instructions to modify the logo are in branch corporate-design. The logos are deployed to branch logos via a GitHub Action. Dark theme users should see the version with white text.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks simply excellent. Thank you very much for your thorough work @jngrad