X pixmap

X Pixmap (XPM)  er et tekstbaseret grafisk filformat. Bruges af serversiden af ​​X Window System . Hovedtræk ved formatet er, at det bruger C -sprogets semantik og kan inkluderes i koden. Udviklet i 1989 af Daniel Dardailler og Colas Nahaboo fra Bull Research Center i Sophia Antipolis ( Frankrig ). Senere forbedret af Arnaud Le Hors.

Filformat

Filen består af en beskrivelse af en række strenge i 6 sektioner af formatet:

statisk tegn * < variabel_navn > [] = { < Værdier > , < Farver > , < Pixels > , < Udvidelser > };

Værdier

Beskriver billedparametre med mellemrumsadskilte værdier: bredde, højde, antal farver, tegn pr. farve. For eksempel:

"5 3 256 2" ,

Farver

Farvetabellen beskriver, hvordan symboler svarer til farver. Formatet er <tegn><mellemrum><c><mellemrum><værdi>. For eksempel:

"`.c#ffffff" , "`#c#ff0000" , "`ac #6b6b6b"

Pixels

Strenge bestående af tegnene beskrevet i farvetabellen. For eksempel en 3 x 3 pixel rød firkant på en 5 x 3 pixel hvid boks:

"`.`#`#`#`." , "`.`#`#`#`." , "`.`#`#`#`."

Gennemsigtighed

Formatet understøtter 1 transparent farve, som er beskrevet som Ingen i farvetabellen. For eksempel:

"`.c Ingen" ,

Billedeksempel

Dette billede ser sådan ud i xpm-format:

/* XPM */ statisk tegn * green_simple_cross_xpm [] = { /* bredde højde antal_farver tegn_per_pixel */ "36 36 5 1" , /* farver */ "`c#ffffff" , ".c#00ff00" , "#c#ff0000" , "ac#000000" , "bc#0000ff" , /* pixels */ "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" };

X Pixmap-egenskaber

X Pixmap-formatet har en række fordele og ulemper, der adskiller det fra andre formater:

  1. X Pixmap-formatet svarer til serversiden af ​​X-protokollen, i næsten alle Xlib-funktioner sendes parameteren drawable, hvilket kan betyde enten vindue Window, eller XPixmap.
  2. Billedlagringsformatet på klientsiden er XImage .

Brug i kode

Det er nok at inkludere filen, og du kan bruge en variabel (dette er for eksempel green_simple_cross_xpm):

#include "image.xpm"

X Pixmap kan bruges ikke kun til X Window -applikationer , men også i udviklingsmiljøer på tværs af platforme. For eksempel er understøttelse af dette format fuldt implementeret i wxWidgets-biblioteket . [en]

Noter

  1. Kapitel X. Arbejde med billeder. Del 1 Arkiveret 28. juni 2010 på Wayback Machine Julian Smart