Commit 0421987b authored by g_harland's avatar g_harland
Browse files

Comments within postscript files now fully comply with Adobe's Document...

Comments within postscript files now fully comply with Adobe's Document Structuring Convention, and beautification
parent 9f1f455b
Loading
Loading
Loading
Loading
+7 −0
Original line number Original line Diff line number Diff line
@@ -4,6 +4,13 @@ Started 2007-June-11
Please add newer entries at the top, list the date and your name with 
Please add newer entries at the top, list the date and your name with 
email address.
email address.


2007-Aug-20 UPDATE   Geoff Harland <gharlandau@yahoo.com.au>
================================================================================
+ eeschema & pcbnew
    The comments provided within postscript files now fully comply with Adobe's
    Document Structuring Convention.


2007-aug-20 UPDATE   Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
2007-aug-20 UPDATE   Jean-Pierre Charras <jean-pierre.charras@inpg.fr>
================================================================================
================================================================================
+ eeschema & pcbnew
+ eeschema & pcbnew
+182 −90
Original line number Original line Diff line number Diff line
@@ -11,6 +11,8 @@
#include "plot_common.h"
#include "plot_common.h"
#include "macros.h"
#include "macros.h"


#include "wx/defs.h"

// Variables partagees avec Common plot Postscript Routines
// Variables partagees avec Common plot Postscript Routines
extern wxPoint LastPenPosition;
extern wxPoint LastPenPosition;
extern wxPoint PlotOffset;
extern wxPoint PlotOffset;
@@ -22,13 +24,15 @@ extern int PlotOrientOptions, etat_plume;
// Locales
// Locales
static Ki_PageDescr * SheetPS;
static Ki_PageDescr * SheetPS;



/*************************************************************************************/
/*************************************************************************************/
void InitPlotParametresPS(wxPoint offset, Ki_PageDescr * sheet,
void InitPlotParametresPS(wxPoint offset, Ki_PageDescr * sheet,
		double xscale, double yscale, int orient)
		double xscale, double yscale, int orient)
/*************************************************************************************/
/*************************************************************************************/

/* Set the plot offset for the current plotting
/* Set the plot offset for the current plotting
 xscale,yscale = coordinate scale (scale coefficient for coordinates)
 * xscale,yscale = coordinate scale (scale coefficient for coordinates)
 device_xscale,device_yscale = device coordinate scale (i.e scale used by plot device)
 * device_xscale,device_yscale = device coordinate scale (i.e scale used by plot device)
 */
 */
{
{
	PlotOrientOptions = orient;
	PlotOrientOptions = orient;
@@ -39,39 +43,49 @@ void InitPlotParametresPS(wxPoint offset, Ki_PageDescr * sheet,
	g_CurrentPenWidth = -1;
	g_CurrentPenWidth = -1;
}
}



/*************************************************************************************/
/*************************************************************************************/
void SetDefaultLineWidthPS(int width)
void SetDefaultLineWidthPS(int width)
/*************************************************************************************/
/*************************************************************************************/

/* Set the default line width (in 1/1000 inch) for the current plotting
/* Set the default line width (in 1/1000 inch) for the current plotting
 */
 */
{
{
	g_DefaultPenWidth = width;			/* epaisseur du trait standard en 1/1000 pouce */
	g_DefaultPenWidth = width;		// epaisseur du trait standard en 1/1000 pouce
	g_CurrentPenWidth = -1;
	g_CurrentPenWidth = -1;
}
}



/***************************************/
/***************************************/
void SetCurrentLineWidthPS(int width)
void SetCurrentLineWidthPS(int width)
/***************************************/
/***************************************/

/* Set the Current line width (in 1/1000 inch) for the next plot
/* Set the Current line width (in 1/1000 inch) for the next plot
 */
 */
{
{
int pen_width; 
int pen_width; 


	if ( width > 0 ) pen_width = width;
	if( width > 0 )
	else pen_width = g_DefaultPenWidth;
		pen_width = width;
	else
		pen_width = g_DefaultPenWidth;

	if( pen_width != g_CurrentPenWidth )
	if( pen_width != g_CurrentPenWidth )
		fprintf(PlotOutputFile, "%d setlinewidth\n", (int)(XScale * pen_width) );
		fprintf(PlotOutputFile, "%d setlinewidth\n", (int)(XScale * pen_width) );

	g_CurrentPenWidth = pen_width;
	g_CurrentPenWidth = pen_width;
}
}



/******************************/
/******************************/
void SetColorMapPS(int color)
void SetColorMapPS(int color)
/******************************/
/******************************/
/* Print the postscript set color command:
 r g b setrgbcolor,
	r, g, b  = color values (= 0 .. 1.0 )


	color = color index in ColorRefs[]
/* Print the postscript set color command:
 * r g b setrgbcolor,
 * r, g, b  = color values (= 0 .. 1.0 )
 *
 * color = color index in ColorRefs[]
 */
 */
{
{
char Line[1024];
char Line[1024];
@@ -79,15 +93,16 @@ char Line[1024];
	sprintf( Line, "%.3f %.3f %.3f setrgbcolor\n",
	sprintf( Line, "%.3f %.3f %.3f setrgbcolor\n",
			(float)ColorRefs[color].m_Red / 255,
			(float)ColorRefs[color].m_Red / 255,
			(float)ColorRefs[color].m_Green / 255,
			(float)ColorRefs[color].m_Green / 255,
		(float)ColorRefs[color].m_Blue/255
			(float)ColorRefs[color].m_Blue / 255 );
		);
	to_point(Line);
	to_point(Line);
	fputs( Line, PlotOutputFile );
	fputs( Line, PlotOutputFile );
}
}



/***************************************************************/
/***************************************************************/
void PlotFilledSegmentPS(wxPoint start, wxPoint end, int width)
void PlotFilledSegmentPS(wxPoint start, wxPoint end, int width)
/***************************************************************/
/***************************************************************/

/* Plot 1 segment like a track segment
/* Plot 1 segment like a track segment
 */
 */
{
{
@@ -109,7 +124,8 @@ char Line[256];
	UserToDeviceCoordinate(pos);
	UserToDeviceCoordinate(pos);
	rayon = (int)(XScale * diametre / 2);
	rayon = (int)(XScale * diametre / 2);


	if(rayon < 0 ) rayon = 0 ;
	if( rayon < 0 )
		rayon = 0;


	SetCurrentLineWidthPS(width);
	SetCurrentLineWidthPS(width);
	sprintf(Line, "newpath %d %d %d 0 360 arc stroke\n", pos.x, pos.y, rayon);
	sprintf(Line, "newpath %d %d %d 0 360 arc stroke\n", pos.x, pos.y, rayon);
@@ -117,20 +133,21 @@ char Line[256];
}
}





/**************************************************************************************/
/**************************************************************************************/
void PlotArcPS(wxPoint centre, int StAngle, int EndAngle, int rayon, int width)
void PlotArcPS(wxPoint centre, int StAngle, int EndAngle, int rayon, int width)
/**************************************************************************************/
/**************************************************************************************/

/* Plot an arc:
/* Plot an arc:
	StAngle, EndAngle = start and end arc in 0.1 degree
 * StAngle, EndAngle = start and end arc in 0.1 degree
 */
 */
{
{
char Line[256];
char Line[256];


	if(rayon <= 0 ) return ;
	if( rayon <= 0 )
		return;


	SetCurrentLineWidthPS(width);
	SetCurrentLineWidthPS(width);
	/* Calcul des coord du point de depart : */
	// Calcul des coord du point de depart :
	UserToDeviceCoordinate(centre);
	UserToDeviceCoordinate(centre);


	if( PlotOrientOptions == PLOT_MIROIR )
	if( PlotOrientOptions == PLOT_MIROIR )
@@ -142,51 +159,58 @@ char Line[256];
	// Undo internationalization printf (float x.y printed x,y)
	// Undo internationalization printf (float x.y printed x,y)
	to_point(Line);
	to_point(Line);
	fputs(Line, PlotOutputFile);
	fputs(Line, PlotOutputFile);

}
}





/*****************************************************************/
/****************************************************************/
void PlotPolyPS(int nb_segm, int * coord, int fill, int width)
void PlotPolyPS(int nb_segm, int * coord, int fill, int width)
/*****************************************************************/
/*****************************************************************/

/* Trace un polygone ( ferme si rempli ) en format POSTSCRIPT
/* Trace un polygone ( ferme si rempli ) en format POSTSCRIPT
	coord = tableau des coord des sommets
 * coord = tableau des coord des sommets
	nb_segm = nombre de coord ( 1 coord = 2 elements: X et Y du tableau )
 * nb_segm = nombre de coord ( 1 coord = 2 elements: X et Y du tableau )
	fill : si != 0 polygone rempli
 * fill : si != 0 polygone rempli
 */
 */
{
{
int ii;
int ii;
wxPoint pos;
wxPoint pos;


	if( nb_segm <= 1 ) return;
	if( nb_segm <= 1 )
		return;


	SetCurrentLineWidthPS(width);
	SetCurrentLineWidthPS(width);


	pos.x = coord[0]; pos.y = coord[1];
	pos.x = coord[0];
	pos.y = coord[1];
	UserToDeviceCoordinate(pos);
	UserToDeviceCoordinate(pos);
	fprintf(PlotOutputFile, "newpath %d %d moveto\n", pos.x, pos.y);
	fprintf(PlotOutputFile, "newpath %d %d moveto\n", pos.x, pos.y);


	for( ii = 1; ii < nb_segm; ii ++ )
	for( ii = 1; ii < nb_segm; ii ++ )
	{
	{
		pos.x = coord[ii*2]; pos.y = coord[(ii*2)+1];
		pos.x = coord[2 * ii];
		pos.y = coord[2 * ii + 1];
		UserToDeviceCoordinate(pos);
		UserToDeviceCoordinate(pos);
		fprintf(PlotOutputFile, "%d %d lineto\n", pos.x, pos.y);
		fprintf(PlotOutputFile, "%d %d lineto\n", pos.x, pos.y);
	}
	}


	/* Fermeture du polygone */
	// Fermeture du polygone
	if( fill ) fprintf(PlotOutputFile, "closepath ");
	if( fill )
	if( fill == 1 ) fprintf(PlotOutputFile, "fill ");
		fprintf(PlotOutputFile, "closepath ");
	if( fill == 1 )
		fprintf(PlotOutputFile, "fill ");
	fprintf(PlotOutputFile, "stroke\n");
	fprintf(PlotOutputFile, "stroke\n");
}
}




/*************************************/
/* Routine to draw to a new position */
/*************************************/
/*************************************/
void LineTo_PS(wxPoint pos, int plume)
void LineTo_PS(wxPoint pos, int plume)
/*************************************/

/* Routine to draw to a new position
 */
{
{
	if ( plume == 'Z') return;
	if( plume == 'Z' )
		return;


	UserToDeviceCoordinate(pos);
	UserToDeviceCoordinate(pos);
	if( plume == 'D' )
	if( plume == 'D' )
@@ -200,12 +224,28 @@ void LineTo_PS(wxPoint pos, int plume)
}
}




/**********************************************************/
/***********************************************************/
void PrintHeaderPS(FILE * file, const wxString & Creator,
void PrintHeaderPS(FILE * file, const wxString & Creator,
			const wxString & FileName, int BBox[4])
				const wxString & FileName, int PageCount,
				int BBox[4], int PaperOrientation)
/***********************************************************/
/***********************************************************/
/* BBox is the boundary box (position and size of the "client rectangle"

for drawings (page - margins) in mils (0.001 inch)
/* The code within this function (and the CloseFilePS function)
 * creates postscript files whose contents comply with Adobe's
 * Document Structuring Convention, as documented by assorted
 * details described within the following URLs:
 * 
 * http://en.wikipedia.org/wiki/Document_Structuring_Conventions
 * http://partners.adobe.com/public/developer/en/ps/5001.DSC_Spec.pdf
 * 
 * 
 * The PageCount and PaperOrientation parameters have been provided to
 * respectively cater for the production of multiple-page postscript
 * files, and postscript files having either a portrait orientation
 * or a landscape orientation.
 * 
 * BBox is the boundary box (position and size of the "client rectangle"
 * for drawings (page - margins) in mils (0.001 inch)
 */
 */
{
{
wxString msg;
wxString msg;
@@ -218,13 +258,13 @@ const char *PSMacro[] = {
"    stroke\n",
"    stroke\n",
"} def\n",
"} def\n",
"gsave\n",
"gsave\n",
"72 72 scale\t\t\t%% Talk inches\n",
"72 72 scale\t\t\t% Talk inches\n",
"1 setlinecap\n",
"1 setlinecap\n",
"1 setlinejoin\n",
"1 setlinejoin\n",
"1 setlinewidth\n",
"1 setlinewidth\n",
	NULL
	NULL
};
};
#define MIL_TO_INCH 0.001
const double MIL_TO_INCH = 0.001;
int ii;
int ii;
time_t time1970 = time(NULL);
time_t time1970 = time(NULL);


@@ -232,26 +272,72 @@ time_t time1970 = time(NULL);


	fputs("%!PS-Adobe-3.0\n", PlotOutputFile);	// Print header
	fputs("%!PS-Adobe-3.0\n", PlotOutputFile);	// Print header


	/* Print boundary box en 1/72 pouce, box is in mils */
	sprintf( Line, "%%%%Creator: %s\n", CONV_TO_UTF8(Creator) );
	#define CONV_SCALE (MIL_TO_INCH * 72)
	fputs(Line, PlotOutputFile);
	sprintf( Line, "%%%%BoundingBox: %d %d %d %d\n",

		(int)(BBox[1]*CONV_SCALE), (int)(BBox[0]*CONV_SCALE),
	// A "newline" character ("\n") is not included in the following string,
		(int)(BBox[3]*CONV_SCALE), (int)(BBox[2]*CONV_SCALE));
	// because it is provided by the ctime() function.
	sprintf( Line, "%%%%CreationDate: %s", ctime(&time1970) );
	fputs(Line, PlotOutputFile);
	fputs(Line, PlotOutputFile);


	sprintf( Line, "%%%%Title: %s\n", CONV_TO_UTF8(FileName) );
	sprintf( Line, "%%%%Title: %s\n", CONV_TO_UTF8(FileName) );
	fputs(Line, PlotOutputFile);
	fputs(Line, PlotOutputFile);


	sprintf( Line, "%%%%Creator: %s_n", CONV_TO_UTF8(Creator) );
	sprintf( Line, "%%%%Pages: %d\n", PageCount );
	fputs(Line, PlotOutputFile);
	fputs(Line, PlotOutputFile);


	sprintf( Line, "%%%%CreationDate: %s\n", ctime(&time1970) );
	sprintf( Line, "%%%%PageOrder: Ascend\n" );
	fputs(Line, PlotOutputFile);
	fputs(Line, PlotOutputFile);


	sprintf( Line, "%%%%DocumentPaperSizes: %s\n", CONV_TO_UTF8(SheetPS->m_Name) );
	// Print boundary box en 1/72 pouce, box is in mils
	const double CONV_SCALE = MIL_TO_INCH * 72;
	// The coordinates of the lower left corner of the boundary
	// box need to be "rounded down", but the coordinates of its
	// upper right corner need to be "rounded up" instead.
	sprintf( Line, "%%%%BoundingBox: %d %d %d %d\n",
			(int)floor((BBox[1] * CONV_SCALE)), (int)floor((BBox[0] * CONV_SCALE)),
			(int)ceil((BBox[3] * CONV_SCALE)), (int)ceil((BBox[2] * CONV_SCALE)) );
	fputs(Line, PlotOutputFile);

	// Specify the size of the sheet and the name associated with that size.
	// (If the "User size" option has been selected for the sheet size,
	// identify the sheet size as "Custom" (rather than as "User"), but
	// otherwise use the name assigned by KiCad for each sheet size.)
	//
	// (The Document Structuring Convention also supports sheet weight,
	// sheet colour, and sheet type properties being specified within a
	// %%DocumentMedia comment, but they are not being specified here;
	// a zero and two null strings are subsequently provided instead.)
	//
	// (NOTE: m_Size.y is *supposed* to be listed before m_Size.x;
	// the order in which they are specified is not wrong!)
	if( SheetPS->m_Name.Cmp( wxT("User") ) == 0 )
		sprintf( Line, "%%%%DocumentMedia: Custom %d %d 0 () ()\n",
				(int)round( SheetPS->m_Size.y * CONV_SCALE ),
				(int)round( SheetPS->m_Size.x * CONV_SCALE ) );
	else // ( if SheetPS->m_Name does not equal "User" )
		sprintf( Line, "%%%%DocumentMedia: %s %d %d 0 () ()\n",
				CONV_TO_UTF8( SheetPS->m_Name ),
				(int)round( SheetPS->m_Size.y * CONV_SCALE ),
				(int)round( SheetPS->m_Size.x * CONV_SCALE ) );
	fputs(Line, PlotOutputFile);

	if( PaperOrientation == wxPORTRAIT )
		sprintf( Line, "%%%%Orientation: Portrait\n" );
	else
		sprintf( Line, "%%%%Orientation: Landscape\n" );
	fputs(Line, PlotOutputFile);
	fputs(Line, PlotOutputFile);


	sprintf( Line, "%%%%Orientation: Landscape\n%%%%EndComments\n");
	sprintf( Line, "%%%%EndComments\n" );
	fputs(Line, PlotOutputFile);

	// Now specify various other details.

	// The following string has been specified here (rather than within
	// PSMacro[]) to highlight that it has been provided to ensure that the
	// contents of the postscript file comply with the details specified
	// within the Document Structuring Convention.
	sprintf( Line, "%%%%Page: 1 1\n" );
	fputs(Line, PlotOutputFile);
	fputs(Line, PlotOutputFile);


	for ( ii = 0; PSMacro[ii] != NULL; ii++ )
	for ( ii = 0; PSMacro[ii] != NULL; ii++ )
@@ -259,8 +345,13 @@ time_t time1970 = time(NULL);
		fputs(PSMacro[ii], PlotOutputFile);
		fputs(PSMacro[ii], PlotOutputFile);
	}
	}


	if( PaperOrientation == wxLANDSCAPE )
		sprintf(Line, "%f %f translate 90 rotate\n",
		sprintf(Line, "%f %f translate 90 rotate\n",
				(float)BBox[3] * MIL_TO_INCH, (float)BBox[0] * MIL_TO_INCH);
				(float)BBox[3] * MIL_TO_INCH, (float)BBox[0] * MIL_TO_INCH);
	// (If support for creating postscript files with a portrait orientation
	// is ever provided, determine whether it would be necessary to provide
	// an "else" command and then an appropriate "sprintf" command here.)

	// compensation internationalisation printf (float x.y gnr x,y)
	// compensation internationalisation printf (float x.y gnr x,y)
	to_point(Line);
	to_point(Line);


@@ -271,8 +362,8 @@ time_t time1970 = time(NULL);
	to_point(Line);
	to_point(Line);
	fputs(Line, PlotOutputFile);
	fputs(Line, PlotOutputFile);


	// Set default line width:
	// Set default line width ( g_DefaultPenWidth is in user units )
	fprintf(PlotOutputFile,"%d setlinewidth\n", g_DefaultPenWidth ); //g_DefaultPenWidth in user units
	fprintf(PlotOutputFile, "%d setlinewidth\n", g_DefaultPenWidth);
}
}




@@ -282,6 +373,7 @@ bool CloseFilePS(FILE * plot_file)
{
{
	fputs("showpage\n", plot_file);
	fputs("showpage\n", plot_file);
	fputs("grestore\n", plot_file);
	fputs("grestore\n", plot_file);
	fputs("%%EOF\n", plot_file);


	fclose(plot_file);
	fclose(plot_file);


+4 −4
Original line number Original line Diff line number Diff line
@@ -36,9 +36,10 @@
#include "plot_common.h"
#include "plot_common.h"
#include "protos.h"
#include "protos.h"


#include "wx/defs.h"


/* coeff de conversion dim en 1 mil -> dim en unite PS: */
// coeff de conversion dim en 1 mil -> dim en unite PS:
#define SCALE_PS 0.001
const double SCALE_PS = 0.001;


extern void Move_Plume( wxPoint pos, int plume );
extern void Move_Plume( wxPoint pos, int plume );
extern void Plume( int plume );
extern void Plume( int plume );
@@ -399,7 +400,7 @@ wxPoint StartPos, EndPos;
	SetDefaultLineWidthPS( g_PlotPSMinimunLineWidth);
	SetDefaultLineWidthPS( g_PlotPSMinimunLineWidth);


	/* Init : */
	/* Init : */
	PrintHeaderPS(PlotOutput, wxT("EESchema-PS"), FileName, BBox);
	PrintHeaderPS( PlotOutput, wxT("EESchema-PS"), FileName, 1, BBox, wxLANDSCAPE );
	InitPlotParametresPS(plot_offset, sheet, 1.0, 1.0);
	InitPlotParametresPS(plot_offset, sheet, 1.0, 1.0);


	if ( m_Plot_Sheet_Ref->GetValue() )
	if ( m_Plot_Sheet_Ref->GetValue() )
@@ -513,4 +514,3 @@ wxPoint StartPos, EndPos;
	m_MsgBox->AppendText( wxT("Ok\n"));
	m_MsgBox->AppendText( wxT("Ok\n"));
}
}
+9 −11
Original line number Original line Diff line number Diff line
@@ -19,23 +19,23 @@ typedef enum {
	PLOT_FORMAT_POST_A4
	PLOT_FORMAT_POST_A4
	} PlotFormat;
	} PlotFormat;


#define  PLOT_MIROIR 1
const int PLOT_MIROIR = 1;




/*******************************/
/*******************************/
/* common_plot_functions.cpp */
/* common_plot_functions.cpp */
/*******************************/
/*******************************/
void SetPlotScale(double xscale, double yscale); /* Set the plot scale for the current plotting) */
void SetPlotScale(double xscale, double yscale); // Set the plot scale for the current plotting)
void SetPlotOffset(wxPoint offset); /* Set the plot offset for the current plotting) */
void SetPlotOffset(wxPoint offset); // Set the plot offset for the current plotting)
void InitPlotParametresGERBER(wxPoint offset, double xscale, double yscale);
void InitPlotParametresGERBER(wxPoint offset, double xscale, double yscale);
void PlotWorkSheet(int format_plot, BASE_SCREEN * screen);
void PlotWorkSheet(int format_plot, BASE_SCREEN * screen);
void UserToDeviceCoordinate(wxPoint & pos );
void UserToDeviceCoordinate(wxPoint & pos );
	/* modifie les coord pos.x et pos.y pour le trace selon l'orientation, l'echelle, les offsets de trace */
	// modifie les coord pos.x et pos.y pour le trace selon l'orientation, l'echelle, les offsets de trace
void UserToDeviceSize(wxSize & size );
void UserToDeviceSize(wxSize & size );
	/* modifie les dimension size.x et size.y pour le trace selon l'echelle */
	// modifie les dimension size.x et size.y pour le trace selon l'echelle
void ForcePenReinit(void);
void ForcePenReinit(void);
	/* set the flag g_CurrentPenWidth to -1 in order to force a pen width redefinition
	// set the flag g_CurrentPenWidth to -1 in order
	for the next draw command */
	// to force a pen width redefinition for the next draw command




/*******************************/
/*******************************/
@@ -46,16 +46,15 @@ void InitPlotParametresPS( wxPoint offset, Ki_PageDescr * sheet, double xscale,
void SetDefaultLineWidthPS( int width);
void SetDefaultLineWidthPS( int width);
void PlotCircle_PS(wxPoint pos, int diametre, int width = -1);
void PlotCircle_PS(wxPoint pos, int diametre, int width = -1);
void PlotArcPS(wxPoint centre, int StAngle, int EndAngle, int rayon, int width = -1);
void PlotArcPS(wxPoint centre, int StAngle, int EndAngle, int rayon, int width = -1);
	/* Plot an arc: StAngle, EndAngle = start and end arc in 0.1 degree */
	// Plot an arc: StAngle, EndAngle = start and end arc in 0.1 degree
void PlotPolyPS( int nb_segm, int * coord, int fill, int width = -1);
void PlotPolyPS( int nb_segm, int * coord, int fill, int width = -1);
void PlotFilledSegmentPS(wxPoint start , wxPoint end, int width);
void PlotFilledSegmentPS(wxPoint start , wxPoint end, int width);
void LineTo_PS(wxPoint pos, int plume);
void LineTo_PS(wxPoint pos, int plume);
void PrintHeaderPS(FILE * file, const wxString & Creator, const wxString & FileName, int BBox[4]);
void PrintHeaderPS(FILE * file, const wxString & Creator, const wxString & FileName, int PageCount, int BBox[4], int PaperOrientation);
bool CloseFilePS(FILE * plot_file);
bool CloseFilePS(FILE * plot_file);
void SetColorMapPS(int color);
void SetColorMapPS(int color);





/*********************************/
/*********************************/
/* common_plotHPGL_functions.cpp */
/* common_plotHPGL_functions.cpp */
/*********************************/
/*********************************/
@@ -70,4 +69,3 @@ void Plume_HPGL( int plume );


#endif	// PLOT_COMMON_H
#endif	// PLOT_COMMON_H
+4 −3
Original line number Original line Diff line number Diff line
@@ -15,6 +15,7 @@


#include "protos.h"
#include "protos.h"


#include "wx/defs.h"


/*
/*
	Generation du fichier de percage en format EXCELLON
	Generation du fichier de percage en format EXCELLON
@@ -958,7 +959,7 @@ wxString msg;
			InitPlotParametresPS(g_PlotOffset, SheetPS,
			InitPlotParametresPS(g_PlotOffset, SheetPS,
				(double) 1.0 / PCB_INTERNAL_UNIT, (double) 1.0 / PCB_INTERNAL_UNIT);
				(double) 1.0 / PCB_INTERNAL_UNIT, (double) 1.0 / PCB_INTERNAL_UNIT);
			SetDefaultLineWidthPS(10);	// Set line with to 10/1000 inch
			SetDefaultLineWidthPS(10);	// Set line with to 10/1000 inch
			PrintHeaderPS(dest, wxT("PCBNEW-PS"), FullFileName, BBox);
			PrintHeaderPS(dest, wxT("PCBNEW-PS"), FullFileName, 1, BBox, wxLANDSCAPE);
			InitPlotParametresPS(g_PlotOffset, SheetPS, scale_x, scale_y);
			InitPlotParametresPS(g_PlotOffset, SheetPS, scale_x, scale_y);
			}
			}
			break;
			break;
Loading