Das pixelart Paket (v0.2.0 2018/02/25) ist ein Paket zum Zeichen von Pixel Art in LaTeX.[1] Dabei sind nicht nur schwarz-weiß Zeichnungen möglich, sondern es ist auch möglich zusätzliche Farben zu verwenden. Daneben gibt es auch die Möglichkeit die Größe des Bildes anzupassen, was insbesondere bei diesen Bildern, also Pixel Art Bildern, zum Teil benötigt wird.
Das Paket wird mit \usepackage{pixelart}
eingebunden und bindet selbst weitere Pakete ein, unter anderem die Pakete pgf und tikz. Das Paket hat nur eine Option, die draft
Option. Wird diese Option gesetzt, wird kein Bild erzeugt.
Die Pixel Art Bilder werden mit dem Befehl \bwpixelart[Optionen]{Pixel}
in dem Dokument gesetzt. Der Befehl selbst verfügt über drei mögliche Optionen color, scale und raise. Wobei mit der Option color die Farbe des Bildvordergrundes gesetzt werden kann. In der Standardeinstellung ist die Farbe schwarz, was bedeutet das Pixel in der Farbe Schwarz gesetzt werden. Der Hintergrund ist transparent. Die Option scale beeinflusst die Größe der Pixel, in der Grundeinstellung entspricht die Größe eines Pixeles der default Einheitengröße innerhalb der tikzpicture
Umgebung, also 1 cm. Mithilfe der Option raise lässt sich der Abstand zur Grundlinie festlegen beziehungsweise verändern. In der Grundeinstellung ist der Abstand 0pt (null Punkte). Die Pixel werden in Form von Nullen und Einsen im Pflichtargument gesetzt, wobei eine 1 dafür steht, dass an dieser Position ein Pixel gesetzt werden soll und die 0 für die freibleibenden Positionen verwendet wird.
\documentclass[margin=1cm]{standalone} %... \usepackage{pixelart} %... \begin{document} %... \bwpixelart{ 010 111 010 } %... \end{document} |
\documentclass[margin=1cm]{standalone} \usepackage[utf8]{inputenc} \usepackage{pixelart} \begin{document} %... Das ist Text \bwpixelart[color=blue,scale=0.1]{ 010 111 010 } Das ist Text \bwpixelart[color=blue,scale=0.1,raise=3pt]{ 010 111 010 } %... \end{document} |
Der Befehl \tikzbwpixelart[Optionen]{Koordinaten}{Pixel}
ermöglicht das Setzen von Pixel Art innerhalb der \tikzpicture
Umgebung. Die Optionen \bwpixelart
Befehls. Die Option raise gibt es in Ermangelung einer fehlenden Grundlinie nicht.
\documentclass[margin=1cm]{standalone} \usepackage[utf8]{inputenc} \usepackage{pixelart} \begin{document} %... \begin{tikzpicture} \fill[blue] (1,1) circle (2); \tikzbwpixelart{(-0.5,2.5)}{ 010 111 010 } \end{tikzpicture} \begin{tikzpicture} \fill[red] (1,1) circle (2); \tikzbwpixelart[color=blue,scale=0.1]{(0.925,1.075)}{ 010 111 010 } \end{tikzpicture} %... \end{document} |
Die Befehle \bwpixelart
beziehungsweise \tikzbwpixelart
lassen nur die Verwendung einer Farbe zu. Im Fall, dass ein Pixel Art Bild erstellt werden soll, welches mehrere Farben verwendet, kann dies durch mehrere Einzelbilder erfolgen. Die Einzelbilder werden vereinfacht formuliert, übereinander gelegt und ergeben so das gewünschte mehrfarbige Pixel Art Bild.
\documentclass[margin=1cm]{standalone} %... \usepackage{pixelart} \begin{document} %... \begin{tikzpicture} \tikzbwpixelart[color=blue]{(0,0)}{ 010 000 010 } \tikzbwpixelart[color=red]{(0,0)}{ 000 111 000 } \tikzbwpixelart[color=violet]{(0,0)}{ 000 010 000 } \end{tikzpicture} %... \end{document} |
Mit dem Paket pxpic lassen sich auf einfachere Art und Weise mehrfarbige Pixel Art Bilder setzen.
Bei dem pxpic Paket (2021-12-12 V1.3) handelt es sich ebenfalls um ein Paket zum Erstellen von Pixel Art in LaTeX.[2]Einer der wesentlichen Unterschiede zum bereits gezeigten pixelart Paket ist die deutlich einfachere Erstellung von Pixel Art Bilder die mehrere verschiedene Farben enthalten.
Das Paket wird mit \usepackage{pxpic}
eingebunden. Das Paket selbst bindet seinerseits nur die noch die Pakete expkv und xcolor ein. Zurzeit verfügt das Paket über keine Optionen.
Mit dem Befehl \pxpic[Optionen]{Pixelliste}
werden die Pixel Art Bilder gesetzt. Der Befehl verfügt über eine Vielzahl an Optionen. Die Pixellisten besteht aus den einzelnen Zeilen des Bildes, wobei jede Zeile einzelnen geklammert werden muss.
Mit der Option colors beziehungsweise colours kann eine Liste mit Farben gesetzt werden.
\pxpic[colors= {0 = farbe0, 1 = farbe1 ,..., 9 = farbe9}]{Pixelliste}
Alternativ ist es möglich, mit dem Befehl \pxpicnewcolorlist{Name der Farbliste}{0 = farbe0, 1 = farbe1 ,..., 9 = farbe9}
ein Farbliste zu definieren, die dann über die Option color-list beziehungsweise colour-list in dem Befehl gesetzt werden kann.
Als Farben kommen die Farben aus dem xcolor Paket in Frage.
Ein farbloses (transparentes) Pixel kann mit der skip Option gesetzt werden.
\documentclass[margin=1cm]{standalone} %... \usepackage{pxpic} %... \begin{document} \pxpic[colors={0 = white, 1=black}]{ {010} {111} {010} } %... \end{document} |
Alternativ mit der color-list Option.
\documentclass[margin=1cm]{standalone} %... \usepackage{pxpic} %... \begin{document} \pxpicnewcolorlist{Farben}{0=blue,1=red,2=green,3=yellow} %... %... \pxpic[color-list=Farben]{ {0123} {1230} {2301} {3012} } %... \end{document} |
Alternativ mit der color-list und skip Option.
\documentclass[margin=1cm]{standalone} %... \usepackage{pxpic} %... \begin{document} \pxpicnewcolorlist{Farben}{0=blue,1=red,2=green,3=yellow} %... %... \pxpic[color-list=Farben,skip=s]{ {01s23} {1s230} {s2301} {3012s} } %... \end{document} |
Die Größe eines Pixels ist hier ein pt Punkt, das bedeutet das dargestellte Pixel ist in der Standardeinstellung 1 Punkt hoch und 1 Punkt breit. Mit der Option ht lässt sich die Höhe und mit der Option wd die Breite des Pixels verändern. Die Option size setzt ht und wd auf den gleichen Wert und hat als Standardeinstellung 1 Punkt.
\documentclass[margin=1cm]{standalone} %... \usepackage{pxpic} %... \begin{document} %... \pxpic[colors={0 = white, 1=black}]{ {010} {111} {010} } vs. \pxpic[colors={0 = white, 1=black}, size=2pt]{ {010} {111} {010} } %... \end{document} |
Die Option mode beschreibt, wie die Pixelliste aussieht und verarbeitet wird. Der Standardwert ist dabei px und entspricht der Gestaltung und Verarbeitung der Pixelliste wie in dem pixelart Paket. Eine detaillierte Darstellung findet sich auf Seite 5f. der Dokumentation [2].
\documentclass[margin=1cm]{standalone} %... \usepackage{pxpic} %... \begin{document} %... \pxpic[colours={0=red,1=green,2=blue}]{{012}} \pxpic[mode=rgb]{{{1,0,0}{0,1,0}{0,0,1}}} \pxpic[mode=cmy]{{{0,1,1}{1,0,1}{1,1,0}}} %... \end{document} |
Mit der Option gap-hack kann die vermeintliche Lücke, die zwischen den einzelnen Pixeln je nach verwendetem PDF Betrachter erscheinen kann, unterdrückt werden.
\documentclass[margin=1cm]{standalone} %... \usepackage{pxpic} %... \begin{document} %... \pxpicnewcolorlist{Farben}{0=blue,1=red,2=green,3=yellow} %... \pxpic[color-list=Farben,skip=s,size=10pt]{ {00000} {11111} {11111} {00000} } %... \pxpic[color-list=Farben,skip=s,size=10pt,gap-hack=0.2pt]{ {00000} {11111} {11111} {00000} } %... \end{document} |
\documentclass[margin=0.2cm]{standalone} %... \usepackage{pxpic} %... \begin{document} \pxpic[gap-hack=0.2pt, colours = { 0 = [HTML]{e6c193}, 1 = [HTML]{ffffff}, 2 = [HTML]{93c8db}, 3 = [HTML]{1477a1}, 4 = [HTML]{1a267d}, 5 = [HTML]{ab9171}, 6 = [HTML]{695b49}} ] { {0000000000000000000000000000000000} {0000000000000000000000000000000000} {0000000000000000000000000000000000} {0000000000000000000000000000000000} {0000000000000000000000000000000000} {0000000000000000000000000000000000} {0000000000000011111100000000000000} {0000000000001111111111000000000000} {0000000000111111112111111100000000} {0000001111111111212212121110000000} {0000011111111122222112222121110000} {0011111111111111221111112222211100} {0111111111111221122121111211120100} {1111111111111122112222121211200000} {1111111112112222122211112212200000} {1111111112211134122111211111110011} {1112211111233134441112211211111111} {1111222121114444441112112221221122} {1122124412211443311441222121222112} {1122234444341434444411211112112212} {2221114443344344143113321122121222} {1111121443444344433444431111222112} {1224441433443444334444331221211211} {2443444334443443344443312211221111} {4443444344434443441433330200210010} {4434444344434433444433000000111000} {4434443344344434444330000000101000} {4444443444344434444330000000000000} {1444141114344434443330000000000000} {1111111241344344443300000000010100} {1111211444341344443300000000000000} {1111222144344344433500000000000001} {2221114441114344433500000000000000} {2222111111444344433550000001101000} {2222221111341111433555000000010011} {2211121121111144133555550000000000} {4111112221121244433555555000000000} {4134144411211111433515555555555000} {4434144111124341433555155555555555} {4443444441111344431555555555155555} {4411144414141344433555555551515155} {1111114444144434433355555555555555} {1122111144444434433355555555555555} {1121244144444434443355555555555551} {1211114444344443443335515555555555} {1144413444431143414335555155555555} {1114443444411114344433611666666555} {4441444344111111114443366616166665} {4444444431111111111443366661666166} {3344144411111111111444336666666666} {3334444111111111111144433666666666} {4433441111111111111114433666666666} {4444311111111111111111443336666666} {4441111111211111111113114433666666} {4411111111112111111112111111166666} {1111111111221111111111211111116666} {1111111111111111121111221122111666} {1111221122211121122111122112221166} {1111222112221221222211112111111111} {1111122212222211211111111212311111} {1121111222112211121112111122231144} {1112221211111122122122211113344114} {1111222111121122222222312111344411} {2111111111112122221332331111114433} {2211112211112222213343231121111444} {2211122221212222213443231221111144} {2112111221222222111441333221221111} {1112221222211122111444333432222111} {1111222211222112211144334433213313} {2221222111133221111144314443311331} {2211222144133111211114433444334133} {2222221143332231121114443344433444} {1122211114344233121111444434443334} {1111111111444443311212114443344433} {2111111111114444311322211444434444} {2214411112111144413332111114443344} {2221441111441111441333111111144433} {3321241341431241443344411212111144} {3322211331132244444344441221211111} {1144222111111224444434441332331111} {1114422111221221114444443343333133} {4414411411122211111444443344433333} {4444441444122112121114444334443444} {4444441441144222222114444434444444} {4444414444442222442211144443444444} {3444444434444444444222224444434444} {3444444443334444444444442444444444} {3344444444433333334444444444444444} {3334444444443333333334444444444444} } \end{document} |