bmtoa bitmap, bmtoa, atobm - bitmapový editor a konvertorové nástroje pro X Window System
bitmap [ -options . . . ] [ filename ] [ basename ]
bmtoa [ -chars . . . ] [ filename ]
atobm [ -chars cc ] [ -name variable ] [ -xhot number ] [ -yhot number ] [ filename ]
Program bitmap je základní nástroj pro vytváření nebo úpravu obdélníkových obrázků složených z 1 a 0. Bitmapy se v X používají k definování oblastí oříznutí, tvarů kurzoru, tvarů ikon a vzorů dlaždic a teček.
Filtry bmtoa a atobm převádějí bitmapové soubory (FILE FORMAT) do az řetězců ASCII. Nejčastěji se používají k rychlému tisku bitmap a generování verzí pro zahrnutí do textu.
Bitmapa podporuje standardní argumenty příkazového řádku X Toolkit (viz X(7)). Podporovány jsou také následující dodatečné argumenty.
Určuje velikost mřížky ve čtvercích.
Určuje šířku čtverců v pixelech.
Určuje výšku čtverců v pixelech.
Tolerance mřížky. Pokud rozměry čtverce klesnou pod zadanou hodnotu, mřížka se automaticky vypne.
Zapíná nebo vypíná čáry mřížky.
Zapíná nebo vypíná hlavní osy.
Zapíná nebo vypíná přerušování pro rámeček a čáry mřížky.
Zapne nebo vypne tečkování zvýrazněných čtverců.
Zapíná nebo vypíná proporcionální režim. Pokud je zapnutý proporcionální režim, šířka čtverce se rovná výšce čtverce. Pokud je proporcionální režim vypnutý, bitová mapa použije menší čtvercový rozměr, pokud byly původně odlišné.
Určuje bitmapu, která se má použít jako tečka pro přerušování.
Určuje bitmapu, která se má použít jako tečka pro zvýraznění.
Určuje barvu použitou pro zvýraznění.
Určuje barvu použitou pro rámeček a čáry mřížky.
Určuje bitmapu, která se má zpočátku načíst do programu. Pokud soubor neexistuje, bitmapa bude předpokládat, že se jedná o nový soubor.
Určuje základní název, který se má použít ve výstupním souboru kódu C. Pokud se liší od základního názvu v pracovním souboru, bitmapa jej při ukládání souboru změní.
Bmtoa přijímá následující možnost:
Tato možnost určuje dvojici znaků, které se mají použít v řetězcové verzi bitmapy. První znak se používá pro 0 bitů a druhý znak se používá pro 1 bit. Výchozí nastavení je používat pomlčky (-) pro 0 a ostré znaky (#) pro 1.
Atobm přijímá následující možnosti:
Tato možnost určuje dvojici znaků, které se mají použít při převodu bitmap řetězce na pole čísel. První znak představuje 0 bit a druhý znak představuje 1 bit. Výchozí nastavení je používat pomlčky (-) pro 0 a ostré znaky (#) pro 1.
Tato volba určuje název proměnné, který se použije při zápisu bitmapového souboru. Výchozím nastavením je použít základní název argumentu příkazového řádku filename nebo jej ponechat prázdné, pokud se čte standardní vstup.
Tato možnost určuje souřadnici X aktivního bodu. Jsou povoleny pouze kladné hodnoty. Ve výchozím nastavení nejsou zahrnuty žádné informace o hotspotu.
Tato možnost určuje souřadnici Y aktivního bodu. Jsou povoleny pouze kladné hodnoty. Ve výchozím nastavení nejsou zahrnuty žádné informace o hotspotu.
Bitmapa zobrazuje mřížku, ve které každý čtverec představuje jeden bit v upravovaném obrázku. Skutečnou velikost bitmapového obrázku, jak by vypadal normálně a převráceně, lze získat stisknutím klávesy Meta-I. Vyskakovací okno obrázku můžete libovolně přesunout a pokračovat v úpravách. Dalším stisknutím levého tlačítka myši ve vyskakovacím okně nebo Meta-I odstraníte bitmapový obrázek skutečné velikosti.
Pokud má být bitmapa použita pro definování kurzoru, může být jeden ze čtverců na obrázcích označen jako aktivní bod. To určuje, kam kurzor ve skutečnosti ukazuje. U kurzorů s ostrými hroty (jako jsou šipky nebo prsty) je to obvykle na konci hrotu; u symetrických kurzorů (jako jsou křížky nebo terčíky) je to obvykle uprostřed.
Bitmapy jsou uloženy jako malé fragmenty kódu C vhodné pro zahrnutí do aplikací. Poskytují pole bitů a také symbolické konstanty udávající šířku, výšku a aktivní bod (pokud je zadán), které lze použít při vytváření kurzorů, ikon a dlaždic.
Chcete-li upravit bitmapový obrázek, jednoduše klikněte na jedno z tlačítek s příkazy kreslení (Bod, Křivka, Čára, Obdélník, atd.) a přesuňte ukazatel do okna rastrové mřížky. Stiskněte jedno z tlačítek myši a provede se příslušná akce. Obvodové čtverce můžete buď nastavit, vymazat nebo převrátit. Nastavení čtverce mřížky odpovídá nastavení bitu v bitmapovém obrázku na 1. Vymazání čtverce mřížky odpovídá nastavení bitu v bitmapovém obrázku na 0. Invertování čtverce mřížky odpovídá změně bitu v bitmapovém obrázku z 0 na 1 nebo 1 až 0, podle toho, jaký byl jeho předchozí stav. Výchozí chování tlačítek myši je uvedeno níže.
MouseButton1 Set
MouseButton2 Invert
MouseButton3 Clear
MouseButton4 Clear
MouseButton5 ClearToto výchozí chování lze změnit nastavením prostředků funkce tlačítka. Příklad je uveden níže.
bitmap*button1Function: Set
bitmap*button2Function: Clear
bitmap*button3Function: Invert
etc.Funkce tlačítka se vztahuje na všechny kreslicí příkazy, včetně kopírování, přesouvání a vkládání, zaplavování vyplňování a nastavení aktivního bodu.
Zde je seznam kreslicích příkazů přístupných pomocí tlačítek na levé straně okna aplikace. Některé příkazy lze zrušit stisknutím A uvnitř bitmapového okna, což umožňuje uživateli vybrat různé vodicí body, kde je to vhodné.
Tento příkaz vymaže všechny bity v bitmapovém obrazu. Čtverce mřížky budou nastaveny na barvu pozadí. Stisknutí C uvnitř bitmapového okna má stejný účinek.
Tento příkaz nastaví všechny bity v bitmapovém obrázku. Čtverce mřížky budou nastaveny na barvu popředí. Stisknutí S uvnitř bitmapového okna má stejný účinek.
Tento příkaz invertuje všechny bity v bitmapovém obrázku. Čtverce mřížky budou vhodně převráceny. Stisknutí I uvnitř bitmapového okna má stejný účinek.
Tento příkaz se používá k označení oblasti mřížky přetažením obdélníkového tvaru v barvě zvýraznění. Jakmile je oblast označena, lze ji ovládat řadou příkazů (viz Nahoru, Dolů, Vlevo, Vpravo, Otočit, Převrátit, Vyjmout atd.) Na místě může být přítomna pouze jedna označená oblast. kdykoliv. Pokud se pokusíte označit jinou oblast, stará značka zmizí. Stejného efektu lze dosáhnout stisknutím Shift-MouseButton1 a přetažením obdélníku v okně mřížky. StisknutímShift-MouseButton2 označíte celou oblast mřížky.
Tento příkaz způsobí, že označená oblast zmizí. Stejného efektu lze dosáhnout stisknutímShift-MouseButton3.
Tento příkaz se používá ke zkopírování oblasti mřížky z jednoho místa do druhého. Pokud není zobrazena žádná označená oblast mřížky, chová se Kopírovat stejně jako Označit popsané výše. Jakmile je označená oblast mřížky zobrazena barvou zvýraznění, má tento příkaz dvě alternativní chování. Pokud kliknete tlačítkem myši uvnitř označené oblasti, budete moci přetáhnout obdélník, který představuje označenou oblast, na požadované místo. Po uvolnění tlačítka myši se oblast zkopíruje. Pokud klepnete mimo označenou oblast, Kopírovat bude předpokládat, že chcete označit jinou oblast bitmapového obrázku, takže se bude opět chovat jako Označit.
Tento příkaz se používá k přesunutí oblasti mřížky z jednoho místa na druhé. Jeho chování se podobá chování příkazuKopírovat, až na to, že označená oblast bude přesunuta místo zkopírování.
Tento příkaz převrátí bitmapový obrázek s ohledem na vodorovné osy. Pokud je označená oblast mřížky zvýrazněna, bude fungovat pouze uvnitř označené oblasti. Stisknutí H uvnitř bitmapového okna má stejný účinek.
Tento příkaz posune bitmapový obrázek o jeden pixel nahoru. Pokud je označená oblast mřížky zvýrazněna, bude fungovat pouze uvnitř označené oblasti. Stisknutí šipky nahoru uvnitř bitmapového okna má stejný účinek.
Tento příkaz převrátí bitmapový obrázek s ohledem na vertikální osy. Pokud je označená oblast mřížky zvýrazněna, bude fungovat pouze uvnitř označené oblasti. Stisknutí V uvnitř bitmapového okna má stejný účinek.
Tento příkaz přesune bitmapový obrázek o jeden pixel doleva. Pokud je označená oblast mřížky zvýrazněna, bude fungovat pouze uvnitř označené oblasti. Stisknutí šipky doleva uvnitř bitmapového okna má stejný účinek.
Tento příkaz složí bitmapový obraz tak, aby protilehlé rohy přilehly. To je užitečné při vytváření bitmapových obrázků pro dlaždice. Stisknutí F uvnitř bitmapového okna má stejný účinek.
Tento příkaz přesune bitmapový obrázek o jeden pixel doprava. Pokud je označená oblast mřížky zvýrazněna, bude fungovat pouze uvnitř označené oblasti. Stejný efekt má stisknutí šipky vpravo uvnitř bitmapového okna.
Tento příkaz otočí bitmapový obrázek o 90 stupňů doleva (proti směru hodinových ručiček). Pokud je označená oblast mřížky zvýrazněna, bude fungovat pouze uvnitř označené oblasti. Stisk L uvnitř bitmapového okna má stejný účinek.
Tento příkaz přesune bitmapový obrázek o jeden pixel dolů. Pokud je označená oblast mřížky zvýrazněna, bude fungovat pouze uvnitř označené oblasti. Stisknutí šipky dolů uvnitř bitmapového okna má stejný účinek.
Tento příkaz otočí bitmapový obrázek o 90 stupňů doprava (ve směru hodinových ručiček). Pokud je označená oblast mřížky zvýrazněna, bude fungovat pouze uvnitř označené oblasti. Stisk R uvnitř bitmapového okna má stejný účinek.
Tento příkaz změní čtverce mřížky pod ukazatelem myši, pokud je stisknuto tlačítko myši. Pokud táhnete tlačítko myši nepřetržitě, čára nemusí být souvislá, v závislosti na rychlosti vašeho systému a frekvenci pohybů myši.
Tento příkaz změní čtverce mřížky pod ukazatelem myši, pokud je stisknuto tlačítko myši. Pokud budete táhnout tlačítko myši nepřetržitě, zajistíte, že čára bude souvislá. Pokud je váš systém pomalý nebobitmapa přijímá velmi málo událostí pohybu myši, může se chovat docela zvláštně.
Tento příkaz změní čtverce obruby v linii mezi dvěma čtverci. Jakmile stisknete tlačítko myši v okně mřížky, bitmapa zvýrazní čáru od čtverce, kde bylo původně stisknuto tlačítko myši, po čtverec, kde je umístěn ukazatel myši. Uvolněním tlačítka myši způsobíte, že se změna projeví a zvýrazněný řádek zmizí.
Tento příkaz změní čtverce obruby v obdélníku mezi dvěma čtverci. Jakmile stisknete tlačítko myši v okně mřížky, bitmapa zvýrazní obdélník od čtverce, kde bylo původně stisknuto tlačítko myši, po čtverec, kde je umístěn ukazatel myši. Uvolněním tlačítka myši způsobíte, že se změna projeví a zvýrazněný obdélník zmizí.
Tento příkaz je totožný s příkazemObdélník, s tím rozdílem, že na konci bude obdélník vyplněn, nikoli obrysem.
Tento příkaz změní čtverce obruby v kruhu mezi dvěma čtverci. Jakmile stisknete tlačítko myši v okně mřížky, bitová mapa zvýrazní kruh od čtverce, kde bylo původně stisknuto tlačítko myši, po čtverec, kde je umístěn ukazatel myši. Uvolněním tlačítka myši způsobíte, že se změna projeví a zvýrazněný kruh zmizí.
Tento příkaz je shodný s příkazemKruh, s tím rozdílem, že na konci bude kruh vyplněn, nikoli obrysem.
Tento příkaz vyplní připojenou oblast pod ukazatelem myši, když kliknete na požadovaný čtverec. Diagonálně sousedící čtverce se nepovažují za spojené.
Tento příkaz určí jeden čtverec v mřížce jako aktivní bod, pokud má být tento bitmapový obrázek použit pro definování kurzoru. Stisknutí tlačítka myši v požadovaném čtverci způsobí zobrazení tvaru kosočtverce.
Tento příkaz odstraní z bitmapového obrazu všechna určená aktivní místa.
Tento příkaz vrátí zpět poslední provedený příkaz. Má hloubku jedna, to znamená, že stisknutím Zpět po Zpět se vrátí zpět.
K příkazům nabídky Soubor lze přistupovat stisknutím tlačítka Soubor a výběrem příslušné položky nabídky nebo stisknutím klávesy Ctrl s jinou klávesou. Tyto příkazy se zabývají soubory a globálními parametry bitmapy, jako je velikost, základní název, název souboru atd.
Tento příkaz vymaže oblast úprav a vyzve k zadání názvu nového souboru, který chcete upravit. V novém souboru se nenačte.
Tento příkaz se používá k načtení nového bitmapového souboru do bitmapového editoru. Pokud aktuální obrázek nebyl uložen, bude uživatel dotázán, zda má změny uložit nebo ignorovat. Editor může upravovat pouze jeden soubor najednou. Pokud potřebujete interaktivní úpravy, spusťte několik editorů a použijte mechanismus vyjmutí a vložení, jak je popsáno níže.
Tento příkaz se používá k vložení bitmapového souboru do právě upravovaného obrázku. Po zobrazení výzvy k zadání názvu souboru klikněte do okna mřížky a přetáhněte ohraničený obdélník na místo, kam chcete vložit nový soubor.
Tento příkaz uloží bitmapový obrázek. Nevyzve k zadání názvu souboru, pokud není uvedeno, že je <žádný>. Pokud ponecháte název souboru bez označení nebo -, výstup bude přesměrován do stdout.
Tento příkaz uloží bitmapový obrázek po výzvě k zadání nového názvu souboru. Mělo by se použít, pokud chcete změnit název souboru.
Tento příkaz se používá ke změně velikosti editační oblasti na nový počet pixelů. Velikost by měla být zadána ve formátu WIDTHxHEIGHT. Informace v upravovaném obrázku nebudou ztraceny, pokud nebude nová velikost menší než aktuální velikost obrázku. Editor nebyl navržen pro úpravu velkých souborů.
Tento příkaz se používá ke změně měřítka editační oblasti na novou šířku a výšku. Velikost by měla být zadána ve formátu WIDTHxHEIGHT. Nebude provádět antialiasing a informace se ztratí, pokud změníte měřítko na menší velikosti. Neváhejte přidat své vlastní algoritmy pro lepší změnu měřítka.
Tento příkaz se používá ke změně názvu souboru bez změny základního názvu nebo uložení souboru. Pokud jako název souboru zadáte -, výstup bude přesměrován do stdout.
Tento příkaz se používá ke změně základního jména, pokud je požadováno jiné než zadané jméno souboru.
Tento příkaz ukončí bitmapovou aplikaci. Pokud soubor nebyl uložen, bude uživatel dotázán, zda má obrázek uložit nebo ne. Tento příkaz je upřednostňován před zabíjením procesu.
K příkazům nabídky Úpravy lze přistupovat stisknutím tlačítka Úpravy a výběrem příslušné položky nabídky nebo stisknutím klávesy Meta s jinou klávesou. Tyto příkazy se zabývají funkcemi úprav, jako je mřížka, osy, přiblížení, vyjmutí a vložení atd.
Tento příkaz zobrazí upravovaný obrázek a jeho převrácenou hodnotu v jeho skutečné velikosti v samostatném okně. Okno lze přesunout pryč a pokračovat v úpravách. Stisknutím levého tlačítka myši v okně obrázku obrázek zmizí z obrazovky.
Tento příkaz ovládá mřížku v oblasti úprav. Pokud je rozestup mřížky nižší než hodnota určená zdrojem gridTolerance (ve výchozím nastavení 8), mřížka se automaticky vypne. Lze jej vynutit explicitní aktivací tohoto příkazu.
Tento příkaz ovládá tečku pro kreslení čar mřížky. Stipple určený prostředkem pomlček lze aktivací tohoto příkazu zapnout nebo vypnout.
Tento příkaz řídí zvýraznění hlavních os upravovaného obrázku. Skutečné čáry nejsou součástí obrázku. Jsou poskytovány jako pomoc uživateli při vytváření symetrických obrázků nebo kdykoli, když zvýrazněné hlavní osy pomáhají při úpravách.
Tento příkaz řídí tečkování zvýrazněných oblastí bitmapového obrazu. Stipple specifikovaný zdrojem stipple lze zapnout nebo vypnout aktivací tohoto příkazu.
Tento příkaz řídí proporcionální režim. Pokud je zapnutý proporcionální režim, musí být šířka a výška všech obrazových čtverců stejná, bez ohledu na proporce bitmapového okna.
Tento příkaz řídí režim přiblížení. Pokud je již zobrazena označená oblast obrázku, bitmapa se na ni automaticky přiblíží. V opačném případě bude muset uživatel zvýraznit oblast, kterou chcete upravit v režimu přiblížení a bitmapa se do ní automaticky přepne. V režimu zoom lze používat všechny editační příkazy a další nástroje. Když oddálíte, příkaz undo vrátí zpět celou relaci přiblížení.
Tento příkaz vyjme obsah zvýrazněné oblasti obrázku do vnitřní vyrovnávací paměti pro vyjmutí a vložení.
Tento příkaz zkopíruje obsah zvýrazněné oblasti obrázku do vnitřní vyrovnávací paměti pro vyjmutí a vložení.
Tento příkaz zkontroluje, zda existují nějaké další bitmapové aplikace se zvýrazněnou oblastí obrázku, nebo zda je něco ve vnitřní vyrovnávací paměti pro vyjmutí a vložení a zkopíruje to do obrázku. Chcete-li umístit zkopírovaný obrázek, klikněte do okna úprav a přetáhněte obrysový obrázek do pozice, kam chcete umístit i, a poté tlačítko uvolněte.
Bitmapa podporuje dva mechanismy vyjmutí a vložení; vnitřní vyjmout a vložit a globální výběr X vyjmout a vložit. Interní vyjmutí a vložení se používá při provádění příkazů kopírování a přesunutí výkresu a také příkazů vyjmutí a kopírování z nabídky úprav. Globální výběr X vyjmout a vložit se používá vždy, když je kdekoli na obrazovce zobrazena zvýrazněná oblast bitmapového obrázku. Chcete-li zkopírovat část obrázku z jiného bitmapového editoru, jednoduše zvýrazněte požadovanou oblast pomocí příkazu Označit nebo stisknutím klávesy Shift a přetažením oblasti levým tlačítkem myši. Když se vybraná oblast zvýrazní, všechny ostatní aplikace (jako je xterm atd.), které používají primární výběr, zruší své hodnoty výběru a zruší zvýraznění příslušných informací. Nyní pomocí příkazu Vložit z nabídky Úpravy nebo ovládacího tlačítka myši zkopírujte vybranou část obrázku do jiné (nebo stejné) bitmapové aplikace. Pokud se o to pokusíte bez viditelné zvýrazněné oblasti obrázku, bitmapa se vrátí zpět do vnitřní vyrovnávací paměti pro vyjmutí a vložení a vloží vše, co tam bylo právě uloženo.
Níže je struktura widgetů bitmap aplikace. Odsazení označuje hierarchickou strukturu. Nejprve je uveden název třídy widgetu, za nímž následuje název instance widgetu. Všechny widgety kromě bitmapového widgetu jsou ze standardní sady widgetů Athena.
Bitmap bitmap
TransientShell image
Box box
Label normalImage
Label invertedImage
TransientShell input
Dialog dialog
Command okay
Command cancel
TransientShell error
Dialog dialog
Command abort
Command retry
TransientShell qsave
Dialog dialog
Command yes
Command no
Command cancel
Paned parent
Form formy
MenuButton fileButton
SimpleMenu fileMenu
SmeBSB new
SmeBSB load
SmeBSB insert
SmeBSB save
SmeBSB saveAs
SmeBSB resize
SmeBSB rescale
SmeBSB filename
SmeBSB basename
SmeLine line
SmeBSB quit
MenuButton editButton
SimpleMenu editMenu
SmeBSB image
SmeBSB grid
SmeBSB dashed
SmeBSB axes
SmeBSB stippled
SmeBSB proportional
SmeBSB zoom
SmeLine line
SmeBSB cut
SmeBSB copy
SmeBSB paste
Label status
Pane pane
Bitmap bitmap
Form form
Command clear
Command set
Command invert
Toggle mark
Command unmark
Toggle copy
Toggle move
Command flipHoriz
Command up
Command flipVert
Command left
Command fold
Command right
Command rotateLeft
Command down
Command rotateRight
Toggle point
Toggle curve
Toggle line
Toggle rectangle
Toggle filledRectangle
Toggle circle
Toggle filledCircle
Toggle floodFill
Toggle setHotSpot
Command clearHotSpot
Command undoPokud chcete, aby byla bitmapa viditelná barevně, zahrňte následující do části #ifdef COLOR souboru, který čtete pomocí xrdb:
*customization: -color
To způsobí, že bitmapa nabere barvy v souboru přizpůsobení barev výchozí aplikace:
/etc/X11/app-defaults/Bitmap-color
Widget Bitmap je samostatný widget pro úpravu rastrových obrázků. Není určen k úpravě velkých obrázků, i když k tomuto účelu může být také použit. Lze jej volně začlenit do jiných aplikací a použít jako standardní nástroj pro úpravy. Níže jsou uvedeny zdroje poskytované bitmapovým widgetem.
| Bitmap Widget | |
| Header file | Bitmap.h |
| Class | bitmapWidgetClass |
| Class Name | Bitmap |
| Superclass | Bitmap |
Všechny zdroje Simple Widget plus . . .
| Name | Class | Type | Default Value | |
| foreground | Foreground | Pixel | XtDefaultForeground | |
| highlight | Highlight | Pixel | XtDefaultForeground | |
| framing | Framing | Pixel | XtDefaultForeground | |
| gridTolerance | GridTolerance | Dimension | 8 | |
| size | Size | String | 32x32 | |
| dashed | Dashed | Boolean | True | |
| grid | Grid | Boolean | True | |
| stippled | Stippled | Boolean | True | |
| proportional | Proportional | Boolean | True | |
| axes | Axes | Boolean | False | |
| squareWidth | SquareWidth | Dimension | 16 | |
| squareHeight | SquareHeight | Dimension | 16 | |
| margin | Margin | Dimension | 16 | |
| xHot | XHot | Position | NotSet (-1) | |
| yHot | YHot | Position | NotSet (-1) | |
| button1Function | Button1Function | DrawingFunction | Set | |
| button2Function | Button2Function | DrawingFunction | Invert | |
| button3Function | Button3Function | DrawingFunction | Clear | |
| button4Function | Button4Function | DrawingFunction | Invert | |
| button5Function | Button5Function | DrawingFunction | Invert | |
| filename | Filename | String | None ("") | |
| basename | Basename | String | None ("") |
Davor Matic, MIT X Consortium