Compare commits
2 Commits
e3347cb775
...
7e09d1b490
Author | SHA1 | Date | |
---|---|---|---|
|
7e09d1b490 | ||
|
5b2320b421 |
@ -14,7 +14,7 @@ Usage:
|
||||
tga_filtres <src.tga> FILTR <dst.tga> [p1] ... [pn]
|
||||
-+- This is the `tthimage' library v0.4.50 (dwtfywl 2022) tTh
|
||||
commande | type arg | explication
|
||||
------------+----------+------------------------------------
|
||||
------------+----------+------------------------------
|
||||
liss2x2 | | lissage 2x2
|
||||
hipass | |
|
||||
lopass | |
|
||||
@ -31,7 +31,7 @@ La colonne du milieu indique le type des paramètres :
|
||||
## tga_alpha
|
||||
|
||||
Manipulation du canal alpha (la transparence), lequel canal
|
||||
est globalement mal géré par l'ensemble de libtthimage.
|
||||
est globalement mal géré par l'ensemble de la libtthimage.
|
||||
|
||||
## tga_applymap
|
||||
|
||||
@ -40,6 +40,12 @@ logiciel de fractales sous ms-dos :
|
||||
[Fractint](https://fractint.org/). Quelques exemples de
|
||||
ces fichiers sont dans le répertoire `Datas/` du projet.
|
||||
|
||||
Vous rencontrerez parfois des messages d'erreur comme
|
||||
« *color map is to big* » ou « *only 97 entries in foo.map* ».
|
||||
Pas d'inquiétude, tout va bien se passer.
|
||||
Dans le premier cas, les lignes en excédent sont ignorées,
|
||||
et dans le second, les valeurs manquantes sont mises au noir.
|
||||
|
||||
La gestion de la ligne de commande est désastreuse. **À REFAIRE**
|
||||
|
||||
## tga_cadre
|
||||
@ -54,7 +60,6 @@ Paramètres mal documentés.
|
||||
Usage:
|
||||
tga_combine s1.tga s2.tga MODE d.tga [PARAMS]
|
||||
```
|
||||
|
||||
Il existe plein de façon de combiner deux images, la commande
|
||||
`testtga list` vous les fera découvrir, la cinquième va vous étonner.
|
||||
|
||||
@ -76,9 +81,15 @@ Attendu avec impatience, il aura le support complet des PNG. Un jour...
|
||||
|
||||
## tga_makehf15
|
||||
|
||||
Pour les POViste acharnés.
|
||||
|
||||
## tga_to_text
|
||||
|
||||
Mis au point pour les imports dans d'autres langages.
|
||||
Mis au point pour les imports dans d'autres langages,
|
||||
comme Awk, Fortran ou R. Chaque ligne du fichier généré
|
||||
contient cinq champs : x, y, r, g, b.
|
||||
|
||||
Attention, il peut vite générer d'énormes fichiers.
|
||||
|
||||
## tga_mires
|
||||
|
||||
@ -96,14 +107,58 @@ vraiment trop nulle...
|
||||
## tga_tools
|
||||
|
||||
Celui ci est très utile pour la recherche de problèmes ou l'automatisation
|
||||
de certaines tâches. Exemple :
|
||||
de certaines tâches. Un exemple rapide :
|
||||
|
||||
```
|
||||
tth@konrad:~/Devel/libtthimage$ tga_tools getdimweb mire.tga
|
||||
width=512 height=512
|
||||
tth@konrad:~/Devel/libtthimage$
|
||||
tth@redlady:~/Devel/libtthimage$ tga_tools getdimweb foo.tga
|
||||
width=640 height=480
|
||||
tth@redlady:~/Devel/libtthimage$ tga_tools getdimpov foo.tga
|
||||
-w640 -h480
|
||||
tth@redlady:~/Devel/libtthimage$
|
||||
```
|
||||
|
||||
### version
|
||||
### surface
|
||||
### getdims, getdimx, getdimpov, getdimweb
|
||||
renvoie une chaine de caractère donnant les dimensions de l'image
|
||||
en différents formats.
|
||||
### width, height
|
||||
renvoie chacune des deux dimensions.
|
||||
### grminmax
|
||||
### message
|
||||
Flags: un entier. Si non nul, change l'encre et le papier pour
|
||||
d'autres valeurs. La chaine de caractère doit être (sjmsb) encodée
|
||||
en CP-850, voire même comme celles du Locomotive du CPC.
|
||||
|
||||
### structs
|
||||
|
||||
Affichage d'information (boutisme, taille des structures) qui ne
|
||||
seront utiles qu'aux codeurs.
|
||||
```
|
||||
tth@redlady:~/Devel/libtthimage/Tools$ ./tga_tools structs
|
||||
petit = 1234 -> 34 12
|
||||
grand = 12345678 -> 78 56 34 12 00 00 00 00
|
||||
basic types : short=2 int=4 long=8 ptr=8
|
||||
Image_Desc : 1296
|
||||
Image_Rect : 24
|
||||
RGBA : 16
|
||||
A_BitPlane : 128
|
||||
RGB_map : 1624
|
||||
Image_Point : 8
|
||||
```
|
||||
|
||||
### header
|
||||
### timestamp
|
||||
### prhisto
|
||||
|
||||
Calcul et affichage en mode texte de l'histogramme d'une image.
|
||||
Un exemple d'utilisation avec gnuplot serait le bienvenu.
|
||||
|
||||
### tag7
|
||||
### environ
|
||||
### mk_rgb
|
||||
### mk_hgrad
|
||||
|
||||
## genplot2
|
||||
|
||||
Outil de tracé pseudo-générique et farci de bugs. *WIP ME HARDLY !*
|
||||
|
@ -141,8 +141,7 @@ fprintf(stderr, "%s -> %s : %dx%d, rgb %d,%d,%d\n", __func__, fname, w, h,
|
||||
r, g, b);
|
||||
#endif
|
||||
|
||||
if (w < 1 || h < 1)
|
||||
{
|
||||
if (w < 1 || h < 1) {
|
||||
fprintf(stderr, "%s : img dims %d %d ?\n", __func__, w, h);
|
||||
return 666;
|
||||
}
|
||||
@ -168,8 +167,7 @@ Image_Desc *src;
|
||||
fprintf(stderr, "timestamping '%s' to '%s' with '%s'\n", fnin, fnout, txt);
|
||||
#endif
|
||||
|
||||
if ( (src=Image_TGA_alloc_load(fnin)) == NULL )
|
||||
{
|
||||
if ( (src=Image_TGA_alloc_load(fnin)) == NULL ) {
|
||||
fprintf(stderr, "tga_tools, load of '%s' failed in %s\n",
|
||||
fnin, __func__);
|
||||
exit(5);
|
||||
@ -207,15 +205,23 @@ if (must_be_verbose()) {
|
||||
__func__, fnin, fnout, txt, flag);
|
||||
}
|
||||
|
||||
if ( (src=Image_TGA_alloc_load(fnin)) == NULL )
|
||||
{
|
||||
if ( (src=Image_TGA_alloc_load(fnin)) == NULL ) {
|
||||
fprintf(stderr, "tga_tools, load of '%s' failed in %s\n",
|
||||
fnin, __func__);
|
||||
exit(5);
|
||||
}
|
||||
|
||||
foo = Image_txt1_box_0(src, txt, posx, posy, 4, &pap, &ink, 0);
|
||||
Image_TGA_save(fnout, src, 0);
|
||||
if (foo) {
|
||||
fprintf(stderr, "err txt1_box_0 = %d\n", foo);
|
||||
return foo;
|
||||
}
|
||||
|
||||
foo = Image_TGA_save(fnout, src, 0);
|
||||
if (foo) {
|
||||
fprintf(stderr, "%s: err TGA save = %d\n", __func__, foo);
|
||||
return foo;
|
||||
}
|
||||
|
||||
#if DEBUG_LEVEL
|
||||
fprintf(stderr, "%s : saving %s\n", __func__, fnout);
|
||||
@ -234,21 +240,18 @@ if (flags) {
|
||||
fprintf(stderr, "in %s, flags must be 0\n", __func__);
|
||||
}
|
||||
|
||||
if ( (src=Image_TGA_alloc_load(filename)) == NULL )
|
||||
{
|
||||
if ( (src=Image_TGA_alloc_load(filename)) == NULL ) {
|
||||
fprintf(stderr, "tga_tools, chargement '%s' failed\n", filename);
|
||||
exit(5);
|
||||
}
|
||||
foo = Image_histo_RGB(src, hr, hb, hg);
|
||||
if (foo)
|
||||
{
|
||||
if (foo) {
|
||||
fprintf(stderr, "tga_tools, calcul histogramme: %d %s\n",
|
||||
foo, Image_err2str(foo));
|
||||
exit(5);
|
||||
}
|
||||
|
||||
for (foo=0; foo<256; foo++)
|
||||
{
|
||||
for (foo=0; foo<256; foo++) {
|
||||
printf("%3d %8ld %8ld %8ld\n", foo, hr[foo], hg[foo], hb[foo]);
|
||||
}
|
||||
|
||||
@ -260,15 +263,13 @@ int print_environ(void)
|
||||
{
|
||||
int foo;
|
||||
char *ptr;
|
||||
char *noms[] =
|
||||
{
|
||||
char *noms[] = {
|
||||
NOM_VAR_ENV_VERBOSE, NOM_VAR_ENV_TIMING, "LIBIMAGE_PATH",
|
||||
"TTH_CONF_DIR", "LIBIMAGE_DEBUG", "BITMAP_FONTS",
|
||||
"FIXED_SEED", ENV_DEFAULT_RGBA
|
||||
};
|
||||
|
||||
for (foo=0; foo<(int)(sizeof(noms)/sizeof(char *)); foo++)
|
||||
{
|
||||
for (foo=0; foo<(int)(sizeof(noms)/sizeof(char *)); foo++) {
|
||||
ptr = getenv(noms[foo]);
|
||||
printf("%5d %-25s %s\n", foo, noms[foo], ptr);
|
||||
}
|
||||
@ -286,8 +287,7 @@ char buffer[100];
|
||||
fprintf(stderr, "%s:%s %s %d\n", __FILE__, __func__, fname, value);
|
||||
#endif
|
||||
|
||||
if ( (src=Image_TGA_alloc_load(fname)) == NULL )
|
||||
{
|
||||
if ( (src=Image_TGA_alloc_load(fname)) == NULL ) {
|
||||
fprintf(stderr, "tga_tools, load of '%s' failed in %s\n",
|
||||
fname, __func__);
|
||||
exit(5);
|
||||
@ -339,16 +339,14 @@ foo = set_new_seed(42);
|
||||
fprintf(stderr, "!!! set new seed -> %d\n", foo);
|
||||
#endif
|
||||
|
||||
if (1 == argc)
|
||||
{
|
||||
if (1 == argc) {
|
||||
fprintf(stderr, "* tga_tools v 0.1.33 (%s) *\n", __DATE__);
|
||||
fprintf(stderr, "usage:\n\t%s action f.tga [params]\n", argv[0]);
|
||||
liste_mots_clefs(commandes, 42);
|
||||
exit(0);
|
||||
}
|
||||
|
||||
if (-1 == (idx=cherche_mot_clef(argv[1], commandes, &mode, &nbarg)) )
|
||||
{
|
||||
if (-1 == (idx=cherche_mot_clef(argv[1], commandes, &mode, &nbarg)) ) {
|
||||
fprintf(stderr, "action '%s' inconnue.\n", argv[1]);
|
||||
exit(1);
|
||||
}
|
||||
@ -452,7 +450,7 @@ switch(mode)
|
||||
}
|
||||
|
||||
if (foo) {
|
||||
fprintf(stderr, "*** at end of %s, foo was %d\n", __func__, foo);
|
||||
/* fprintf(stderr, "*** at end of %s, foo was %d\n", __func__, foo); */
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user