Post pobrano z: STZAP #5

Post pobrano z: STZAP #5

Post pobrano z: A well camouflaged copycat? / Duo sur canapé
![]() |
![]() |
| THE ORIGINAL? ESPN TV Channel “all day, everyday” – 2008 Source : Cannes Lions BRONZE Agency : Saatchi & Saatchi (Singapore) |
LESS ORIGINAL Century Link “300HD TV channels” – 2017 Source : Luerzer’s Archive Agency : Arnold, Boston (USA) |
Post pobrano z: An unscheduled coincidence / Une coïncidence non planifiée?
![]() |
![]() |
| THE ORIGINAL? Mc Donald’s– 2017 “schedule some time for a classic” Source : Coloribus Agency : Cossette Vancouver (Canada) |
THE ORIGINAL? Mc Donald’s – 2017 “you’ve earned it” Cannes Lions BRONZE Agency : THJNK (Germany) |
Post pobrano z: A Huge Directory of Free Fonts that You Can Download
Typically, if you’re looking for a free font, the choices many websites offer tend to be somewhat limited. On the other hand, when a website offers thousands of free fonts, it sounds almost too good to be true.
You can also be excused for wondering how you could ever find a free font that meets your needs if you have to sift through thousands of potential candidates.
FFonts.net offers more than just a few thousand free fonts. This website has in fact compiled tens of thousands of free fonts; somewhere between 40,000 and 50,000 to be more exact; all neatly placed in 87 different categories.
Whenever you come across a free font that appeals to you, you can preview it, add it to your wish list, download it, or continue your search if it’s not exactly to your liking.
FFonts makes it all sound easy, and it is.
FFonts’ categories are listed on the left side of their web page. As you scroll down, you’ll find categories containing just a few fonts, many that contain several hundred different fonts, and a few that have several thousand to offer.
There’s an 88th category that contains roughly 25,000 fonts that have yet to be categorized or can’t easily be placed in a specific category.
Are you looking for fonts that were popular in the 50s, 60s, or 80s? What about Art Deco, Art Nouveau, Classic, or Calligraphic fonts? There are selections of Formal fonts, Industrial fonts, Corporate fonts, and Professional fonts that could fit in with the appropriate website designs.
Plenty of wild and weird font styles are available and ready for you to browse through in the Quirky fonts, Wild fonts, Messy Fonts, and Funky fonts categories.
If you’re in need of a high-tech font style, there’s a Hi-Tech category, a Computer category, and a Sci-Fi category; and the list goes on. Serif and Sans Serif fonts haven’t been forgotten either.
You can zero in on the font you’re looking for, or one that’s close enough, by entering a name or keyword in the search box, browsing through a given category, or searching alphabetically.
Bear in mind that browsing through such a large collection of fonts can easily become addictive, and succumbing to impulse shopping when looking through such a large collection is not unheard of.
Fortunately, FFonts provides a wish list you can add to for eventual downloading.
Once you’ve found the font you want, click on it for a preview. You’ll be provided with a list of characters the font supports and upper and lower-case examples. There’s also a box where you can enter a string of text to get a better picture of how the font will appear in actual use.
The preview page also includes download, web download, wish list, and share buttons.
There’s no need to register to download one or more free fonts. You’re limited to 50 per day; more than enough for most purposes. After you hit the download button, you’ll receive an exec file. When you run the exec file, a zip file will be placed on your computer. When you open it, you’ll be presented with several boxes. You’ll probably want to uncheck most or all of them and select “Custom Installation” to avoid having programs you probably don’t want or need installed on your computer.
The FFonts website’s FAQ page provides details on how to install a font under Windows, Mac OS, and Linux. It also contains a cautionary note that suggests installing1,000 fonts or more could slow your computer’s operation.
If you plan to download multiple fonts at once, simply add them to your wish list. All you have to do is hold down the CTRL key and click on each font on your wish list you want to download.
FFonts has been on the web for more than 8 years. There were some complaints in years past regarding malware and spanning, but they appear to have been addressed. You’ll still want to make use of the custom installation option to avoid having extras added to your computer (a different browser for example); or, you can opt for the Premium Version to avoid the issue entirely.
Neither Norton Safe Web or McAfee findings reported any security issues, and Scam Advisor gives FFonts a highly trusted rating. The bottom line is that FFonts is safe to use.
The FFonts Premium Version is ideal for heavy users. This version enables you to download up to 200 font files and/or 200 web font files per day (versus the standard 50). You also have the option to download the FFonts’ 14,000 font collection.
A premium feature that both heavy and occasional users will like is the absence of ads, allowing you to avoid the possibility of mistakenly downloading a program you don’t want. Priced at $29 per year, the Premium Version is quite affordable.
Thousands of fonts may sound like a huge number, but having a resource like FFonts to tap into all but guarantees you’ll find the font you need. So many cool and unusual fonts can also inspire you to try new and different design approaches.
As far as pros and cons are concerned, the only real negative about this website are the ads that accompany the standard version downloads. These can, however, be avoided by using custom search, or by selecting the premium version. The preview pages are a definite plus, as is the well thought out font categorization scheme, and the wish list feature that allows you to save fonts and download them later.
Post pobrano z: Get a free .design domain today!

.com is not the only option when you shop for a domain anymore. For design professionals, the .design domain is THE new branding tool to improve your online presence. Creative and precise, .design has been adopted by some of the most innovative companies (see facebook.design, airbnb.design, kohler.design, atlassian.design) and thousands of individuals and agencies. Take the advantage and claim your free .design domain today. Offer also includes 1 year free email hosting (WHOIS privacy and SSL certs are always free!).
As a designer, you probably understand the need of diversity in marketing and communication better than most, and you would really stand out if you don’t only get a .design domain for yourself or your business, but also for your clients. In the era of design thinking, design is not only associated with creating pretty things (which was never the role of design by the way), but also with a thinking process and product-oriented thinking.
Who refuses free stuff? Nobody! And that’s exactly what is offered here, a free .design domain for a year, so don’t miss the chance. Start thinking about domain names for your promotion now.
Click here to claim your free .design name!
Post pobrano z: Design deals for the week
Every week, we’ll give you an overview of the best deals for designers, make sure you don’t miss any by subscribing to our deals feed. You can also follow the recently launched website Type Deals if you are looking for free fonts or font deals.
Darwin Pro comes in 7 weights plus italics and includes alternative characters available as an OpenType feature as well as oldstyle figures, numerators and denominators.
$17 instead of $189 – Get it now!

Or go for a full rebranding now, with huge availability in the .TECH domain world! And we’ve arranged a phenomenal deal for you to get your choice of a 1-year, 5-year or 7-year .TECH registration for a whoping 90% off, starting at just $2.99!
$2.99 instead of $49.99 – Get it now!

This powerful tool creates a personal knowledge base for you to easily and quickly communicate across all of your devices! Simply save snippets (emails, signatures, sentences, blocks of code, etc.) and call them up with a quick keyboard shortcut, with all your snippets synchronized across all your devices!
$19 instead of $39.96 – Get it now!

Made up of 3 unique weights, this professional script font also features a shadow layer for each, resulting in 6 total fonts. With loads of OpenType features, you’ll have the perfect typeface for everything from menus to logos.
$15 instead of $71 – Get it now!

Add a little light to your latest project with this illuminating set of Adobe Illustrator brushes from Artifex Forge! You’ll get 28 flexible neon tube brushes that were sourced from real neon lights, to give your artwork a true-to-life feel. With multiple highlight options and a full-on walk-through guide, this deal is sure to brighten your day.
$7 instead of $15 – Get it now!

Post pobrano z: Chatty feet artistic box: when Feet Mondrian meets Jackson Pollsock

If you think socks are just something you wear for protecting your feet from the cold and from friction in your shoes, think again! Canadian Prime Minister Justin Trudeau has a long history of stealing the show by wearing shiny socks (while still wearing a suit), the New York Times even wrote an article on his “socks diplomacy“. Recently, it’s Leo Varadkar, Ireland’s Prime Minister, who grabbed everybody’s attention with his socks while meeting… Justin Trudeau!
Whether you want to start a political career or just like cool socks, Chatty Feet got you covered (or at least your feet). They regularly release new cool socks, and this artistic set is the latest example. Including Basquiatoe, Feet Mondrian, Jackson Pollsock, and Sole-Adore Dali, this box is everthing an art lover would dream of. Perfect for a gift to your artsy friends… or for a Canadian Prime Minister.




Post pobrano z: Print Odyssey: The ultimate Printing Survival Kit for Graphic Designers

Being a graphic designer, it can be tedious to explain your clients how the work you are doing for them will be printed, folded, and binded. Even if you show them mockups or explain them in details, it’s not the same as seeing it in real.
A Print Odyssey solves that problem, it provides you with plenty of the most common prints you may create for your clients, making your communication with them much easier. It comes in one big box that you can store convienently and take out for client meetings. The box comprises the following:

We took a few photos of the box and its content, but you will see everything in the unboxing video.
If you feel ready to improve your workflow and relationship with customers, you can get your own copy of the box at a discounted price using the following coupon: designerdaily




Post pobrano z: Glue Cross-Browser Responsive Irregular Images with Sticky Tape
I recently came across this Atlas of Makers by Vasilis van Gemert. Its fun and quirky appearance made me look under the hood and it was certainly worth it! What I discovered is that it was actually built making use of really cool features that so many articles and talks have been written about over the past few years, but somehow don’t get used that much in the wild – the likes of CSS Grid, custom properties, blend modes, and even SVG.
SVG was used in order to create the irregular images that appear as if they were glued onto the page with the pieces of neon sticky tape. This article is going to explain how to recreate that in the simplest possible manner, without ever needing to step outside the browser. Let’s get started!
The first thing we do is pick an image we start from, for example, this pawesome snow leopard:

The next thing we do is get a rough polygon we can fit the cat in. For this, we use Bennett Feely’s Clippy. We’re not actually going to use CSS clip-path since it’s not cross-browser yet (but if you want it to be, please vote for it – no sign in required), it’s just to get the numbers for the polygon points really fast without needing to use an actual image editor with a ton of buttons and options that make you give up before even starting.
We set the custom URL for our image and set custom dimensions. Clippy limits these dimensions based on viewport size, but for us, in this case, the actual dimensions of the image don’t really matter (especially since the output is only going to be % values anyway), only the aspect ratio, which is 2:3 in the case of our cat picture.

We turn on the „Show outside clip-path” option on to make it easier to see what we’ll be doing.

clip-path” option.We then choose to use a custom polygon for our clipping path, we select all the points, we close the path and then maybe tweak some of their positions.
This has generated the CSS clip-path code for us. We copy just the list of points (as % values), bring up the console and paste this list of points as a JavaScript string:
let coords = '69% 89%, 84% 89%, 91% 54%, 79% 22%, 56% 14%, 45% 16%, 28% 0, 8% 0, 8% 10%, 33% 33%, 33% 70%, 47% 100%, 73% 100%';
We get rid of the % characters and split the string:
coords = coords.replace(/%/g, '').split(', ').map(c => c.split(' '));
We then set the dimensions for our image:
let dims = [736, 1103];
After that, we scale the coordinates we have to the dimensions of our image. We also round the values we get because we’re sure not to need decimals for a rough polygonal approximation of the cat in an image that big.
coords = coords.map(c => c.map((c, i) => Math.round(.01*dims[i]*c)));
Finally, we bring this to a form we can copy from dev tools:
`[${coords.map(c => `[${c.join(', ')}]`).join(', ')}]`;

Now we move on to generating our SVG with Pug. Here’s where we use the array of coordinates we got at the previous step:
- var coords = [[508, 982], [618, 982], [670, 596], [581, 243], [412, 154], [331, 176], [206, 0], [59, 0], [59, 110], [243, 364], [243, 772], [346, 1103], [537, 1103]];
- var w = 736, h = 1103;
svg(viewBox=[0, 0, w, h].join(' '))
clipPath#cp
polygon(points=coords.join(' '))
image(xlink:href='snow_derpard.jpg'
width=w height=h
clip-path='url(#cp)')
This gives us the irregular shaped image we’ve been after:
See the Pen by thebabydino (@thebabydino) on CodePen.
Now let’s move on to the pieces of sticky tape. In order to generate them, we use the same array of coordinates. Before doing anything else at this step, we read its length so that we can loop through it:
-// same as before
- var n = coords.length;
svg(viewBox=[0, 0, w, h].join(' '))
-// same as before
- for(var i = 0; i < n; i++) {
- }
Next, within this loop, we have a random test to decide whether we have a strip of sticky tape from the current point to the next point:
- for(var i = 0; i < n; i++) {
- if(Math.random() > .5) {
path(d=`M${coords[i]} ${coords[(i + 1)%n]}`)
- }
- }
At first sight, this doesn’t appear to do anything.
However, this is because the default stroke is none. Making this stroke visible (by setting it to an hsl() value with a randomly generated hue) and thicker reveals our sticky tape:
stroke: hsl(random(360), 90%, 60%);
stroke-width: 5%;
mix-blend-mode: multiply
We’ve also set mix-blend-mode: multiply on it so that overlap becomes a bit more obvious.
See the Pen by thebabydino (@thebabydino) on CodePen.
Looks pretty good, but we still have a few problems here.
The first and most obvious one being that this isn’t cross-browser. mix-blend-mode doesn’t work in Edge (if you want it, don’t forget to vote for it). The way we can get a close enough effect is by making the stroke semitransparent just for Edge.
My initial idea here was to do this in a way that’s only supported in Edge for now: using a calc() value whose result isn’t an integer for the RGB components. The problem is that we have an hsl() value, not an rgb() one. But since we’re using Sass, we can extract the RGB components:
$c: hsl(random(360), 90%, 60%);
stroke: $c;
stroke: rgba(calc(#{red($c)} - .5), green($c), blue($c), .5)
The last rule is the one that gets applied in Edge, but is discarded due to the calc() result in Chrome and simply due to the use of calc() in Firefox, so we get the result we want this way.

stroke rule seen as invalid in Chrome (left) and Firefox (right) dev tools.However, this won’t be the case anymore if the other browsers catch up with Edge here.
So a more future-proof solution would be to use @supports:
path {
$c: hsl(random(360), 90%, 60%);
stroke: rgba($c, .5);
@supports (mix-blend-mode: multiply) { stroke: $c }
}
The second problem is that we want our strips to expand a bit beyond their end points. Fortunately, this problem has a straightforward fix: setting stroke-linecap to square. This effectively makes our strips extend by half a stroke-width beyond each of their two ends.
See the Pen by thebabydino (@thebabydino) on CodePen.
The final problem is that our sticky strips get cut off at the edge of our SVG. Even if we set the overflow property to visible on the SVG, the container our SVG is in might cut it off anyway or an element coming right after might overlap it.
So what we can try to do is increase the viewBox space all around the image by an amount we’ll call p that’s just enough to fit our sticky tape strips.
-// same as before
- var w1 = w + 2*p, h1 = h + 2*p;
svg(viewBox=[-p, -p, w1, h1].join(' '))
-// same as before
The question here is… how much is that p amount?
Well, in order to get that value, we need to take into account the fact that our stroke-width is a % value. In SVG, a % value for something like the stroke-width is computed relative to the diagonal of the SVG region. In our case, this SVG region is a rectangle of width w and height h. If we draw the diagonal of this rectangle, we see that we can compute it using Pythagora’s theorem in the yellow highlighted triangle.
viewBox width and height.So our diagonal is:
- var d = Math.sqrt(w*w + h*h);
From here, we can compute the stroke-width as 5% of the diagonal. This is equivalent to multiplying the diagonal (d) with a .05 factor:
- var f = .05, sw = f*d;
Note that this is moving from a % value (5%) to a value in user units (.05*d). This is going to be convenient as, by increasing the viewBox dimensions we also increase the diagonal and, therefore, what 5% of this diagonal is.
The stroke of any path is drawn half inside, half outside the path line. However, we need to increase the viewBox space by more than half a stroke-width. We also need to take into account the fact that the stroke-linecap extends beyond the endpoints of the path by half a stroke-width:
stroke-width and stroke-linecap: square.Now let’s consider the situation when a point of our clipping polygon is right on the edge of our original image. We only consider one of the polygonal edges that have an end at this point in order to simplify things (everything is just the same for the other one).
We take the particular case of a strip along a polygonal edge having one end E on the top edge of our original image (and of the SVG as well).

We want to see by how much this strip can extend beyond the top edge of the image in the case when it’s created with a stroke and the stroke-linecap is set to square. This depends on the angle formed with the top edge and we’re interested in finding the maximum amount of extra space we need above this top boundary so that no part of our strip gets cut off by overflow.
In order to understand this better, the interactive demo below allows us to rotate the strip and get a feel for how far the outer corners of the stroke creating this strip (including the square linecap) can extend:
See the Pen by thebabydino (@thebabydino) on CodePen.
As the demo above illustrates by tracing the position of the outer corners of the stroke including the stroke-linecap, the maximum amount of extra space needed beyond the image boundary is when the line segment between the endpoint on the edge E and the outer corner of the stroke including the linecap at that endpoint (this outer corner being either A or B, depending on the angle) is vertical and this amount is equal to the length of the segment.
Given that the stroke extends by half a stroke-width beyond the end point, both in the tangent and in the normal direction, it results that the length of this line segment is the hypotenuse of a right isosceles triangle whose catheti each equal half a stroke-width:
stroke-width.Using Pythagora’s theorem in this triangle, we have:
- var hw = .5*sw;
- var p = Math.sqrt(hw*hw + hw*hw) = hw*Math.sqrt(2);
Putting it all together, our Pug code becomes:
/* same coordinates and initial dimensions as before */
- var f = .05, d = Math.sqrt(w*w + h*h);
- var sw = f*d, hw = .5*sw;
- var p = +(hw*Math.sqrt(2)).toFixed(2);
- var w1 = w + 2*p, h1 = h + 2*p;
svg(viewBox=[-p, -p, w1, h1].join(' ')
style=`--sw: ${+sw.toFixed(2)}px`)
/* same as before */
while in the CSS we’re left to tweak that stroke-width for the sticky strips:
stroke-width: var(--sw);
Note that we cannot make --sw a unitless value in order to then set the stroke-width to calc(var(--sw)*1px) – while in theory this should work, in practice Firefox and Edge don’t yet support using calc() values for stroke-* properties.
The final result can be seen in the following Pen:
See the Pen by thebabydino (@thebabydino) on CodePen.
Glue Cross-Browser Responsive Irregular Images with Sticky Tape is a post from CSS-Tricks
Post pobrano z: How to Create a Transport-Themed Icon Pack in Adobe Illustrator

In today’s tutorial we’re going to take an in-depth look at the
process of creating a transportation-themed icon pack, using some geometric
shapes and tools that you probably already work with on a daily basis.
Don’t forget, you can always expand the pack
by heading over to GraphicRiver where you’ll find a great selection of
transportation icons just waiting to be snatched.
That being said, grab
a fresh cup of that yummy mocha latte and let’s get started!
Since I’m sure that you already
have Illustrator up and running in the background, bring it up and let’s set up
a New Document (File > New or Control-N)
using the following settings:
And from the Advanced tab:

Since we’re going to be creating the icons
using a pixel-perfect workflow, we’ll want to set up a nice little Grid so that we can have full control
over our shapes.
Go to the Edit > Preferences > Guides & Grid submenu, and adjust
the following settings:

Quick
tip: you can learn more about grids by reading this
in-depth piece on How Illustrator’s Grid System Works.
Once we’ve set up our custom grid, all we
need to do in order to make sure our shapes look crisp is enable the Snap to Grid and Snap to Pixel options found under the View menu.
Now, if you’re new to
the whole “pixel-perfect workflow”, I strongly recommend you go through my How
to Create Pixel-Perfect Artwork tutorial, which will help you widen your
technical skills in no time.
With the new document created, it would be
a good idea to structure our project using a couple of layers, since this way
we can maintain a steady workflow by focusing on one icon at a time.
That being said, bring up the Layers panel, and create a total of
four layers, which we will rename as follows:

The
reference grids (or base grids)
are a set of precisely delimited reference surfaces, which allow us to build
our icons by focusing on size and consistency.
Usually, the size of the grids determines
the size of the actual icons, and they should always be the first decision you
make once you start a new project, since you’ll always want to start from the
smallest possible size and build on that.
Now, in our case, we’re going to be
creating the icon pack using just one size, more exactly 128 x 128 px, which is a fairly large one.
Start by locking all
but the “reference grids” layer, and then grab the Rectangle Tool (M) and create a 128 x 128 px orange (#F15A24) square, which will help define the
overall size of our icons.

Add a smaller 120 x 120 px one (#FFFFFF) which we
will position on top of the previous shape, since it will act as our active
drawing area, thus giving us an all-around 4
px padding to work with.

Select and group the
two squares together using the Control-G
keyboard shortcut, center aligning them to the underlying Artboard
afterwards. Create the remaining grids using two copies (Control-C > Control-F) at a horizontal distance of 40 px from the original, locking
the current layer before moving on to the next section.

Assuming you’ve successfully managed to
create the little reference grids, move on to the next layer (that would be the
second one), and let’s kick off the project by creating our first icon.
Start by creating the
circular background using a 120 x 120 px
circle, which we will color using #FF8D60 and then center align to the
first active drawing area.

Create the upper section of the train using a 60 x 60 px square, which we will color using #CBF7EC and then
center align to the larger circle, positioning it 20 px from its top edge.

Adjust the shape that we’ve just created by setting the Radius of its top corners to 20 px from within the Transform panel’s Rectangle Properties.

Give the resulting shape an outline using the Stroke method, by creating a copy of it (Control-C), which we will paste in front (Control-F) and then adjust by first changing its color to #3F3330 and
then flipping its Fill with its Stroke (Shift-X). Set the resulting outline’s Weight to 4 px,
selecting and grouping the two shapes together afterwards using the Control-G keyboard shortcut.

Create the little roof section using a 12 x 4 px rectangle (#3F3330) which we will position on top of the
larger outline, as seen in the reference image.

Start working on the door using a 20
x 42 px rectangle (#55AA9A) which we will adjust by setting the Radius of its top corners to 4 px from within the Transform panel’s Rectangle Properties. Give the resulting shape a 4 px thick outline (#3F3330), grouping
(Control-G) and then aligning the
two to the center of the larger body’s bottom edge.

Add the little window using an 8 x 10 px rounded rectangle (#3F3330)
with a 2 px Corner Radius, which we
will center align to the door, positioning it at a distance of 4 px from its top edge.

Add the rectangular side insertions using two 4 x 8 px rectangles (#3F3330), which we will position at a distance
of 6 px from the door’s top edge.

Create the little handle using a 4 x 4 px square (#3F3330), which we will position onto the left side of the door, right
underneath the window itself. Once you’re done, select and group (Control-G) all of the current section’s
composing shapes together before moving on to the next step.

Start working on the protective string sections using three 2 x 4 px rectangles (#3F3330), which we
will vertically stack at a distance of 2
px from one another, grouping (Control-G)
and then positioning them at a distance of 2
px from the center of the door’s bottom edge.

Turn on Pixel Preview
mode (Alt-Control-Y), and then use a 2 px thick Stroke with the color set to #3F3330 to draw the three rope sections.
Once you’re done, switch back to the Default
Preview mode (Alt-Control-Y),
selecting and grouping (Control-G)
them to the smaller insertion rectangles, doing the same for the entire door
afterwards.

Create the left window using an 8
x 14 px rounded rectangle (#3F3330) with a 2 px Corner Radius, which we will position on the left side of
the door, making sure to bottom align it to the smaller center window.

Add the small rectangular insertion using a 4 x 2 px rectangle (#3F3330), which we will position above the
window, at a distance of just 6 px.

Create the circular lights using two 4 x 4 px circles (#3F3330) vertically stacked 2 px from one another, which we will
group (Control-G) and then position
below the left window, at a distance of 4
px.

Start working on the left bumper by creating a 4 x 24 px rounded rectangle (#3F3330)
with a 2 px Corner Radius, which we
will align to the bottom of the larger body, positioning it at a
distance of just 2 px from its left
edge.

Create two 6 x 4 px rectangles
(#3F3330), which we will vertically stack at a distance of 6 px, grouping (Control-G)
and then positioning them on top of the bumper, at a distance of 4 px from its top edge. Once you’re
done, select and group (Control-G)
all of the bumper’s composing shapes before moving on to the next step.

Add the bottom rectangular insertion using a 6 x 4 px rectangle (#3F3330), which we will bottom align to the
train’s larger body. Once you’re done, select and group (Control-G) all of the details that we’ve added so far, since we
will use them to fill up the larger body’s right side.

Create a copy (Control-C > Control-F) of the details that we’ve just finished working on, which we will vertically reflect (right click > Transform > Reflect
> Vertical) and then position onto the train’s opposite side. Once
you’re done, select and group (Control-G)
all of the train’s composing sections before moving on to the next step.

Start working on the train’s bottom section by creating a 64 x 6 px rectangle (#55AA9A) with a 4 px thick outline (#3F3330), which we
will group (Control-G) and then
position below the train’s larger body.

Next, create an 8 x 6 px rectangle
(#3F3330), which we will center align to the two shapes that we’ve just
grouped.

Add the side pieces using two 4 x
6 px rectangles (#3F3330), which we will position onto the outer edges of
the wider section.

Finish off the train’s bottom section by adding a 60 x 6 px rectangle (#3F3330) followed by a slightly smaller 24 x 4 px one (#3F3330), to the center
of its bottom edge. Once you’re done, select and group (Control-G) all of the current section’s composing shapes together,
doing the same for the entire train afterwards.

Finish off the train, and with it the icon
itself, by drawing the small railroad section from underneath using a 4 px thick Stroke (#3F3330). Take your time and, once you’re done,
select and group (Control-G) all of
its composing sections together.

Assuming you’ve finished working on the
first icon, lock its layer and then move on up to the next one (that would be
the third one) where we’ll start working on the iconic New York bus.
As we did with the
previous icon, start by creating the circular background using a 120 x 120 px circle, which we will
color using #FF8D60 and then center align to the second active drawing area.

Create the vehicle’s roof section using a 70 x 12 px rounded rectangle (#55AA9A)
with a 6 px Corner Radius and a 4 px thick outline (#3F3330), which we
will group (Control-G) and then
center align to the larger circle, positioning them at a distance of 20 px from its top edge.

Add the center detail piece using a 42 x 4 px rounded rectangle (#3F3330)
with a 2 px Corner Radius, which we
will center align to the shapes that we’ve just grouped.

Create the circular front lights using two 4 x 4 px circles (#3F3330), which we will
position onto the sides of the larger center piece, at a distance of just 4 px from it.

Add the bottom insertion using a 12
x 3 px rectangle (#3F3330), which we will center align to its bottom edge.

Create the smaller insertions using two 4 x 3 px rectangles (#3F3330), which we
will position at a distance of 2 px from
the larger insertion’s side edges.

Finish off the roof by creating a 50 x 6 px rectangle (#3F3330), which we
will adjust by individually selecting and pushing its top anchor points to the
inside by a distance of 4 px (right click > Transform > Move >
Horizontal > + / – 4 px depending on which side you start with). Once
you’re done, position the resulting shape on top of the larger shapes,
selecting and grouping (Control-G)
all of them together afterwards.

Create the bus’s main body using a 66 x 44 px rectangle (#CBF7EC) with a 4 px thick outline (#3F3330), which we
will group (Control-G) and then
position below the roof that we’ve just finished working on.

Create the windows using two 28 x 20 px rounded rectangles (#3F3330)
with a 4 px Corner Radius, which we
will horizontally distance at 2 px from
one another, which we will group (Control-G)
and then center align at a distance of 2
px from the larger body’s top edge.

Add the horizontal divider line using a 74 x 2 px rectangle (#3F3330), which we
will position at a distance of just 2 px
from the bus’s windows, making sure to center align it to
them before moving on to the next step.

Create the smaller detail segments using fourteen 2 x 1 px rectangles (#3F3330), which we will place at a horizontal distance of 2 px from
one another, grouping (Control-G)
and then positioning them below the shape from the previous step.

Add the smaller rectangular light using a 2 x 4 px rectangle (#3F3330), which we will position at a distance
of 2 px from the larger body’s
bottom-left corner.

Create the larger light using a 12
x 4 px rectangle (#3F3330), which we will position at a distance of 2 px from the smaller one’s right edge.

Add the circular light using a 2
x 2 px circle (#3F3330), which we will position above the gap created by
the two rectangular lights, at a distance of just 2 px.

Star working on the left windshield wiper by creating the base using a 6 x 2 px rectangle (#3F3330), which we
will position above the larger rectangular light, at a distance of just 2 px from its top and right edges.

Create the wiper’s end section using a 2 x 12 px rectangle (#3F3330), which we will position onto the
right side of the bus, at a distance of 8
px from its base.

Finish off the wiper by drawing the diagonal body using a 2 px thick Stroke (#3F3330) starting from the center of the base all the way
up to the top of the end piece. Once you’re done, select and group all of the
current section’s composing shapes together using the Control-G keyboard shortcut.

Select and group (Control-G)
all the left-sided details, and then use a copy (Control-C > Control-F) of them to add the right-sided ones, making sure to vertically reflect them once you have them in place (right click > Transform > Reflect
> Vertical).

Add the side lights using two 4 x 4 px squares (#3F3330), which we
will position onto the outside of the bus’s larger body, so that they’re in line with the inner rectangular lights.

Start working on the left side mirror by
creating its main body using a 6 x 12 px
rectangle (#3F3330), which we will position at a distance of 2 px from the vehicle’s main body and 4 px from its roof.

Finish off the mirror by adding an 8 x 2 px rectangle (#3F3330) on top of
it, followed by a smaller 4 x 2 px one
(#3F3330) towards its bottom. Once you’re done, select and group all three
shapes together using the Control-G
keyboard shortcut.

Create the right mirror’s main body using a 6 x 8 px rectangle (#3F3330), which we
will position at a distance of 2 px from
the larger body and 10 px from its
roof.

Add the support arms by positioning an 8 x 2 px rectangle (#3F3330) underneath
the mirror’s main body, followed by a smaller 4 x 2 px one (#3F3330) towards its top. Once you’re done, select
and group (Control-G) all of the
mirror’s composing shapes together, doing the same for the larger body
afterwards.

Create the main shapes for the vehicle’s front
bumper using a 70 x 8 px rectangle
(#55AA9A) with a 4 px thick outline
(#3F3330), which we will group (Control-G)
and then position below its larger body so that their outlines end up
overlapping.

Start adding details to the bumper by creating a
26 x 2 px rectangle (#3F3330), which
we will center align to its larger composing shapes.

Add the vertical delimiters using two 4 x 8 px rectangles (#3F3330), which we
will position at a distance of 4 px from
the center piece’s side edges.

Create the side insertions using two 8 x 2 px rectangles (#3F3330), which we will position in the center
of the space created by the bumper and the vertical delimiters.

Add the bumper’s side sections using two 4 x 8 px rectangles (#3F3330), which we will position on the
outside of its main body.

Create another larger 66 x 6 px rectangle,
which we will color using #3F3330 and then position below the bumper’s main
body.

Add the wheels using two 12 x 8
px rounded rectangles (#3F3330) with a 2
px Corner Radius, which we will position as seen in the reference image, at
a distance of 4 px from its sides.

Finish off the current section by adding an 18 x 2 px rectangle, which we will color using #3F3330 and then
position below the bumper’s bottom detail rectangle. Once you’re done, select
and group (Control-G) all of the
current section’s composing shapes together, doing the same for the entire bus
afterwards.

Finish off the icon by adding the little road strip, using an 8 x 12 px rectangle (#3F3330), which we
will adjust by individually selecting and pushing its top anchor points to the
inside by a distance of 2 px (right click > Transform > Move >
Horizontal > + / – 2 px depending on which side you start with). Once
you’re done, position the resulting shape at a distance of 2 px from the bus’s bottom, selecting and grouping (Control-G) all its composing sections
together before moving on to the next icon.

We are now down to
our third and last icon, so without wasting any more time, make sure you’re on
the right layer (that would be the fourth one) and let’s finish this.
Kick things off by creating the circular background using a 120 x 120 px circle, which we will
color using #FF8D60 and then center align to the third active drawing area.

Start working on the vehicle’s pantograph by creating an 18 x 6 px rectangle (#55AA9A) with a 4 px thick outline (#3F3330), which we
will group (Control-G) and then
center align to the circular background, positioning them at a distance of 20 px from its top edge.

Add the little rectangular insertion using a 6 x 3 px rectangle (#3F3330), which we will center align to the two
shapes’ bottom edge.

Create another slightly larger 14
x 4 px rectangle, which we will color using #3F3330 and then position on
top of the roof section, making sure to center align it to the larger shapes.

Take a couple of moments and draw the pantograph’s rail using a 2 px thick Stroke line (#3F3330), using the reference image as your main guide.
Once you’re done, select and group (Control-G)
all of the current section’s composing shapes together before moving on to the
next step.

Create the tram’s roof using a 50 x 6 px rectangle (#CBF7EC) with a 4 px thick outline (#3F3330), and a 30 x 3 px rectangle (#3F3330) aligned
to their top edge, grouping and positioning all three shapes right underneath
the pantograph.

Add the body’s upper section using a 42 x 26 px rectangle (#55AA9A) with a 4 px thick outline (#3F3330), which we will group (Control-G) and then position below its roof.

Add the front windows using three 10
x 18 px rectangles (#3F3330) with a 4
px top Corner Radius and a 2 px bottom one, which we will horizontally stack 2 px from one another, grouping (Control-G) and then positioning them in the center of the larger rectangles. Once you’re done, select and group (Control-G) all of the current section’s
shapes as well before moving on to the next step.

Create the tram’s bottom section using a 42 x 20 px rectangle (#CBF7EC) with a 4 px thick outline (#3F3330), which we will group (Control-G)
and then position below the previously grouped shapes.

Add the smaller center section using a 12 x 20 px rectangle with a 4 px thick Stroke (#3F3330), which we will center align to the
shapes from the previous step.

Add the center lights using two 4 x 4 px circles (#3F3330), vertically
stacked 2 px from one another,
which we will group (Control-G) and
then position at a distance of 2 px from
the center section’s top edge.

Create the bottom rectangular insertion using a 4 x 4 px square (#3F3330), which we
will center align to the center section’s bottom edge.

Add the side insertions using two 4 x 4 px squares (#3F3330), which we
will position on the outer edges of the center section, at a distance of just
2 px from its bottom edge.

Create the left and right horizontal detail
lines using two sets of two 15 x 2 px rectangles
(#3F3330) vertically stacked 2 px from
one another, which we will group (Control-G)
and then position onto the sides, at a distance of just 2 px of the larger section’s top edge.

Finish off the current section by adding the
smaller circular lights using two 2 x 2
px circles (#3F3330), which we will individually position at a distance of 2 px from the larger outline’s bottom
corners. Once you’re done, select and group (Control-G) all its composing shapes before moving on to the next
step.

Start working on the bumper by creating a 50 x 8 px rectangle (#55AA9A) with a 4 px thick outline (#3F3330), which we
will group (Control-G) and then
position below the previous section.

Add the center detail using an 18 x 2 px rectangle, which we will
color using #3F3330 and then center align to the shapes that we’ve just
grouped.

Create the bumper’s bottom insertions using two 6 x 4 px rectangles (#3F3330), which we
will position at a distance of 2 px from
its outer edges.

Add the bumper’s side pieces using two 4 x 8 px rectangles (#3F3330), which we
will position onto the outer edges of the larger rectangles, as seen in the
reference image.

Move a few pixels towards the bottom and create
a 46 x 4 px rectangle (#3F3330),
which we will position below the bumper itself.

Create another smaller 54 x 2 px rectangle, which we will color using #3F3330 and then
position below the one from the previous step.

Finish off the current section by creating a 38 x 4 px rectangle (#3F3330) with a 2 px bottom corner Radius, which we will position below the tram’s bottom section.
Once you’re done, select and group (Control-G)
all its composing shapes before moving on to the next step.

Create the left handrail using a 2 x 46 px rectangle (#3F3330), which we
will position onto the side of the tram, between its roof and front bumper.

Add the handrail’s support arms using two 4 x 2 px rectangles (#3F3330), which we
will position onto its right side, at a distance of 6 px from its top and bottom edges. Once you’re done, select and
group all three shapes together using the Control-G
keyboard shortcut.

Create the right handrail using a copy (Control-C > Control-F) of the one
that we’ve just finished working on, which we will vertically reflect (right click > Transform > Reflect
> Vertical) and then position on the opposite side of the tram’s body.
Once you’re done, select and group (Control-G)
all of the tram’s composing sections before moving on to the next step.

Finish off the tram, and with it the icon itself,
by taking a couple of moments and drawing the three rail segments using a 4 px thick Stroke with the color set to #3F3330. Once you’re done, select and
group (Control-G) all of the icon’s
composing sections before saving the finished project.

There you have it, fellow icon lovers—a nice little pack created using
the most basic geometric shapes and tools that one can find within Illustrator.
As always, I hope you’ve enjoyed the tutorial and managed to learn something new
and useful along the way.
