Ejemplo n.º 1
0
//void SimpleDrawTest(cdCanvas* canvas)
void SimpleDrawVectorFont(cdCanvas* canvas)
{
  cdBackground(CD_WHITE);
  cdClear();
  cdLineStyle(CD_CONTINUOUS);
  cdLineWidth(1);

//  wdVectorText(0.1, 0.4, "ãõñç áéíóú àèìòù âêîôû äëïöü");
//  wdVectorText(0.1, 0.2, "ÃÕÑÇ ÁÉÍÓÚ ÀÈÌÒÙ ÂÊÎÔÛ ÄËÏÖÜ ");
  cdVectorFont("../etc/vectorfont26.txt"); /* original Simplex II */
  {
    int i;
    char t[2];
    char s[10];
    int x = 10;
    int y = 600;
    t[1] = 0;
  cdFont(CD_COURIER, CD_BOLD, 14);
  cdVectorCharSize(25);
    for (i = 128; i < 256; i++)
    {
      int dx = 30;
      t[0] = (char)i;
      sprintf(s, "%3d", i);
      cdForeground(CD_DARK_RED);
      cdText(x, y, s);
//      cdText(x+dx, y, t);
      cdForeground(CD_BLACK);
      cdVectorText(x+2*dx-10, y, t);
      
      x += 3*dx;
      if ((i+1) % 8 == 0)
      {
        x = 10;
        y -= 30;
      }
    }
  //cdFont(CD_TIMES_ROMAN, CD_PLAIN, 24);
  //cdVectorCharSize(24);
  //  for (i = 192; i < 256; i++)
  //  {
  //    int dx = 92;
  //    t[0] = (char)i;
  //    sprintf(s, "%d", i);
  //    cdText(x, y, s);
  //    cdText(x+dx, y, t);
  //    cdVectorText(x+2*dx, y, t);
  //    
  //    x += 3*dx + 2*dx/3;
  //    if ((i+1) % 4 == 0)
  //    {
  //      x = 30;
  //      y += 52;
  //    }
  //  }
  }
}
Ejemplo n.º 2
0
void draw_wd(void)
{
  char* text;
  double x, y;
  double rect[8];

  cdBackground(CD_WHITE);
  cdClear();
  cdLineStyle(CD_CONTINUOUS);
  cdLineWidth(1);

//  wdVectorTextDirection(0, 0, 1, 1);
  cdTextAlignment(CD_NORTH_WEST);

//  text = "Vector Text";
  text = "Vector Text\nSecond Line\nThird Line";
  x = 0.25;
  y = 0.40;

  cdForeground(CD_BLACK);
  wdLine(0, 0, 1, 1);
  wdLine(0, 1, 1, 0);

  cdForeground(CD_GREEN);
  cdMarkType(CD_STAR);
  wdMark(x, y);

  cdForeground(CD_BLUE);
  wdVectorCharSize(0.1);
  wdVectorText(x, y, text);

  cdForeground(CD_RED);
  wdGetVectorTextBounds(text, x, y, rect);
  cdBegin(CD_CLOSED_LINES);
  wdVertex(rect[0], rect[1]);
  wdVertex(rect[2], rect[3]);
  wdVertex(rect[4], rect[5]);
  wdVertex(rect[6], rect[7]);
  cdEnd();
}
Ejemplo n.º 3
0
void draw(void)
{
	cdMarkSize(5);
	cdMarkType(CD_PLUS);
	cdMark(10,90);
	cdMarkType(CD_STAR);
	cdMark(20,90);
	cdMarkType(CD_CIRCLE);
	cdMark(30,90);
	cdMarkType(CD_X);
	cdMark(40,90);
	cdMarkType(CD_BOX);
	cdMark(50,90);
	cdMarkType(CD_DIAMOND);
	cdMark(60,90);
	cdMarkType(CD_HOLLOW_CIRCLE);
	cdMark(70,90);
	cdMarkType(CD_HOLLOW_BOX);
	cdMark(80,90);
	cdMarkType(CD_HOLLOW_DIAMOND);
	cdMark(90,90);

	cdLineStyle(CD_CONTINUOUS);
	cdLine(10,80,80,80);
	cdLineStyle(CD_DASHED);
	cdLine(10,75,80,75);
	cdLineStyle(CD_DOTTED);
	cdLine(10,70,80,70);
	cdLineStyle(CD_DASH_DOT);
	cdLine(10,65,80,65);
	cdLineStyle(CD_DASH_DOT_DOT);
	cdLine(10,60,80,60);

	cdLineStyle(CD_CONTINUOUS);

	cdHatch(CD_HORIZONTAL);

	cdBegin(CD_FILL);
	cdVertex(10,50);
	cdVertex(50,50);
	cdVertex(50,10);
	cdVertex(10,10);
	cdEnd();

	cdHatch(CD_VERTICAL);
	cdBegin(CD_FILL);
	cdVertex(60,50);
	cdVertex(100,50);
	cdVertex(100,10);
	cdVertex(60,10);
	cdEnd();

	cdHatch(CD_FDIAGONAL);
	cdBegin(CD_FILL);
	cdVertex(110,50);
	cdVertex(150,50);
	cdVertex(150,10);
	cdVertex(110,10);
	cdEnd();

	cdHatch(CD_BDIAGONAL);
	cdBegin(CD_FILL);
	cdVertex(160,50);
	cdVertex(200,50);
	cdVertex(200,10);
	cdVertex(160,10);
	cdEnd();

	cdHatch(CD_CROSS);
	cdBegin(CD_FILL);
	cdVertex(210,50);
	cdVertex(250,50);
	cdVertex(250,10);
	cdVertex(210,10);
	cdEnd();

	cdHatch(CD_DIAGCROSS);
	cdBegin(CD_FILL);
	cdVertex(260,50);
	cdVertex(300,50);
	cdVertex(300,10);
	cdVertex(260,10);
	cdEnd();

	cdFont(CD_SYSTEM,CD_BOLD,CD_STANDARD);
	cdText(10,100,'Teste');
	cdFont(CD_COURIER,CD_BOLD,CD_STANDARD);
	cdText(60,100,'Teste');
	cdFont(CD_TIMES_ROMAN,CD_BOLD,CD_STANDARD);
	cdText(110,100,'Teste');
	cdFont(CD_HELVETICA,CD_BOLD,CD_STANDARD);
	cdText(160,100,'Teste');
}