Skip to content

Added updated bitcoin PNG / SVG icon#199

Closed
Bosch-0 wants to merge 3 commits into
bitcoin-core:masterfrom
Bosch-0:bitcoin_icon
Closed

Added updated bitcoin PNG / SVG icon#199
Bosch-0 wants to merge 3 commits into
bitcoin-core:masterfrom
Bosch-0:bitcoin_icon

Conversation

@Bosch-0
Copy link
Copy Markdown

@Bosch-0 Bosch-0 commented Jan 27, 2021

In reference to #147 (comment) Added the visually updated bitcoin icon (also discussed #89), both the production PNG and source SVG version. It was requested that a seperate PR be open for the artwork change so here it is.

Images are the same dimensions as previous bitcoin.png file so should render fine in the GUI.

Also made some significant file size improvements without effecting image quality. bitcoin.png was optimized using optimize-png.py

Original bitcoin.png file size: 306 KB

New updated bitcoin.png file after optimizing: 21.4 KB

An overall 92.81% reduction.

The vector used is also much more simple (the blur on the original SVG added some extra complexity).

Left is original right is updated icon.

Group 133

Copy link
Copy Markdown
Contributor

@promag promag left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK.

@@ -1,58 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Keep? And license?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

needs to update

Copyright: Bitboy, Jonas Schnelli

Copy link
Copy Markdown
Contributor

@jarolrod jarolrod left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK

One thing I noticed with this Icon and the previous one is that there are visually obvious rough edges (for like of a better term, not a designer). They are less obvious on the old icon because it used a shadow effect. Now that we are doing away with the shadow effect, these rough edges are more obvious. How can we fix this? Here are some screenshots showing this behavior:

v0.21: Old Icon: rough edges on the and the outside of the circle
Screen Shot 2021-01-27 at 9 38 13 AM

PR: New Icon: same rough edges
Screen Shot 2021-01-27 at 9 35 07 AM

@Rspigler
Copy link
Copy Markdown
Contributor

Concept ACK

@RandyMcMillan
Copy link
Copy Markdown
Contributor

Concept ACK - test on 4k/HD displays needed.

@jarolrod
Copy link
Copy Markdown
Contributor

Shouldn't the bitcoin.ico, bitcoin.icns, and bitcoin_testnet.ico files also be updated under /src/qt/res?

@RandyMcMillan
Copy link
Copy Markdown
Contributor

@jarolrod - I believe these updates should be under their own PRs - this way any issues building for different platforms can be isolated to individual PRs.

@jarolrod
Copy link
Copy Markdown
Contributor

jarolrod commented Feb 9, 2021

@RandyMcMillan This PR should handle the transition to a new Logo. The three other files need to be updated (bitcoin.ico, bitcoin.icns and bitcoin_testnet.ico) should not need three seperate PR's. They can be a part of this PR in the form of seperate commits.

@Talkless
Copy link
Copy Markdown

Talkless commented Mar 7, 2021

Concept ACK.

@jarolrod about rough edges: looks like there's missing QPainter::SmoothPixmapTransform render hint (https://doc.qt.io/qt-5/qpainter.html#RenderHint-enum). I do see slight difference if I add pixPaint.setRenderHint(QPainter::SmoothPixmapTransform); after line 58 (after pixPaint constructor).

@jarolrod
Copy link
Copy Markdown
Contributor

jarolrod commented Mar 7, 2021

@Talkless nice mind opening a PR, it could potentially fix #200

Copy link
Copy Markdown
Contributor

@shaavan shaavan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Concept ACK

The new Icon looks Great! And the simple 2D looks give it a modern and minimalistic touch. And the reduced size of the icon improves the efficiency of its loading.

I tested on all the networks, and I am attaching the screenshots of their new splash screens.

Mainnet Testnet
mainnet testnet
Regtest Signet
regtest signet

I was just curious if there was any specific reason behind changing the hex value of the color of the mainnet icon, lightening it a few shades?

@Talkless

I do see slight difference if I add pixPaint.setRenderHint(QPainter::SmoothPixmapTransform);

I tried to replicate what you suggested using the RenderHint but could not see any notable difference.

I tried two versions of the changes.

  1. With QPainter::SmoothPixmapTransformand QPainter::Antialiasing:
diff --git a/src/qt/splashscreen.cpp b/src/qt/splashscreen.cpp
index 2292c01d6..629c924c2 100644
--- a/src/qt/splashscreen.cpp
+++ b/src/qt/splashscreen.cpp
@@ -71,6 +71,9 @@ SplashScreen::SplashScreen(const NetworkStyle* networkStyle)
     const QSize requiredSize(1024,1024);
     QPixmap icon(networkStyle->getAppIcon().pixmap(requiredSize));

+    pixPaint.setRenderHint(QPainter::Antialiasing,true);
+    pixPaint.setRenderHint(QPainter::SmoothPixmapTransform,true);
+

     pixPaint.drawPixmap(rectIcon, icon);

Result:

anti-alias

  1. With QPainter::SmoothPixmapTransformand QPainter::Antialiasing + Using QIcon::paint instead of QPainter::drawPixmap
diff --git a/src/qt/splashscreen.cpp b/src/qt/splashscreen.cpp
index 2292c01d6..f4fd113af 100644
--- a/src/qt/splashscreen.cpp
+++ b/src/qt/splashscreen.cpp
@@ -71,7 +71,12 @@ SplashScreen::SplashScreen(const NetworkStyle* networkStyle)
     const QSize requiredSize(1024,1024);
     QPixmap icon(networkStyle->getAppIcon().pixmap(requiredSize));

-    pixPaint.drawPixmap(rectIcon, icon);
+    pixPaint.setRenderHint(QPainter::Antialiasing,true);
+    pixPaint.setRenderHint(QPainter::SmoothPixmapTransform,true);
+
+    QIcon ico;
+    ico.addPixmap(icon);
+    ico.paint(&pixPaint, rectIcon);

Result:

icon

@Talkless, it would be helpful if you could share how you used the Renderhints to get the smoother version of icons. Thanks.

@hebasto
Copy link
Copy Markdown
Member

hebasto commented Jan 13, 2022

Is this still actual?

@Bosch-0
Copy link
Copy Markdown
Author

Bosch-0 commented Jan 18, 2022

I'd suggest moving all design related efforts to the https://github.com/bitcoin-core/gui-qml repo

@hebasto
Copy link
Copy Markdown
Member

hebasto commented May 31, 2022

I'd suggest moving all design related efforts to the https://github.com/bitcoin-core/gui-qml repo

Closing here.

@hebasto hebasto closed this May 31, 2022
@bitcoin-core bitcoin-core locked and limited conversation to collaborators May 31, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants