ISvgShapeAndTextFormattingController

ISvgShapeAndTextFormattingController Schnittstelle

Steuert die Erzeugung von SVG-Formen und -Text.

public interface ISvgShapeAndTextFormattingController : ISvgShapeFormattingController

Eigenschaften

NameBeschreibung
AsISvgShapeFormattingController { get; }Gibt die ISvgShapeFormattingController Schnittstelle zurück.

Methoden

NameBeschreibung
FormatText(ISvgTSpan, IPortion, ITextFrame)Diese Funktion wird vor dem Rendern des Textabschnitts in SVG aufgerufen, um dem Benutzer die Kontrolle über das resultierende SVG zu ermöglichen.

Beispiele

Beispiel:

[C#]
class CustomSvgShapeFormattingController : ISvgShapeAndTextFormattingController
{
	private int m_shapeIndex, m_portionIndex, m_tspanIndex;
	public CustomSvgShapeFormattingController(int shapeStartIndex = 0)
	{
		m_shapeIndex = shapeStartIndex;
		m_portionIndex = 0;
	}
	public void FormatShape(Aspose.Slides.Export.ISvgShape svgShape, IShape shape)
	{
		svgShape.Id = string.Format("shape-{0}", m_shapeIndex++);
		m_portionIndex = m_tspanIndex = 0;
	}
	public void FormatText(Aspose.Slides.Export.ISvgTSpan svgTSpan, IPortion portion, ITextFrame textFrame)
	{
		int paragraphIndex = 0; int portionIndex = 0;
		for (int i = 0; i < textFrame.Paragraphs.Count; i++)
		{
			portionIndex = textFrame.Paragraphs[i].Portions.IndexOf(portion);
			if (portionIndex > -1) { paragraphIndex = i; break; }
		}
		if (m_portionIndex != portionIndex)
		{
			m_tspanIndex = 0;
			m_portionIndex = portionIndex;
		}
		svgTSpan.Id = string.Format("paragraph-{0}_portion-{1}_{2}", paragraphIndex, m_portionIndex, m_tspanIndex++);
	}
}

Siehe auch