X pixmap

X Pixmap (XPM)  är ett textbaserat grafiskt filformat. Används av serversidan av X Window System . Huvuddragen i formatet är att det använder C -språkets semantik och kan inkluderas i koden. Utvecklad 1989 av Daniel Dardailler och Colas Nahaboo från Bull Research Centre i Sophia Antipolis ( Frankrike ). Senare förbättrad av Arnaud Le Hors.

Filformat

Filen består av en beskrivning av en rad strängar i 6 sektioner av formatet:

statiskt tecken * < variabelnamn > [] = { < Värden > , < Färger > , < Pixels > , < Tillägg > };

Värden

Beskriver bildparametrar med mellanrumsseparerade värden: bredd, höjd, antal färger, tecken per färg. Till exempel:

"5 3 256 2" ,

Färger

Färgtabellen beskriver hur symboler motsvarar färger. Formatet är <tecken><mellanslag><c><mellanslag><värde>. Till exempel:

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

Pixels

Strängar som består av de tecken som beskrivs i färgtabellen. Till exempel, en röd fyrkant på 3 gånger 3 pixlar på en vit ruta med 5 gånger 3 pixlar:

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

Transparens

Formatet stöder 1 transparent färg, som beskrivs som Ingen i färgtabellen. Till exempel:

"`.c Ingen" ,

Bildexempel

Den här bilden ser ut så här i xpm-format:

/* XPM */ statiskt tecken * green_simple_cross_xpm [] = { /* bredd höjd antal_färger tecken_per_pixel */ "36 36 5 1" , /* färger */ "`c#ffffff" , ".c#00ff00" , "#c#ff0000" , "ac#000000" , "bc#0000ff" , /* pixlar */ "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , "`````````````............############" , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , ".................................." , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbb" , "aaaaaaaaaaaa............bbbbbbbbbbbbb" };

X Pixmap-egenskaper

X Pixmap-formatet har ett antal fördelar och nackdelar som skiljer det från andra format:

  1. X Pixmap-formatet motsvarar serversidan av X-protokollet, i nästan alla Xlib-funktioner skickas parametern drawable, vilket kan betyda antingen fönster Window, eller XPixmap.
  2. Bildlagringsformatet på klientsidan är XImage .

Användning i kod

Det räcker att inkludera filen och du kan använda en variabel (det här är till exempel green_simple_cross_xpm):

#inkludera "image.xpm"

X Pixmap kan användas inte bara för X Window -applikationer utan också i plattformsoberoende utvecklingsmiljöer. Till exempel är stöd för detta format fullt implementerat i wxWidgets-biblioteket . [ett]

Anteckningar

  1. Kapitel X. Arbeta med bilder. Del 1 Arkiverad 28 juni 2010 på Wayback Machine Julian Smart