Recuperar e Atualizar Propriedades de Visualização da Apresentação em JavaScript

Introdução

A visualização normal consiste em três regiões de conteúdo: o próprio slide, uma região de conteúdo lateral e uma região de conteúdo inferior. Propriedades referentes ao posicionamento das diferentes regiões de conteúdo. Essas informações permitem que o aplicativo salve seu estado de visualização no arquivo, de modo que, quando reaberto, a visualização esteja no mesmo estado em que a apresentação foi salva pela última vez.

Foi adicionado o método ViewProperties.getNormalViewProperties para fornecer acesso às propriedades de visualização normal de uma apresentação.

As classes NormalViewProperties, NormalViewRestoredProperties e seus descendentes, bem como o enum SplitterBarStateType foram adicionados.

Sobre NormalViewProperties

Representa as propriedades da visualização normal.

Os métodos getShowOutlineIcons e setShowOutlineIcons especificam se o aplicativo deve mostrar ícones ao exibir o conteúdo de contorno em qualquer das regiões de conteúdo do modo de visualização normal.

Os métodos getSnapVerticalSplitter e setSnapVerticalSplitter especificam se o divisor vertical deve ajustar-se a um estado minimizado quando a região lateral é suficientemente pequena.

A propriedade getPreferSingleView e setPreferSingleView especificam se o usuário prefere ver uma única região de conteúdo em tela cheia em vez da visualização normal padrão com três regiões de conteúdo. Se habilitado, o aplicativo pode escolher exibir uma das regiões de conteúdo em toda a janela.

Os métodos getVerticalBarState e getHorizontalBarState especificam o estado em que a barra divisor horizontal ou vertical deve ser exibida. Uma barra divisor horizontal separa o slide da região de conteúdo abaixo do slide, enquanto a barra divisor vertical separa o slide da região de conteúdo lateral. Os valores possíveis são: SplitterBarStateType.Minimized, SplitterBarStateType.Maximized e SplitterBarStateType.Restored.

Os métodos getRestoredLeft e getRestoredTop especificam o dimensionamento da região superior ou lateral do slide na visualização normal, quando o valor SplitterBarStateType.Restored é aplicado para getVerticalBarState e getHorizontalBarState adequadamente.

Sobre a Restauração de NormalViewProperties

Especifica o dimensionamento da região do slide (largura quando é filho de getRestoredTop, altura quando é filho de getRestoredLeft) da visualização normal, quando a região tem um tamanho restaurado variável (nem minimizado nem maximizado).

O método getDimensionSize especifica o tamanho da região do slide (largura quando é filho de restoredTop, altura quando é filho de restoredLeft).

O método getAutoAdjust especifica se o tamanho da região de conteúdo lateral deve compensar o novo tamanho ao redimensionar a janela que contém a visualização dentro do aplicativo.

Um exemplo abaixo mostra como acessar as propriedades ViewProperties.getNormalViewProperties de uma apresentação.

var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");

var pres = new aspose.slides.Presentation();
try {
    pres.getViewProperties().getNormalViewProperties().setHorizontalBarState(aspose.slides.SplitterBarStateType.Restored);
    pres.getViewProperties().getNormalViewProperties().setVerticalBarState(aspose.slides.SplitterBarStateType.Maximized);

    // Restaurar as propriedades de visualização da apresentação
    pres.getViewProperties().getNormalViewProperties().getRestoredTop().setAutoAdjust(true);
    pres.getViewProperties().getNormalViewProperties().getRestoredTop().setDimensionSize(80);
    pres.getViewProperties().getNormalViewProperties().setShowOutlineIcons(true);
    pres.save("presentation_normal_view_state.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    pres.dispose();
}

Definir Valor Padrão de Zoom

Para definir as propriedades de visualização, siga os passos abaixo:

  1. Crie uma instância da classe Presentation.
  2. Defina as View Properties de Presentation.
  3. Grave a apresentação como um arquivo PPTX. No exemplo abaixo, definimos o valor de zoom para a visualização de slide e também para a visualização de notas.
var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");

var presentation = new aspose.slides.Presentation();
try {
    // Definindo as propriedades de visualização da apresentação
    presentation.getViewProperties().getSlideViewProperties().setScale(100); // Valor de zoom em porcentagem para a visualização de slide
    presentation.getViewProperties().getNotesViewProperties().setScale(100); // Valor de zoom em porcentagem para a visualização de notas
    presentation.save("Zoom_out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Definir o Espaçamento da Grade

Use Presentation.getViewProperties para acessar as configurações de visualização de toda a apresentação. Os métodos ViewProperties.getGridSpacing e ViewProperties.setGridSpacing leem ou alteram o intervalo da grade de edição subjacente. Essa configuração se aplica a toda a apresentação, não a um slide individual. O espaçamento da grade é especificado em pontos, onde 72 pontos equivalem a uma polegada. Use um valor positivo, conforme exigido pela documentação da API.

O exemplo a seguir abre um demo.pptx existente, exibe seu espaçamento de grade atual, define um intervalo de um quarto de polegada e salva o resultado.

var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");

var presentation = new aspose.slides.Presentation("demo.pptx");
try {
    var gridSpacing = presentation.getViewProperties().getGridSpacing();
    console.log("Current grid spacing: " + gridSpacing + " points");

    presentation.getViewProperties().setGridSpacing(18);
    presentation.save("grid-spacing.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

A grade é diferente dos drawing guides. O espaçamento da grade controla um intervalo regular, enquanto os guias de desenho são linhas de alinhamento horizontais ou verticais posicionadas individualmente. Adicionar, mover ou remover guias de desenho não altera o espaçamento da grade.

Tanto a grade quanto os guias de desenho são auxílios de edição. Eles não são renderizados como conteúdo de slide em PDF, imagens, SVG ou apresentação de slides. Armazenar o espaçamento da grade não garante que um editor exibirá a grade: sua visibilidade também depende das preferências do visualizador ou editor.

Mostrar ou Ocultar Comentários ao Abrir uma Apresentação

Use Presentation.getViewProperties para acessar as configurações de visualização de toda a apresentação. Use ViewProperties.getShowComments e ViewProperties.setShowComments para ler ou alterar a preferência armazenada sobre se os comentários devem ser exibidos quando a apresentação for aberta no PowerPoint ou em outro editor compatível.

Essa configuração controla apenas a preferência de visualização armazenada. Ela não adiciona, remove, edita ou resolve comentários. Ocultar comentários preserva seu conteúdo, autores, posições, respostas e status. Consulte Presentation Comments para operações que alteram os próprios comentários.

O exemplo a seguir requer um comments.pptx existente contendo comentários. Ele exibe a configuração atual de visibilidade, solicita que os comentários sejam ocultados e salva um novo PPTX sem remover nenhum comentário. Também usa ViewProperties.setLastView com ViewType.SlideView para configurar a visualização de edição inicial juntamente com a visibilidade dos comentários.

var aspose = aspose || {};
aspose.slides = require("aspose.slides.via.java");
const java = require("java");

var presentation = new aspose.slides.Presentation("comments.pptx");
try {
    var showComments = presentation.getViewProperties().getShowComments();
    console.log("Current comment visibility: " + showComments);

    var hideComments = java.newByte(aspose.slides.NullableBool.False);
    presentation.getViewProperties().setShowComments(hideComments);
    presentation.getViewProperties().setLastView(aspose.slides.ViewType.SlideView);
    presentation.save("comments-hidden.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

Essa configuração não determina se os comentários são incluídos nas exportações em PDF, HTML, imagem, notas ou folhetos. Configure as opções específicas de exportação relevantes separadamente.

Perguntas Frequentes

Por que a grade não fica visível após eu reabrir a apresentação?

O arquivo armazena o espaçamento da grade, mas o editor controla se a grade é exibida. Verifique as configurações de visibilidade da grade no editor.

Limpar os guias de desenho altera o espaçamento da grade?

Não. Os guias de desenho e o espaçamento da grade são configurações independentes. Limpar os guias deixa o intervalo da grade armazenado inalterado.

Posso definir diferentes configurações de visualização para diferentes seções de uma apresentação?

As configurações de visualização são definidas no nível da apresentação (Normal View/Slide View), não por seção, portanto um único conjunto de parâmetros se aplica a todo o documento ao ser aberto.

Posso predefinir diferentes estados de visualização para usuários diferentes?

Não. As configurações são armazenadas no arquivo e são compartilhadas. Aplicativos de visualização podem respeitar as preferências do usuário, mas o arquivo em si contém um único conjunto de propriedades de visualização.

Posso preparar um modelo com View Properties predefinidos para que novas apresentações abram da mesma forma?

Sim. Como as view properties são armazenadas no nível da apresentação, você pode incorporá‑las em um modelo e criar novos documentos a partir dele com a mesma configuração de visualização inicial.