Compartilhar via


Word.Document class

O objeto Document é o objeto de nível superior. Um objeto Document contém uma ou mais seções, controles de conteúdo e o corpo que inclui o conteúdo do documento.

Extends

Comentários

[ Conjunto de API: WordApi 1.1 ]

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-change-tracking.yaml

// Gets the current change tracking mode.
await Word.run(async (context) => {
  const document: Word.Document = context.document;
  document.load("changeTrackingMode");
  await context.sync();

  if (document.changeTrackingMode === Word.ChangeTrackingMode.trackMineOnly) {
    console.log("Only my changes are being tracked.");
  } else if (document.changeTrackingMode === Word.ChangeTrackingMode.trackAll) {
    console.log("Everyone's changes are being tracked.");
  } else {
    console.log("No changes are being tracked.");
  }
});

Propriedades

body

Obtém o objeto do corpo do main documento. O corpo é o texto que exclui cabeçalhos, rodapés, notas de rodapé, caixas de texto, etc.

changeTrackingMode

Especifica o modo ChangeTracking.

contentControls

Obtém a coleção de objetos de controlo de conteúdo no documento. Isto inclui controlos de conteúdo no corpo do documento, cabeçalhos, rodapés, caixas de texto, etc.

context

O contexto do pedido associado ao objeto . Esta ação liga o processo do suplemento ao processo da aplicação anfitriã do Office.

customXmlParts

Obtém as partes XML personalizadas no documento.

properties

Obtém as propriedades do documento.

saved

Indica se as alterações do documento foram salvas. Um valor true indica que o documento não foi alterado desde que foi salvo.

sections

Obtém a coleção de objetos de secção no documento.

settings

Obtém as definições do suplemento no documento.

Métodos

deleteBookmark(name)

Elimina um marcador, se existir, do documento.

getBookmarkRange(name)

Obtém o intervalo de um marcador. Gera um ItemNotFound erro se o marcador não existir.

getBookmarkRangeOrNullObject(name)

Obtém o intervalo de um marcador. Se o marcador não existir, este método devolverá um objeto com a respetiva isNullObject propriedade definida como true. Para obter mais informações, veja *OrNullObject methods and properties (Métodos e propriedades do OrNullObject).

getSelection()

Obtém a seleção atual do documento. Não são suportadas múltiplas seleções.

load(options)

Coloca um comando na fila para carregar as propriedades especificadas do objeto. Você deve chamar context.sync() antes de ler as propriedades.

load(propertyNames)

Coloca um comando na fila para carregar as propriedades especificadas do objeto. Você deve chamar context.sync() antes de ler as propriedades.

load(propertyNamesAndPaths)

Coloca um comando na fila para carregar as propriedades especificadas do objeto. Você deve chamar context.sync() antes de ler as propriedades.

save(saveBehavior, fileName)

Salva o documento.

save(saveBehaviorString, fileName)

Salva o documento.

set(properties, options)

Define várias propriedades de um objeto ao mesmo tempo. Pode transmitir um objeto simples com as propriedades adequadas ou outro objeto de API do mesmo tipo.

set(properties)

Define várias propriedades no objeto ao mesmo tempo, com base num objeto carregado existente.

toJSON()

Substitui o método JavaScript toJSON() para fornecer uma saída mais útil quando um objeto de API é transmitido para JSON.stringify(). (JSON.stringifypor sua vez, chama o toJSON método do objeto que lhe é transmitido.) Enquanto o objeto original Word.Document é um objeto de API, o toJSON método devolve um objeto JavaScript simples (escrito como Word.Interfaces.DocumentData) que contém cópias rasas de quaisquer propriedades subordinadas carregadas do objeto original.

track()

Acompanha o objeto para ajuste automático com base nas alterações adjacentes no documento. Esta chamada é uma abreviatura de context.trackedObjects.add(thisObject). Se estiver a utilizar este objeto entre .sync chamadas e fora da execução sequencial de um lote ".run" e receber um erro "InvalidObjectPath" ao definir uma propriedade ou invocar um método no objeto, terá de adicionar o objeto à coleção de objetos controlados quando o objeto foi criado pela primeira vez. Se este objeto fizer parte de uma coleção, também deve controlar a coleção principal.

untrack()

Libere a memória associada a este objeto, se ele já tiver sido rastreado anteriormente. Esta chamada é abreviada para context.trackedObjects.remove(thisObject). Ter muitos objetos rastreados desacelera o aplicativo host, por isso, lembre-se de liberar todos os objetos adicionados após usá-los. Terá de chamar context.sync() antes de a libertação da memória ser aplicada.

Detalhes da propriedade

body

Obtém o objeto do corpo do main documento. O corpo é o texto que exclui cabeçalhos, rodapés, notas de rodapé, caixas de texto, etc.

readonly body: Word.Body;

Valor da propriedade

Comentários

[ Conjunto de API: WordApi 1.1 ]

changeTrackingMode

Especifica o modo ChangeTracking.

changeTrackingMode: Word.ChangeTrackingMode | "Off" | "TrackAll" | "TrackMineOnly";

Valor da propriedade

Word.ChangeTrackingMode | "Off" | "TrackAll" | "TrackMineOnly"

Comentários

[ Conjunto de API: WordApi 1.4 ]

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-change-tracking.yaml

// Gets the current change tracking mode.
await Word.run(async (context) => {
  const document: Word.Document = context.document;
  document.load("changeTrackingMode");
  await context.sync();

  if (document.changeTrackingMode === Word.ChangeTrackingMode.trackMineOnly) {
    console.log("Only my changes are being tracked.");
  } else if (document.changeTrackingMode === Word.ChangeTrackingMode.trackAll) {
    console.log("Everyone's changes are being tracked.");
  } else {
    console.log("No changes are being tracked.");
  }
});

contentControls

Obtém a coleção de objetos de controlo de conteúdo no documento. Isto inclui controlos de conteúdo no corpo do documento, cabeçalhos, rodapés, caixas de texto, etc.

readonly contentControls: Word.ContentControlCollection;

Valor da propriedade

Comentários

[ Conjunto de API: WordApi 1.1 ]

context

O contexto do pedido associado ao objeto . Esta ação liga o processo do suplemento ao processo da aplicação anfitriã do Office.

context: RequestContext;

Valor da propriedade

customXmlParts

Obtém as partes XML personalizadas no documento.

readonly customXmlParts: Word.CustomXmlPartCollection;

Valor da propriedade

Comentários

[ Conjunto de API: WordApi 1.4 ]

properties

Obtém as propriedades do documento.

readonly properties: Word.DocumentProperties;

Valor da propriedade

Comentários

[ Conjunto de API: WordApi 1.3 ]

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/30-properties/get-built-in-properties.yaml

await Word.run(async (context) => {
    const builtInProperties: Word.DocumentProperties = context.document.properties;
    builtInProperties.load("*"); // Let's get all!

    await context.sync();
    console.log(JSON.stringify(builtInProperties, null, 4));
});

saved

Indica se as alterações do documento foram salvas. Um valor true indica que o documento não foi alterado desde que foi salvo.

readonly saved: boolean;

Valor da propriedade

boolean

Comentários

[ Conjunto de API: WordApi 1.1 ]

sections

Obtém a coleção de objetos de secção no documento.

readonly sections: Word.SectionCollection;

Valor da propriedade

Comentários

[ Conjunto de API: WordApi 1.1 ]

settings

Obtém as definições do suplemento no documento.

readonly settings: Word.SettingCollection;

Valor da propriedade

Comentários

[ Conjunto de API: WordApi 1.4 ]

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-settings.yaml

// Gets all custom settings this add-in set on this document.
await Word.run(async (context) => {
  const settings: Word.SettingCollection = context.document.settings;
  settings.load("items");
  await context.sync();

  if (settings.items.length == 0) {
    console.log("There are no settings.");
  } else {
    console.log("All settings:");
    for (let i = 0; i < settings.items.length; i++) {
      console.log(settings.items[i]);
    }
  }
});

Detalhes do método

deleteBookmark(name)

Elimina um marcador, se existir, do documento.

deleteBookmark(name: string): void;

Parâmetros

name

string

Obrigatório. O nome do marcador não sensível a maiúsculas e minúsculas.

Retornos

void

Comentários

[ Conjunto de API: WordApi 1.4 ]

getBookmarkRange(name)

Obtém o intervalo de um marcador. Gera um ItemNotFound erro se o marcador não existir.

getBookmarkRange(name: string): Word.Range;

Parâmetros

name

string

Obrigatório. O nome do marcador não sensível a maiúsculas e minúsculas.

Retornos

Comentários

[ Conjunto de API: WordApi 1.4 ]

getBookmarkRangeOrNullObject(name)

Obtém o intervalo de um marcador. Se o marcador não existir, este método devolverá um objeto com a respetiva isNullObject propriedade definida como true. Para obter mais informações, veja *OrNullObject methods and properties (Métodos e propriedades do OrNullObject).

getBookmarkRangeOrNullObject(name: string): Word.Range;

Parâmetros

name

string

Obrigatório. O nome do marcador não sensível a maiúsculas e minúsculas.

Retornos

Comentários

[ Conjunto de API: WordApi 1.4 ]

getSelection()

Obtém a seleção atual do documento. Não são suportadas múltiplas seleções.

getSelection(): Word.Range;

Retornos

Comentários

[ Conjunto de API: WordApi 1.1 ]

Exemplos

// Run a batch operation against the Word object model.
await Word.run(async (context) => {
    
    const textSample = 'This is an example of the insert text method. This is a method ' + 
        'which allows users to insert text into a selection. It can insert text into a ' +
        'relative location or it can overwrite the current selection. Since the ' +
        'getSelection method returns a range object, look up the range object documentation ' +
        'for everything you can do with a selection.';
    
    // Create a range proxy object for the current selection.
    const range = context.document.getSelection();
    
    // Queue a command to insert text at the end of the selection.
    range.insertText(textSample, Word.InsertLocation.end);
    
    // Synchronize the document state by executing the queued commands, 
    // and return a promise to indicate task completion.
    await context.sync();
    console.log('Inserted the text at the end of the selection.');
});  

load(options)

Coloca um comando na fila para carregar as propriedades especificadas do objeto. Você deve chamar context.sync() antes de ler as propriedades.

load(options?: Word.Interfaces.DocumentLoadOptions): Word.Document;

Parâmetros

options
Word.Interfaces.DocumentLoadOptions

Fornece opções para as propriedades do objeto a carregar.

Retornos

Exemplos

// Run a batch operation against the Word object model.
await Word.run(async (context) => {
    
    // Create a proxy object for the document.
    const thisDocument = context.document;
    
    // Queue a command to load content control properties.
    thisDocument.load('contentControls/id, contentControls/text, contentControls/tag');
    
    // Synchronize the document state by executing the queued commands, 
    // and return a promise to indicate task completion.
    await context.sync();
    if (thisDocument.contentControls.items.length !== 0) {
        for (let i = 0; i < thisDocument.contentControls.items.length; i++) {
            console.log(thisDocument.contentControls.items[i].id);
            console.log(thisDocument.contentControls.items[i].text);
            console.log(thisDocument.contentControls.items[i].tag);
        }
    } else {
        console.log('No content controls in this document.');
    }
});

load(propertyNames)

Coloca um comando na fila para carregar as propriedades especificadas do objeto. Você deve chamar context.sync() antes de ler as propriedades.

load(propertyNames?: string | string[]): Word.Document;

Parâmetros

propertyNames

string | string[]

Uma cadeia delimitada por vírgulas ou uma matriz de cadeias que especificam as propriedades a carregar.

Retornos

load(propertyNamesAndPaths)

Coloca um comando na fila para carregar as propriedades especificadas do objeto. Você deve chamar context.sync() antes de ler as propriedades.

load(propertyNamesAndPaths?: {
            select?: string;
            expand?: string;
        }): Word.Document;

Parâmetros

propertyNamesAndPaths

{ select?: string; expand?: string; }

propertyNamesAndPaths.select é uma cadeia delimitada por vírgulas que especifica as propriedades a carregar e propertyNamesAndPaths.expand é uma cadeia delimitada por vírgulas que especifica as propriedades de navegação a carregar.

Retornos

save(saveBehavior, fileName)

Salva o documento.

save(saveBehavior?: Word.SaveBehavior, fileName?: string): void;

Parâmetros

saveBehavior
Word.SaveBehavior

Opcional. O comportamento de guardar tem de ser "Guardar" ou "Pedido". O valor predefinido é "Guardar".

fileName

string

Opcional. O nome do ficheiro (exclua a extensão de ficheiro). Só tem efeito para um novo documento.

Retornos

void

Comentários

[ Conjunto de API: WordApi 1.1 ]

Nota: os saveBehavior parâmetros e fileName foram introduzidos no WordApi 1.5.

Exemplos

// Run a batch operation against the Word object model.
await Word.run(async (context) => {
    
    // Create a proxy object for the document.
    const thisDocument = context.document;

    // Queue a command to load the document save state (on the saved property).
    thisDocument.load('saved');    
    
    // Synchronize the document state by executing the queued commands, 
    // and return a promise to indicate task completion.
    await context.sync();
        
    if (thisDocument.saved === false) {
        // Queue a command to save this document.
        thisDocument.save();
        
        // Synchronize the document state by executing the queued commands, 
        // and return a promise to indicate task completion.
        await context.sync();
        console.log('Saved the document');
    } else {
        console.log('The document has not changed since the last save.');
    }
});
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/save-close.yaml

// Saves the document with default behavior
// for current state of the document.
await Word.run(async (context) => {
  context.document.save();
  await context.sync();
});

save(saveBehaviorString, fileName)

Salva o documento.

save(saveBehaviorString?: "Save" | "Prompt", fileName?: string): void;

Parâmetros

saveBehaviorString

"Save" | "Prompt"

Opcional. O comportamento de guardar tem de ser "Guardar" ou "Pedido". O valor predefinido é "Guardar".

fileName

string

Opcional. O nome do ficheiro (exclua a extensão de ficheiro). Só tem efeito para um novo documento.

Retornos

void

Comentários

[ Conjunto de API: WordApi 1.1 ]

Nota: os saveBehavior parâmetros e fileName foram introduzidos no WordApi 1.5.

set(properties, options)

Define várias propriedades de um objeto ao mesmo tempo. Pode transmitir um objeto simples com as propriedades adequadas ou outro objeto de API do mesmo tipo.

set(properties: Interfaces.DocumentUpdateData, options?: OfficeExtension.UpdateOptions): void;

Parâmetros

properties
Word.Interfaces.DocumentUpdateData

Um objeto JavaScript com propriedades que são estruturadas isomorfoticamente para as propriedades do objeto no qual o método é chamado.

options
OfficeExtension.UpdateOptions

Fornece uma opção para suprimir erros se o objeto de propriedades tentar definir quaisquer propriedades só de leitura.

Retornos

void

set(properties)

Define várias propriedades no objeto ao mesmo tempo, com base num objeto carregado existente.

set(properties: Word.Document): void;

Parâmetros

properties
Word.Document

Retornos

void

toJSON()

Substitui o método JavaScript toJSON() para fornecer uma saída mais útil quando um objeto de API é transmitido para JSON.stringify(). (JSON.stringifypor sua vez, chama o toJSON método do objeto que lhe é transmitido.) Enquanto o objeto original Word.Document é um objeto de API, o toJSON método devolve um objeto JavaScript simples (escrito como Word.Interfaces.DocumentData) que contém cópias rasas de quaisquer propriedades subordinadas carregadas do objeto original.

toJSON(): Word.Interfaces.DocumentData;

Retornos

track()

Acompanha o objeto para ajuste automático com base nas alterações adjacentes no documento. Esta chamada é uma abreviatura de context.trackedObjects.add(thisObject). Se estiver a utilizar este objeto entre .sync chamadas e fora da execução sequencial de um lote ".run" e receber um erro "InvalidObjectPath" ao definir uma propriedade ou invocar um método no objeto, terá de adicionar o objeto à coleção de objetos controlados quando o objeto foi criado pela primeira vez. Se este objeto fizer parte de uma coleção, também deve controlar a coleção principal.

track(): Word.Document;

Retornos

untrack()

Libere a memória associada a este objeto, se ele já tiver sido rastreado anteriormente. Esta chamada é abreviada para context.trackedObjects.remove(thisObject). Ter muitos objetos rastreados desacelera o aplicativo host, por isso, lembre-se de liberar todos os objetos adicionados após usá-los. Terá de chamar context.sync() antes de a libertação da memória ser aplicada.

untrack(): Word.Document;

Retornos