public void DibujarTexto(SWPEditor.IU.PresentacionDocumento.Punto posicion, SWPEditor.IU.Graficos.Letra letra, SWPEditor.IU.Graficos.Brocha brocha, string texto) { Typeface t = new Typeface(new FontFamily(letra.Familia), new FontStyle(), new FontWeight(), new FontStretch()); FormattedText f = new FormattedText(texto, System.Globalization.CultureInfo.InvariantCulture, FlowDirection.LeftToRight, t, ObtenerMedida(letra.Tamaño), CrearBrocha(brocha)); contexto.DrawText(f, CrearPunto(posicion)); }
public Posicion(DocumentoImpreso documento) { PosicionPagina = new Punto(Medicion.Cero, Medicion.Cero); VDocumento = documento; }
public void TrasladarOrigen(SWPEditor.IU.PresentacionDocumento.Punto Punto) { PointF p = Traducir(Punto); g.TranslateTransform(p.X, p.Y); }
public void RellenarRectangulo(SWPEditor.IU.Graficos.Brocha brocha, SWPEditor.IU.PresentacionDocumento.Punto inicio, SWPEditor.Dominio.TamBloque bloque) { contexto.DrawRectangle(CrearBrocha(brocha), null, new Rect(CrearPunto(inicio), CrearTam(bloque))); }
public void DibujarRectangulo(SWPEditor.IU.Graficos.Lapiz lapiz, SWPEditor.IU.PresentacionDocumento.Punto inicio, SWPEditor.Dominio.TamBloque bloque) { contexto.DrawRectangle(null, CrearLapiz(lapiz), new Rect(CrearPunto(inicio), CrearTam(bloque))); }
public void DibujarLinea(SWPEditor.IU.Graficos.Lapiz lapiz, SWPEditor.IU.PresentacionDocumento.Punto inicio, SWPEditor.IU.PresentacionDocumento.Punto fin) { contexto.DrawLine(CrearLapiz(lapiz), CrearPunto(inicio), CrearPunto(fin)); }
public void TrasladarOrigen(SWPEditor.IU.PresentacionDocumento.Punto Punto) { }
public void DibujarPagina(IGraficador g, Punto esquinaSuperior, int numpagina, Seleccion seleccion) { AvanceBloques av = new AvanceBloques(_Lineas.Obtener(_Paginas.Obtener(numpagina).LineaInicio)); _Paginas.Obtener(numpagina).Dibujar(g, esquinaSuperior, _Lineas, seleccion, av); }
private void Dibujar(IGraficador g, Punto posicion, Seleccion seleccion, Estilo estiloBase, int Inicio, int Cantidad, string subcadena, int contador) { try { string tot = subcadena;//Parrafo.ObtenerSubCadena(Inicio, Cantidad); if (seleccion != null) { Parrafo inicial = seleccion.ObtenerParrafoInicial(); Parrafo final = seleccion.ObtenerParrafoFinal(); Estilo e = estiloBase; Estilo sel = estiloBase.Clonar(); sel.ColorFondo = new BrochaSolida(new ColorDocumento(0, 0, 0)); sel.ColorLetra = new BrochaSolida(new ColorDocumento(255, 255, 255)); string c1 = null, c2 = null; //for (int contador = 0; contador <= 1; contador++) { int ini = seleccion.ObtenerPosicionInicial(); int fin = seleccion.ObtenerPosicionFinal(); Punto possiguiente = posicion; if (inicial == Parrafo) { if (final == Parrafo) { ini -= Inicio; fin -= Inicio; if (ini < 0) { ini = 0; } if (ini > Cantidad) { ini = Cantidad; } if (fin < 0) { fin = 0; } if (fin > Cantidad) { fin = Cantidad; } c1 = c1 ?? tot.Substring(0, ini); c2 = c2 ?? tot.Substring(ini, fin - ini); possiguiente = DibujarConTam(e, g, possiguiente, c1, null, contador); possiguiente = DibujarConTam(sel, g, possiguiente, c2, c1, contador); possiguiente = DibujarConTam(e, g, possiguiente, tot.Substring(fin, Cantidad - fin), c2, contador); } else { ini -= Inicio; if (ini < 0) { ini = 0; } if (ini > Cantidad) { ini = Cantidad; } c1 = c1 ?? tot.Substring(0, ini); possiguiente = DibujarConTam(e, g, possiguiente, c1, null, contador); possiguiente = DibujarConTam(sel, g, possiguiente, tot.Substring(ini, Cantidad - ini), c1, contador); } } else { if (final == Parrafo) { fin -= Inicio; if (fin < 0) { fin = 0; } if (fin > Cantidad) { fin = Cantidad; } c1 = c1 ?? tot.Substring(0, fin); possiguiente = DibujarConTam(sel, g, possiguiente, c1, null, contador); possiguiente = DibujarConTam(e, g, possiguiente, tot.Substring(fin, Cantidad - fin), c1, contador); } else { if (inicial.EsSiguiente(Parrafo) && !final.EsSiguiente(Parrafo)) { Dibujar(sel, g, possiguiente, tot, contador); } else { Dibujar(e, g, possiguiente, tot, contador); } } } } } else { //for (int contador = 0; contador <= 1; contador++) { Dibujar(estiloBase, g, posicion, tot, contador); } } } catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace, "Error"); throw ex; } }
public void Dibujar(IGraficador graficos, Punto posicionbase, string texto) { //TamBloque b=Medir(texto); //graficos.RellenarRectangulo(ColorFondo, posicionbase, b); graficos.DibujarTexto(posicionbase, Letra, ColorLetra, texto); }