Panoramica delle opere
Diamo un’occhiata a qualche opera con QR Code:
Che ne pensi? Questi QR Code sono QR Code artistici, che realizzano una perfetta combinazione tra immagine e QR Code, risultando più artistici rispetto ai QR Code normali. E la cosa fondamentale è che ogni QR Code può essere scansionato!
Come realizzarli?
Vuoi realizzare un QR Code di questo tipo? Come si può creare un QR Code artistico? In realtà, dal punto di vista tecnico, è relativamente complesso. Nell’attuale era dell’IA, la soluzione per i QR Code artistici si basa su Stable Diffusion; inserendo un prompt possiamo generare l’immagine corrispondente, combinando infine alcuni contenuti del QR Code per ottenere questo effetto. Quindi, la sfida principale è: come rendere il QR Code esteticamente gradevole e artistico, e allo stesso tempo assicurarsi che possa essere scansionato correttamente. A dire il vero, questa tecnologia è piuttosto difficile e richiede un notevole aggiustamento dei parametri per ottenere risultati decenti. Probabilmente il 99% delle persone si arrenderebbe già al primo passo. Supponiamo che, dopo continui aggiustamenti, siamo riusciti a ottenere un effetto del genere; farlo funzionare realmente comporta anche un costo non indifferente. Se si desidera una velocità relativamente alta, potrebbe essere necessario un GPU di buona qualità, e si potrebbe facilmente arrivare a spese di diverse migliaia di euro. Alcuni amici potrebbero dire: non voglio spendere così tanto tempo e denaro, voglio solo creare un QR Code artistico, oppure voglio integrare questa capacità nel mio prodotto; sarebbe fantastico avere un’API pronta all’uso. Esiste? In effetti, sì. Questa piattaforma offre un’API per la generazione di QR Code artistici; possiamo chiamare l’API inserendo vari parametri, come contenuto dell’immagine, link del QR Code, stile e così via, e possiamo generare facilmente il QR Code artistico desiderato. Inoltre, la prima richiesta offre 20 generazioni gratuite.Richiesta API
Per utilizzare l’API per QR Code artistici, prima di tutto puoi andare alla pagina API per QR Code artistici e cliccare sul pulsante “Ottieni”:
Se non hai ancora effettuato il login, verrai automaticamente reindirizzato alla pagina di login; basta scansionare il codice per seguire il pubblico e accedere automaticamente, senza ulteriori passaggi di registrazione.
Dopo aver effettuato il login, verrai riportato alla pagina originale, dove verrà visualizzato il messaggio “Non hai ancora richiesto questo servizio, è necessario richiederlo”. Durante la richiesta verrà verificata la situazione di autenticazione, quindi segui le istruzioni del sito per completare l’autenticazione. L’autenticazione verificherà nome, numero di telefono e numero di identificazione; una volta completata, puoi tornare alla pagina, aggiornare per assicurarti che le informazioni siano aggiornate e poi richiedere nuovamente.
Utilizzo di base
Per utilizzare le funzionalità di base del QR Code artistico, è necessario inserire i seguenti parametri obbligatori:type: il tipo di QR Code, come testo semplice, link, ecc.content: il contenuto del QR Code, ad esempio, se è un link, possiamo inserire il link corrispondente.prompt: l’istruzione di stile per il QR Code, si consiglia vivamente di utilizzare l’inglese. Ad esempio,pizzadisegnerà un QR Code a forma di pizza.callback_url: opzionale, indirizzo di callback asincrono, fornito restituirà immediatamente l’ID del compito.content_image_url: opzionale, link all’immagine contenente il contenuto reale del QR Code.aspect_ratio: opzionale, rapporto di aspetto della tela, predefinito 1:1.ecl: livello di correzione degli errori, predefinito H.qrw: peso del QR Code, 1.5-3, più grande è, più si avvicina al QR Code reale.seed: seme casuale fisso, per generare QR Code riproducibili.steps: numero di iterazioni di disegno, 10-20, predefinito 16.preset: stile di sfondo preimpostato.pattern: stile principale, predefinito custom.position: posizione del QR Code, predefinita al centro.marker_shape: forma del punto di riferimento, predefinita quadrata.sub_marker: forma del punto di riferimento secondario, predefinita quadrata.pixel_style: stile pixel, ad esempio quadrato, arrotondato, punto.padding_level/padding_noise: intensità del margine e del rumore.rotate: angolo di rotazione, predefinito 0.rawurl: se mantenere il link originale, predefinito false, se attivato non verrà creato un link breve.
Poi clicca su test:
Dopo un po’, scoprirai che il QR Code artistico è stato generato, il risultato è simile al seguente:
Così abbiamo generato un codice QR, il soggetto è una nave, che espone alcune bandiere, e queste bandiere costituiscono esattamente i punti di riferimento del codice QR.
Scansionando con il telefono, si può accedere al sito ufficiale di Zhishuyun.
Allo stesso tempo, il contenuto sopra menzionato può essere facilmente convertito in una chiamata API.
Guida al prompt
Attraverso le operazioni sopra, si può vedere che la chiave del codice QR artistico sta nella scrittura del prompt, quindi quali sono le considerazioni per la scrittura del prompt? In realtà, queste sono tutte istruzioni di prompt generali di Stable Diffusion, il codice QR artistico è generato sulla base della tecnologia Stable Diffusion con alcune ottimizzazioni speciali, quindi il suo prompt di input è esattamente lo stesso di Stable Diffusion. Se non sai ancora cos’è Stable Diffusion, puoi visitare il suo sito ufficiale per saperne di più: https://stablediffusionweb.com/, ci sono anche tutorial e guide sui prompt: https://stable-diffusion-art.com/prompt-guide/, inoltre Stable Diffusion ha creato un generatore di prompt che può aiutarci a generare prompt: https://stablediffusionweb.com/prompt-generator, oltre a ciò ci sono anche alcuni siti di raccolta di esempi di prompt: https://publicprompts.art/ Il contenuto sopra è solo a scopo di riferimento, per ulteriori informazioni, puoi cercare autonomamente materiali relativi a Stable Diffusion per approfondire.Parametri avanzati
Questa API offre anche più parametri avanzati per facilitare la personalizzazione di ulteriori funzionalità, come descritto di seguito:- preset: stile di sfondo preimpostato. Stile di sfondo del codice QR, come stile surreale, effetto neon, stile disegnato a mano, ecc.
- steps: numero di iterazioni di disegno. Maggiore è il numero, più forte sarà lo stile artistico del codice QR, con un intervallo di 10-20, il valore predefinito è 16.
- qrw: peso del codice QR. Maggiore è il peso, più l’immagine si avvicina a un codice QR reale, ma lo stile artistico si attenua, con un intervallo di 1.5-3, il valore predefinito è 1.5.
- seed: seme casuale. Utilizzato per generare codici QR casuali, quando il seme è lo stesso, lo stile del codice QR generato è identico, con un intervallo di 1-9007199254740991.
- rawurl: mantenere il link originale o meno. Di default, il link di input verrà accorciato in un link breve, il che può aumentare il tasso di scansione, il valore predefinito è false.
- padding_level: margine interno del codice QR. Dimensione del margine interno del codice QR,
- aspect_ratio: rapporto di aspetto del codice QR.
- position: posizione del codice QR.
- pixel_style: stile pixel del codice QR.
- marker_shape: forma del riquadro di riferimento del codice QR.
- sub_marker: stile del sottomarker del codice QR.
- rotate: angolo di rotazione del codice QR.
- ecl: livello di correzione degli errori del codice QR.
- padding_noise: rumore del margine interno del codice QR.
- pattern: combinazione di codice QR preimpostata. Combinazione di stili di codice QR preimpostati, come lo stile del riquadro di riferimento (quadrato, rotondo, ecc.), stile dei punti (quadrato, rotondo, ecc.).
Preset preset
L’API del codice QR artistico ha impostato molti modelli preimpostati, questo parametro si chiama preset, i valori sono i seguenti:- sunset(日落): Fuso i toni caldi e l’effetto di luce morbida del crepuscolo.
- floral(花卉): Stile artistico con elementi floreali e vegetali, che enfatizza la bellezza della natura.
- snowflakes(雪花): Mondo di ghiaccio e neve, con un’atmosfera gelida di cristalli di ghiaccio e fiocchi di neve.
- feathers(羽毛): Presenta caratteristiche di piume e uccelli, creando una sensazione di leggerezza e morbidezza.
- raindrops(雨滴): Ispirato a gocce di pioggia e perle d’acqua, crea un effetto fresco e umido.
- ultra-realism(超现实): Dettagli e texture estremamente realistici, creando un effetto che va oltre la realtà.
- epic-realms(史诗领域): Scene maestose e un senso epico, che offrono un’esperienza visiva grandiosa.
- intricate-studio(错综复杂): Stile ricco di dettagli e complessità, che richiede un’osservazione attenta per essere completamente compreso.
- symmetric-masterpiece(对称杰作): Crea un’elegante armonia e equilibrio attraverso elementi simmetrici.
- luminous-highway(发光高速公路): Sottolinea l’effetto luminoso notturno, come i fari delle auto e le luci al neon.
- celestial-journey(星际之旅): Esplorazione di un viaggio fantastico nell’universo e tra le stelle.
- neon-mech(霓虹机械): Combina elementi al neon e meccanici, creando un’atmosfera futuristica.
- ethereal-low-poly(飘渺低多边形): Stile low-poly, creando un effetto etereo e astratto.
- golden-vista(金色景观): Dominato da tonalità dorate, presenta un panorama spettacolare.
- cinematic-expanse(电影式广袤): Scene ampie con un senso cinematografico, coinvolgenti.
- cinematic-warm(电影式温暖): Toni caldi e effetti di luce con una qualità cinematografica.
- desolate-wilderness(荒凉荒野): Rappresenta desolazione e wilderness, creando una sensazione di solitudine.
- vibrant-palette(鲜明调色板): Colori ricchi e vari, con forti contrasti di colore.
- enigmatic-journey(神秘之旅): Esplorazione di un viaggio pieno di misteri e fascino.
- timeless-cinematic(永恒电影): Stile con qualità cinematografica che non è limitato dal tempo.
- regal-galaxy(皇家星系): Galassie e elementi cosmici con un’atmosfera regale.
- illustrious-canvas(杰出画布): Crea effetti di tela straordinari e accattivanti.
- expressive-mural(富有表现力的壁画): Stile di murale di grandi dimensioni, ricco di espressività ed emozione.
- serene-haze(宁静薄雾): Con effetti di tranquillità e nebbia, crea un’atmosfera serena.
Se cambiamo stile, ad esempio impostando il parametro preset su raindrops(雨滴效果), l’effetto è il seguente:
Per quanto riguarda altre impostazioni, potete sperimentare autonomamente.
二维码宽高比 aspect_ratio
Attraverso il parametro aspect_ratio possiamo impostare il rapporto di aspetto del codice QR, ad esempio quadrato 1:1, rettangolare 16:9, ecc., questo parametro:- 768x768: rapporto di aspetto 1:1, indica che la larghezza e l’altezza della tela sono uguali. La dimensione in pixel corrispondente è 768x768, il codice QR generato avrà una forma quadrata.
- 1008x576: rapporto di aspetto 16:9, indica che la larghezza della tela è 16/9 volte l’altezza. La dimensione in pixel corrispondente è 1008x576, il codice QR generato avrà una larghezza maggiore, adatta per schermi widescreen.
- 576x1008: rapporto di aspetto 9:16, indica che la larghezza della tela è 9/16 volte l’altezza. La dimensione in pixel corrispondente è 576x1008, il codice QR generato avrà un’altezza maggiore, adatta per schermi verticali.
- 864x672: rapporto di aspetto 4:3, indica che la larghezza della tela è 4/3 volte l’altezza. La dimensione in pixel corrispondente è 864x672, il codice QR generato avrà una leggera sensazione quadrata, adatta per visualizzazioni generali.
- 672x864: rapporto di aspetto 3:4, indica che la larghezza della tela è 3/4 volte l’altezza. La dimensione in pixel corrispondente è 672x864, il codice QR generato avrà una leggera sensazione rettangolare verticale, adatta per visualizzazioni generali.
二维码位置 position
Possiamo anche controllare la posizione del codice QR tramite il parametro position, ad esempio, se in un’immagine c’è una ragazza in gonna e vogliamo posizionare il codice QR nella posizione della gonna e farlo fondere con essa, possiamo provare a modificare la posizione del codice QR, un esempio di chiamata è il seguente:
Stile pixel del codice QR pixel_style
Possiamo anche personalizzare lo stile pixel del codice QR, passando pixel_style, i valori dei parametri sono i seguenti:- square (quadrato): utilizza unità pixel quadrate, ogni unità pixel ha forma quadrata.
- rounded (angoli arrotondati): le unità pixel hanno angoli arrotondati, rendendo il codice QR generato più morbido e moderno.
- dot (punti): utilizza piccoli punti rotondi come unità pixel, il codice QR generato presenta un effetto a punti, simile a un effetto di stampa.
- squircle (quadrato arrotondato): simile a un rettangolo con angoli arrotondati, ma più vicino alla forma circolare, conferendo al codice QR generato uno stile unico.
- row (disposizione a righe): dispone le unità pixel in righe, presentando un motivo in direzione orizzontale.
- column (disposizione a colonne): dispone le unità pixel in colonne, presentando un motivo in direzione verticale.
Stile del marker del codice QR marker_shape
Attraverso marker_shape è possibile personalizzare lo stile del frame di posizionamento, i valori dei parametri sono i seguenti:- square (quadrato): la forma del marker è quadrata, utilizzata per evidenziare posizioni o elementi specifici.
- circle (circolare): la forma del marker è circolare, utilizzata per contrassegnare aree o elementi chiave.
- plus (più): la forma del marker è a forma di più, simile a una croce, utilizzata per evidenziare attenzione o informazioni specifiche.
- box (scatola): la forma del marker è a forma di scatola, simile a un rettangolo con contorno, utilizzata per circondare aree o elementi.
- octagon (ottagono): la forma del marker è a forma di ottagono, con angoli unici, utilizzata per attrarre visivamente.
- random (casuale): la forma del marker è distribuita casualmente, aggiungendo un senso artistico e interesse visivo al codice QR.
- tiny-plus (piccolo più): un piccolo marker a forma di più, utilizzato per contrassegnare elementi o dettagli sottili.
Stile del sub marker del codice QR sub_marker
Attraverso sub_marker è possibile definire la forma dei sub marker (marker più piccoli), i valori dei parametri sono i seguenti:- square (quadrato): la forma del sub marker è quadrata, utilizzata per evidenziare dettagli in posizioni specifiche.
- circle (circolare): la forma del sub marker è circolare, utilizzata per enfatizzare dettagli o elementi chiave.
- box (scatola): la forma del sub marker è a forma di scatola, simile a un rettangolo con contorno, adatta per contrassegnare aree piccole.
- random (casuale): la forma del sub marker è distribuita casualmente, aggiungendo un senso artistico e interesse visivo al codice QR.
- plus (più): la forma del sub marker è a forma di più, simile a una croce, utilizzata per contrassegnare informazioni o elementi sottili.
Angolo di rotazione del codice QR rotate
Attraverso rotate è possibile controllare l’angolo di rotazione del codice QR, i valori dei parametri sono i seguenti:- 0: nessuna rotazione, il codice QR generato mantiene la direzione originale, senza effetto di rotazione.
- 90: il codice QR generato viene ruotato di 90 gradi in senso orario, visualizzandolo in direzione verticale.
- 180: il codice QR generato viene ruotato di 180 gradi, risultando capovolto, ovvero visualizzato in modo invertito.
- 270: il codice QR generato viene ruotato di 270 gradi in senso orario, visualizzandolo in direzione inversa.
Preset del codice QR pattern
Attraverso pattern è possibile attivare facilmente alcuni stili di codice QR, come il frame di posizionamento quadrato, i punti pixel circolari, ecc., qui sono predefiniti alcuni pattern:| pattern | 含义 | |
|---|---|---|
| s1 | pixel_style: quadrato marker_shape: quadrato | ![]() |
| s2 | pixel_style: quadrato marker_shape: quadrato ruota: 180 | ![]() |
| s3 | pixel_style: quadrato marker_shape: quadrato ruota: 180custom_padding_noise: 0.25 | ![]() |
| rd1 | pixel_style: arrotondato marker_shape: casuale | ![]() |
| rd2 | pixel_style: arrotondato marker_shape: casuale ruota: 180 | ![]() |
| rd3 | pixel_style: arrotondato marker_shape: casuale ruota: 180custom_padding_noise: 0.25 | ![]() |
| d1 | pixel_style: punto marker_shape: cerchio | ![]() |
| d2 | pixel_style: punto marker_shape: cerchio ruota: 180 | ![]() |
| d3 | pixel_style: punto marker_shape: cerchio ruota: 180custom_padding_noise: 0.25 | ![]() |
| r1 | pixel_style: riga marker_shape: più | ![]() |
| r2 | pixel_style: riga marker_shape: più ruota: 180 | ![]() |
| r3 | pixel_style: riga marker_shape: più ruota: 180custom_padding_noise: 0.25 | ![]() |
| c1 | pixel_style: colonna marker_shape: scatola | ![]() |
| c2 | pixel_style: colonna marker_shape: scatola ruota: 180 | ![]() |
| c3 | pixel_style: colonna marker_shape: scatola ruota: 180custom_padding_noise: 0.25 | ![]() |
| sq1 | pixel_style: squircle marker_shape: casuale | ![]() |
| sq2 | pixel_style: squircle marker_shape: casuale ruota: 180 | ![]() |
| sq3 | pixel_style: squircle marker_shape: casuale ruota: 180custom_padding_noise: 0.25 | ![]() |



















