Listar estilos de destino de uso
Este tutorial irá guiá-lo através do processo de uso do recurso List Use Destination Styles do Aspose.Words for .NET. Este recurso permite unir e anexar documentos do Word enquanto usa os estilos de lista do documento de destino.
Pré-requisitos
Antes de começar, certifique-se de ter o seguinte:
- Aspose.Words para .NET instalado. Você pode baixá-lo do site Aspose ou instalá-lo via NuGet.
- Visual Studio ou qualquer outro ambiente de desenvolvimento C#.
Etapa 1: inicializar os diretórios de documentos
Primeiro, você precisa definir o caminho para o diretório do seu documento. Modifique o valor dodataDir
variável para o caminho onde seus documentos estão localizados.
string dataDir = "YOUR DOCUMENT DIRECTORY";
Etapa 2: Carregar os Documentos de Origem e Destino
Em seguida, você precisa carregar os documentos de origem e destino usando o Aspose.WordsDocument
aula. Atualize os nomes dos arquivos noDocument
construtor de acordo com os nomes dos seus documentos.
Document srcDoc = new Document(dataDir + "Document source.docx");
Document dstDoc = new Document(dataDir + "Document destination with list.docx");
Etapa 3: definir o documento de origem para continuar após o documento de destino
Para garantir que o conteúdo do documento de origem continue após o final do documento de destino, você precisa definir oSectionStart
propriedade da primeira seção no documento de origem paraSectionStart.Continuous
.
srcDoc.FirstSection.PageSetup.SectionStart = SectionStart.Continuous;
Etapa 4: lidar com a formatação da lista
Para lidar com a formatação da lista, você percorrerá cada parágrafo do documento de origem e verificará se é um item da lista. Se for, você comparará o ID da lista com as listas existentes no documento de destino. Se existir uma lista com o mesmo ID, você criará uma cópia da lista no documento de origem e atualizará o formato da lista do parágrafo para usar a lista copiada.
Dictionary<int, Aspose.Words.Lists.List> newLists = new Dictionary<int, Aspose.Words.Lists.List>();
foreach (Paragraph para in srcDoc.GetChildNodes(NodeType.Paragraph, true))
{
if (para.IsListItem)
{
int listId = para.ListFormat.List.ListId;
if (dstDoc.Lists.GetListByListId(listId) != null)
{
Aspose.Words.Lists.List currentList;
if (newLists.ContainsKey(listId))
{
currentList = newLists[listId];
}
else
{
currentList = srcDoc.Lists.AddCopy(para.ListFormat.List);
newLists.Add(listId, currentList);
}
para.ListFormat.List = currentList;
}
}
}
Etapa 5: anexar o documento de origem ao documento de destino
Agora, você pode anexar o documento de origem ao documento de destino usando oAppendDocument
método doDocument
aula. OImportFormatMode.UseDestinationStyles
O parâmetro garante que os estilos de lista do documento de destino sejam usados durante a operação de acréscimo.
dstDoc.AppendDocument(srcDoc, ImportFormatMode.UseDestinationStyles);
Etapa 6: salve o documento final
Por fim, salve o documento mesclado com o recurso Listar estilos de destino de uso habilitado usando oSave
método doDocument
aula.
dstDoc.Save(dataDir + "JoinAndAppendDocuments.ListUseDestinationStyles.docx");
Exemplo de código-fonte para estilos de destino de uso de lista usando Aspose.Words para .NET
Aqui está o código-fonte completo do recurso “List Use Destination Styles” em C# usando Aspose.Words for .NET:
// Caminho para o diretório do seu documento
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document srcDoc = new Document(dataDir + "Document source.docx");
Document dstDoc = new Document(dataDir + "Document destination with list.docx");
// Defina o documento de origem para continuar logo após o final do documento de destino.
srcDoc.FirstSection.PageSetup.SectionStart = SectionStart.Continuous;
// Acompanhe as listas que são criadas.
Dictionary<int, Aspose.Words.Lists.List> newLists = new Dictionary<int, Aspose.Words.Lists.List>();
foreach (Paragraph para in srcDoc.GetChildNodes(NodeType.Paragraph, true))
{
if (para.IsListItem)
{
int listId = para.ListFormat.List.ListId;
// Verifique se o documento de destino já contém uma lista com este ID. Se isso acontecer, então isso pode
// fazer com que as duas listas sejam executadas juntas. Crie uma cópia da lista no documento de origem.
if (dstDoc.Lists.GetListByListId(listId) != null)
{
Aspose.Words.Lists.List currentList;
// Já existe uma lista recém-copiada para este ID, recupere a lista armazenada,
// e use-o no parágrafo atual.
if (newLists.ContainsKey(listId))
{
currentList = newLists[listId];
}
else
{
// Adicione uma cópia desta lista ao documento e guarde-a para referência posterior.
currentList = srcDoc.Lists.AddCopy(para.ListFormat.List);
newLists.Add(listId, currentList);
}
// Defina a lista deste parágrafo para a lista copiada.
para.ListFormat.List = currentList;
}
}
}
// Anexe o documento de origem ao final do documento de destino.
dstDoc.AppendDocument(srcDoc, ImportFormatMode.UseDestinationStyles);
dstDoc.Save(dataDir + "JoinAndAppendDocuments.ListUseDestinationStyles.docx");
É isso! Você implementou com sucesso o recurso List Use Destination Styles usando Aspose.Words for .NET. O documento final conterá o conteúdo mesclado com os estilos de lista do documento de destino.