aligned pdf hardcopy colors to xschem light colorscheme, pdf and svg exports use the enable_layer[] array to display/hide layers as does draw().

This commit is contained in:
Stefan Schippers 2020-08-30 10:38:29 +02:00
parent 11c940aa09
commit a419b6aa63
5 changed files with 40 additions and 35 deletions

View File

@ -596,7 +596,6 @@ void draw_temp_symbol(int what, GC gc, int n,int layer,int tmp_flip, int rot,
#endif
if(inst_ptr[n].ptr == -1) return;
/* if(layer != PINLAYER && !enable_layer[layer] ) return; */
if(!has_x) return;
flip = inst_ptr[n].flip;

View File

@ -259,7 +259,8 @@ static void ps_draw_symbol(int n,int layer,int tmp_flip, int rot,
xArc arc;
xPolygon polygon;
if(inst_ptr[n].ptr == -1) return;
if( (layer != PINLAYER && !enable_layer[layer]) ) return;
if(layer==0)
{
x1=X_TO_PS(inst_ptr[n].x1);
@ -328,7 +329,7 @@ static void ps_draw_symbol(int n,int layer,int tmp_flip, int rot,
ROTATION(0.0,0.0,arc.x,arc.y,x1,y1);
ps_drawarc(layer, arc.fill, x0+x1, y0+y1, arc.r, angle, arc.b);
}
for(j=0;j< (inst_ptr[n].ptr+instdef)->rects[layer];j++)
if( (layer != PINLAYER || enable_layer[layer]) ) for(j=0;j< (inst_ptr[n].ptr+instdef)->rects[layer];j++)
{
box = ((inst_ptr[n].ptr+instdef)->boxptr[layer])[j];
ROTATION(0.0,0.0,box.x1,box.y1,x1,y1);
@ -351,10 +352,12 @@ static void ps_draw_symbol(int n,int layer,int tmp_flip, int rot,
textlayer = (inst_ptr[n].ptr+instdef)->txtptr[j].layer;
if(textlayer < 0 || textlayer >= cadlayers) textlayer = layer;
}
ps_draw_string(textlayer, text.txt_ptr,
(text.rot + ( (flip && (text.rot & 1) ) ? rot+2 : rot) ) & 0x3,
flip^text.flip, text.hcenter, text.vcenter,
x0+x1, y0+y1, text.xscale, text.yscale);
if((layer == PINLAYER && inst_ptr[n].flags & 4) || enable_layer[textlayer]) {
ps_draw_string(textlayer, text.txt_ptr,
(text.rot + ( (flip && (text.rot & 1) ) ? rot+2 : rot) ) & 0x3,
flip^text.flip, text.hcenter, text.vcenter,
x0+x1, y0+y1, text.xscale, text.yscale);
}
}
restore_lw();
}

View File

@ -285,6 +285,8 @@ static void svg_draw_symbol(int n,int layer,int tmp_flip, int rot,
xArc arc;
xPolygon polygon;
if(inst_ptr[n].ptr == -1) return;
if( (layer != PINLAYER && !enable_layer[layer]) ) return;
if(layer==0)
{
x1=X_TO_SVG(inst_ptr[n].x1);
@ -354,7 +356,7 @@ static void svg_draw_symbol(int n,int layer,int tmp_flip, int rot,
svg_drawarc(layer, arc.fill, x0+x1, y0+y1, arc.r, angle, arc.b);
}
for(j=0;j< (inst_ptr[n].ptr+instdef)->rects[layer];j++)
if( (layer != PINLAYER || enable_layer[layer]) ) for(j=0;j< (inst_ptr[n].ptr+instdef)->rects[layer];j++)
{
box = ((inst_ptr[n].ptr+instdef)->boxptr[layer])[j];
ROTATION(0.0,0.0,box.x1,box.y1,x1,y1);
@ -377,11 +379,12 @@ static void svg_draw_symbol(int n,int layer,int tmp_flip, int rot,
textlayer = (inst_ptr[n].ptr+instdef)->txtptr[j].layer;
if(textlayer < 0 || textlayer >= cadlayers) textlayer = layer;
}
svg_draw_string(textlayer, text.txt_ptr,
(text.rot + ( (flip && (text.rot & 1) ) ? rot+2 : rot) ) & 0x3,
flip^text.flip, text.hcenter, text.vcenter,
x0+x1, y0+y1, text.xscale, text.yscale);
if((layer == PINLAYER && inst_ptr[n].flags & 4) || enable_layer[textlayer]) {
svg_draw_string(textlayer, text.txt_ptr,
(text.rot + ( (flip && (text.rot & 1) ) ? rot+2 : rot) ) & 0x3,
flip^text.flip, text.hcenter, text.vcenter,
x0+x1, y0+y1, text.xscale, text.yscale);
}
}
}
Tcl_SetResult(interp,"",TCL_STATIC); /*26102003 */

View File

@ -1,4 +1,4 @@
v {xschem version=2.9.5_RC6 file_version=1.1}
v {xschem version=2.9.7 file_version=1.2}
G {font file}
V {}
S {}
@ -457,7 +457,6 @@ L 3 2120 5 2133.75 5 {}
L 3 2180 -10 2180 0 {}
L 3 2200 -35 2220 -35 {}
L 3 2210 5 2220 -35 {}
L 3 2285 5 2292.5 5 {}
L 3 2400 -15 2420 -25 {}
L 3 2400 -15 2420 -5 {}
L 3 2440 -20 2460 -20 {}
@ -465,7 +464,6 @@ L 3 2440 -10 2460 -10 {}
L 3 2120 -17.5 2133.75 -17.5 {}
L 3 2120 -35 2120 -17.5 {}
L 3 2140 -12.5 2140 0 {}
L 3 2300 -30 2300 -1.25 {}
L 3 2327.5 -30 2327.5 -25 {}
L 3 2327.5 -30 2332.5 -30 {}
L 3 2332.5 -30 2332.5 -25 {}
@ -483,7 +481,6 @@ L 3 2367.5 -5 2372.5 -5 {}
L 3 2372.5 -5 2372.5 0 {}
L 3 2040 -32.5 2045 -35 {}
L 3 2040 2.5 2045 5 {}
L 3 2280 2.5 2285 5 {}
L 3 2160 -22.5 2160 0 {}
L 3 2166.25 -15 2173.75 -15 {}
L 3 2160 -22.5 2163.75 -30 {}
@ -537,19 +534,6 @@ L 3 2245 -16.25 2248.75 -15 {}
L 3 2258.75 -21.25 2260 -28.75 {}
L 3 2240 -28.75 2241.25 -21.25 {}
L 3 2247.5 -35 2252.5 -35 {}
L 3 2298.75 1.25 2300 -1.25 {}
L 3 2296.25 3.75 2298.75 1.25 {}
L 3 2292.5 5 2296.25 3.75 {}
L 3 2280 -30 2281.25 -32.5 {}
L 3 2281.25 -32.5 2285 -35 {}
L 3 2280 -20 2281.25 -17.5 {}
L 3 2281.25 -17.5 2285 -15 {}
L 3 2298.75 -32.5 2300 -30 {}
L 3 2295 -35 2298.75 -32.5 {}
L 3 2285 -35 2295 -35 {}
L 3 2285 -15 2297.5 -15 {}
L 3 2297.5 -15 2300 -16.25 {}
L 3 2280 -30 2280 -20 {}
L 3 2176.25 -35 2177.5 -35 {}
L 3 1940 -30 1940 0 {}
L 3 1920 -30 1921.25 -32.5 {}
@ -698,3 +682,19 @@ L 3 2656.25 -13.75 2658.75 -11.25 {}
L 3 2660 -30 2660 -22.5 {}
L 3 2658.75 -18.75 2660 -22.5 {}
L 3 2656.25 -16.25 2658.75 -18.75 {}
L 3 2280 -30 2280 -20 {}
L 3 2300 -30 2300 -7.5 {}
L 3 2286.25 -15 2293.75 -15 {}
L 3 2296.25 0 2300 -7.5 {}
L 3 2283.75 5 2290 3.75 {}
L 3 2290 3.75 2296.25 0 {}
L 3 2280 -20 2281.25 -17.5 {}
L 3 2281.25 -17.5 2286.25 -15 {}
L 3 2298.75 -17.5 2300 -20 {}
L 3 2293.75 -15 2298.75 -17.5 {}
L 3 2282.5 5 2283.75 5 {}
L 3 2280 -30 2281.25 -32.5 {}
L 3 2281.25 -32.5 2286.25 -35 {}
L 3 2298.75 -32.5 2300 -30 {}
L 3 2293.75 -35 2298.75 -32.5 {}
L 3 2286.25 -35 2293.75 -35 {}

View File

@ -3026,11 +3026,11 @@ if {!$rainbow_colors} {
"#ef6158" "#fdb200"}
set_ne ps_colors {
0x000000 0x0000ee 0x7f7f7f 0x000000 0x338800
0xbb2200 0x0000ee 0xff0000 0xffff00 0x000000
0xff00ff 0x00ff00 0x0000cc 0xaaaa00 0xaaccaa
0xff7777 0xbfff81 0x00ffcc 0xce0097 0xd2d46b
0xef6158 0xfdb200}
0xffffff 0x0044ee 0xaaaaaa 0x222222 0x229900
0xbb2200 0x00ccee 0xff0000 0x888800 0x00aaaa
0x880088 0x00ff00 0x0000cc 0x666600 0x557755
0xaa2222 0x7ccc40 0x00ffcc 0xce0097 0xd2d46b
0xef6158 0xfdb200}
} else {
# rainbow colors for bitmapping
# skip if colors defined in ~/.xschem 20121110