MS Word 2010: Vincular ao objeto em um diretório relativo

3

Estou trabalhando em uma pasta do Dropbox em um documento do Word. Eu gostaria de inserir um objeto pdf que será atualizado por um script separadamente. O problema é que o objeto vinculado em Inserir > Objeto > Criar do arquivo é especificado por um caminho absoluto C:\Hugh\Dropbox\figures\foo.pdf . Quando alguém edita o arquivo, e eu volto ao arquivo, o objeto está corrompido e o link quebrado.

Gostaria de especificar o caminho por um caminho relativo ..\figures\foo.pdf (meu documento do Word está em \Dropbox\thedoc.docx . Qual é a melhor prática para fazer isso? Eu tentei digitar ..\figures\foo.pdf , mas isso falha.

Até mesmo uma solução que exige que as figuras e o arquivo docx sejam colocadas no mesmo diretório seria aceitável.

    
por Hugh 11.02.2015 / 00:39

1 resposta

2

O último post em contém uma possível abordagem. Para o benefício dos futuros leitores, vou replicar o conteúdo aqui.

Nota: Esta abordagem não parece funcionar com "Objetos incorporados", mas apenas com arquivos de imagem simples (veja a parte inferior da resposta para detalhes).

Arquivos de imagem: -)

Primeiro FAÇA UMA CÓPIA DE BACKUP DO SEU FILE WORD . Em seguida, renomeie seu arquivo .docx para .zip (porque é apenas um arquivo zip depois de tudo). Extraia o arquivo zip e abra o arquivo word/_rels/document.xml.rels com um editor de texto. Você deve encontrar seções semelhantes às seguintes:

<Relationship
      Id="rId9"
      Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image"
      Target="file:///C:\Hugh\Dropbox\figures\foo.png"
      TargetMode="External" />

Basta remover o caminho da linha de destino de cada entrada: Target="foo.png"

Em seguida, salve o arquivo e feche a pasta novamente (ou copie apenas o arquivo modificado no arquivo zip original, se o gerenciador de arquivos suportar isso). Renomeie o arquivo .zip de volta para .docx e tente abri-lo com o Word. Espero que não reclame.

Objetos incorporados ou vinculados: - (

Os objetos OLE incorporados ou vinculados são tratados de maneira diferente dos arquivos de imagem vinculados. Eles são especificados no arquivo word/document.xml usando uma sintaxe diferente. Por exemplo, um arquivo do Visio incorporado pode ter esta aparência:

<w:instrText xml:space="preserve"> LINK Visio.Drawing.11 "\\path\to\file.vsd" "" \a \p \f 0 \* MERGEFORMAT </w:instrText>

Infelizmente, não tive sucesso encurtando o caminho para apenas "file.vsd" ou ".\file.vsd" (o arquivo está no mesmo diretório que o documento do Word). O Word reclama que o documento está corrompido ao tentar abri-lo. Se você disser para reparar o documento, ele removerá todo o bloco w:instrText .

    
por 03.07.2015 / 18:40