Os arquivos SVG definem os gráficos no formato XML. Eles podem ser dimensionados ou impressos em qualquer tamanho sem prejudicar a qualidade da imagem. Em alguns casos, pode ser necessário girar uma imagem SVG. Da mesma forma, este artigo aborda como girar uma imagem SVG programaticamente em C#.
- Rotação de imagem C# SVG – Instalação da API
- Como girar o arquivo de imagem SVG programaticamente em C #
- Girar uma imagem SVG programaticamente em C#
Rotação de imagem C# SVG – Instalação da API
Aspose.SVG for .NET suporta trabalhar com arquivos SVG. Você pode editar, atualizar ou criar imagens SVG a partir de seus aplicativos baseados em .NET Framework. Basta baixar os arquivos DLL de referência da página Downloads ou executar o comando de instalação do NuGet abaixo:
PM> Install-Package Aspose.SVG
Como girar o arquivo de imagem SVG programaticamente em C
Você pode girar um arquivo de imagem SVG com as seguintes etapas:
- Abra o arquivo SVG de entrada e crie um elemento gráfico.
- Defina a transformação de rotação e especifique o grau de rotação.
- Anexe o elemento gráfico.
- Salve a imagem SVG girada.
Girar uma imagem SVG programaticamente em C#
Você precisa seguir as etapas abaixo para girar uma imagem SVG em C#:
- Carregue o arquivo SVG de entrada com a classe SVGDocument.
- Mencione o ângulo para rotação e defina a transformação de rotação.
- Anexe o elemento gráfico.
- Grave a imagem SVG girada de saída usando o método Salvar.
O código abaixo explica como girar uma imagem SVG com conteúdo HTML incorporado programaticamente usando C#:
// Abra o documento SVG
using var document = new SVGDocument("example.svg");
var svg = document.RootElement as SVGElement;
var bbox = document.RootElement.GetBBox();
if (svg == null)
return;
// Criar elemento gráfico g;
var g = (SVGGElement)document.CreateElementNS("http://www.w3.org/2000/svg", "g");
// Definir transformação de rotação
g.SetAttribute("transform", $"rotate(45,{(bbox.X + bbox.Width) / 2f}, {(bbox.Y + bbox.Height) / 2f})");
// Copie os filhos do elemento svg para o elemento g
foreach (var childNode in svg.ChildNodes)
g.AppendChild(childNode.CloneNode(true));
var child = svg.LastElementChild;
// Remover filhos de svg
while (child != null)
{
svg.RemoveChild(child);
child = svg.LastElementChild;
}
// Anexar gel ao elemento svg
document.RootElement.AppendChild(g);
// Salvar documento modificado
document.Save("roatedexample.svg");
Obtenha licença de API gratuita
Você pode solicitar uma licença temporária gratuita para testar a API em sua capacidade total.
Conclusão
Neste artigo, você aprendeu como girar uma imagem SVG programaticamente em C#. Além disso, você pode visitar a seção documentação para conhecer outros recursos da API. Em caso de ambiguidade, sinta-se à vontade para entrar em contato conosco no fórum.