灵感 | 设计平平无奇?试试这种方法!

本文介绍了拼贴海报的发展历程,从立体主义时期的起源到现代应用,探讨了其独特的艺术特点和表达方式。拼贴海报利用丰富的素材和创意,创造出充满视觉冲击力的作品,广泛应用于文学、时尚等领域。
部署运行你感兴趣的模型镜像

拼贴海报

拼贴海报是现在一种流行的概念视觉化表达,拼贴(Collage)从字面意义上看就是“拼合”“粘贴”,也可以理解为,将多种元素相互叠加,从而实现“1+1>2”的艺术形式。不同元素用各种“搭边”及“不搭边”的组合拼接出了无限可能,造就出一种艺术感效果独特且充满视觉冲击力的海报,也给予了受众超现实主义和奇幻复古的感觉。

拼贴海报的起源

拼贴,一词源于法文coller (胶黏),最早的拼贴概念出现在立体主义时期,源于立体派的布拉克和毕加索在街道墙面上看到贴了层层海报的墙面,20世纪初他们将其命名为collage。1912年,毕卡索创作出第一件精致的拼贴作品“有藤椅的静物”(Still Life with Chair Caning),打破了2D和3D的界限,引领了拼贴艺术潮流。

立体主义时期  毕加索《有藤椅的静物》

      到了达达主义时期,拼贴的手法更加多元,不过当时的拼贴艺术更强调一种非理性的偶然和即兴,不管是照片、文字还是质感的表达都看到了更多的可能。

达达主义时期  汉娜·霍希

《用达达餐刀剖开德国最后的魏玛啤酒肚文化纪元》

再往后发展,超现实主义开始模糊了拼贴艺术的真实感,更加追求非现实的场景、元素、比例等,同时为拼贴艺术加入了更多趣味性与意义表达。

超现实主义时期   Joseph Cornell,

The Hotel Eden(伊甸园宾馆), 1945

超现实主义时期   马克思·恩斯特

《西里伯斯岛》, 帆布油画, 1921

拼贴海报的特点

1、素材来源广泛

拼贴海报不受素材限制,整个网络、照片、书籍、杂志、海报,不论“年代”、不论“流派”和“风格”,只要符合主题需求,都可以拿来使用。

2、信息量大,叙事性强

拼贴是由多个维度的物品组合而创造的全新整体,它包含了大量的视觉信息,具备较强叙事性,一幅拼贴有时候就是一个故事。

3、帮助拓展思维

在设计中使用拼贴手法,可以帮助打开思维方式,增加设计作品的深度。

4、视觉冲击,艺术感强

拼贴虽是二维视觉效果,但因为素材来自成品,在色彩、构图、造型等方面都已有很强的视觉冲击,所以在重新排列组合之后的视觉冲击力效果更好。

拼贴海报的表达方式

为何拼贴海报这种形式在现代具有如此的魅力? 因为拼贴艺术通过拼贴的技法,将零散的设计想法整合为新颖的创意,它的自由灵活和可操作性让它很难不流行!甚至从中衍生出来的撕纸风、补丁风、拼贴插画等风格也大受欢迎~

《候鸟症(Sick Bird Syndrome)》

 

拼贴是我们抓住灵感的一种手段,学会拼贴,灵感源源不断!让我们一起来看看拼贴都有哪些表达方式吧!

① 叙事形式

通过解构重组或整体分解,表达具象与意象、真实与虚构相互混合的信息,用大家熟悉的事物讲述一个陌生的故事

② “随机”形式

1916年至1917年阿尔普创造了这种撕破的拼贴画:在纸上排列着模糊的矩形色块。灵感来源于他撕下了一幅使他不高兴的画,扔在地上后,从散落的碎片中找到的灵感。

汉斯·阿尔普《牧羊人》

       想要学会这种形式,首先我们要学着去捕捉瞬间的灵感,日常生活中的一个瞬间、甚至一场梦境,都会激发出灵感,学会把这些碎片化的信息记录下来,然后发挥想象力,就能将情感转化为视觉创作的拼贴画。

③ 复古形式

这类拼贴手法比较感性,通过收集已发生的事物,营造怀旧复古的风格,具有亲切的手工感。通常,可选用的拼贴的材料多种多样,例如:杂志、简报、丝带、油漆、木头、照片等。

④ 诙谐形式

设计师可以选择将人物身体的一部分进行拼贴,通过统一性的整合内容与拼贴元素产生对比,表现出时空失序、反叛、梦境、怪诞、偶然、违反常规等海报效果。

⑤ 二维拼贴形式

这里的二维拼贴是拼贴艺术到了现代衍生出来的一种形态,它摒弃了各种各样的材质表达,单纯通过拼贴的手法将纯二维的图形或图案组合到一个版面之中

⑥ 手绘涂鸦形式

这一方式也是表现版面手工感的一种途径,其中不同的笔刷也会呈现出不同的质感。发展到后来,设计师也会将手绘涂鸦作为版面中的主要表现对象,也就形成了拼贴插画这种风格。

插画师rickylinn作品

 

拼贴海报的应用

拼贴的材料可以多种多样,操作手法简单且预算成本低,又能够体现设计师个人的创意思维和动手能力,所以,拼贴被广泛应用到不同领域,比如文学、时尚、电影等。

电视剧《我在他乡挺好的》海报

pedro nekoi拼贴作品 PRADA宣传海报

GUCCI - Neuschwanstein

各类综艺节目

《指甲刀人魔》电影海报,2017

拼贴艺术最大的优点

在于它能快速实现你的想法

不需要多高超的合成技术

我们就能将各不相同的元素巧妙并置

完美地展现别样的设计美感!

如果你觉得自己的设计平平无奇?

可以试试来享设计找拼贴海报呀~

您可能感兴趣的与本文相关的镜像

Llama Factory

Llama Factory

模型微调
LLama-Factory

LLaMA Factory 是一个简单易用且高效的大型语言模型(Large Language Model)训练与微调平台。通过 LLaMA Factory,可以在无需编写任何代码的前提下,在本地完成上百种预训练模型的微调

在Java开发中,一些看似简单的代码片段可能隐藏着严重的潜在问题,这些问题可能在短期内不会暴露,但一旦发生,往往会造成难以排查的后果。以下是一些常见的简单但容易引发问题的Java代码示例。 ### 3.1 单例模式中的双重检查锁定问题 在实现单例模式时,为了提高性能,开发者常使用双重检查锁定(Double-Checked Locking)模式。然而,如果不正确使用 `volatile` 关键字,可能会导致线程安全问题。 ```java public class LazySingleTon { private static LazySingleTon instance = null; private LazySingleTon(){} public static LazySingleTon getInstance() { if(instance == null){ synchronized (LazySingleTon.class){ if(instance == null){ instance = new LazySingleTon(); } } } return instance; } } ``` 在上述代码中,`instance` 没有使用 `volatile` 修饰,这可能导致指令重排序的问题,从而导致某些线程看到一个未完全构造的实例。为了防止这种问题的发生,应该使用 `volatile` 来修饰 `instance` 变量[^4]。 ### 3.2 使用 `ConcurrentHashMap` 时的复合操作问题 虽然 `ConcurrentHashMap` 是线程安全的集合类,但在执行一些复合操作时,仍然需要额外的同步机制来保证原子性。 ```java public class Cache<K, V> { private final ConcurrentHashMap<K, V> cache = new ConcurrentHashMap<>(); public V get(K key) { return cache.get(key); } public void put(K key, V value) { cache.put(key, value); } // 复合操作需要保证原子性 public V putIfAbsent(K key, V value) { V existing = cache.get(key); if (existing == null) { existing = value; cache.put(key, value); } return existing; } } ``` 在上述代码中,`putIfAbsent` 方法是一个复合操作,包含检查和更新两个步骤。由于 `ConcurrentHashMap` 不保证复合操作的原子性,多个线程同时调用该方法可能会导致数据不一致的问题。因此,应该使用 `ConcurrentHashMap` 提供的原子方法 `putIfAbsent` 来替代自定义实现[^5]。 ### 3.3 ABA 问题 在使用 `CAS`(Compare and Set)操作时,可能会遇到 ABA 问题。这个问题指的是一个值从 A 变成 B,又变回 A,此时 `CAS` 操作会认为该值没有发生变化,但实际上中间已经发生了修改。 ```java AtomicReference<Integer> atomicReference = new AtomicReference<>(1); new Thread(() -> { atomicReference.compareAndSet(1, 2); atomicReference.compareAndSet(2, 1); }).start(); new Thread(() -> { try { Thread.sleep(100); } catch (InterruptedException e) { e.printStackTrace(); } boolean success = atomicReference.compareAndSet(1, 3); System.out.println("CAS success: " + success); }).start(); ``` 在上述代码中,第一个线程将 `atomicReference` 的值从 1 改为 2,然后再改回 1。第二个线程在执行 `CAS` 操作时会成功,因为它无法感知到中间的变化。为了解决这个问题,可以使用 `AtomicStampedReference` 来为每次修改添加版本号,从而区分值是否真正发生变化[^3]。 ### 3.4 类型转换问题 在进行类型转换时,如果不进行类型检查,可能会导致 `ClassCastException`。 ```java Object obj = "Hello"; Integer i = (Integer) obj; // 抛出 ClassCastException ``` 在上述代码中,`obj` 是一个 `String` 类型的对象,尝试将其强制转换为 `Integer` 类型会导致运行时异常。为了避免此类问题,可以在转换前使用 `instanceof` 进行类型检查。 ```java if (obj instanceof Integer) { Integer i = (Integer) obj; } ``` ### 3.5 异常处理不当 在捕获异常时,如果直接捕获 `Exception` 或 `Throwable`,而没有进行适当的处理,可能会掩盖潜在的问题。 ```java try { // 可能抛出异常的代码 } catch (Exception e) { // 忽略异常 } ``` 在上述代码中,所有异常都被捕获并忽略,导致问题无法及时发现。正确的做法是捕获特定的异常,并记录日志或采取适当的恢复措施。 ```java try { // 可能抛出异常的代码 } catch (IOException e) { e.printStackTrace(); } ``` ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值