Adicione e remova o papel timbrado no documento do Word

0

Nossa empresa tem papel timbrado (papel pré-impresso com nosso logotipo). Sempre que enviamos algo pelo correio, imprimimos no papel. No entanto, quando enviamos o mesmo documento por e-mail, convertemo-lo em um arquivo PDF.

Agora, o problema é: ao converter um documento do Word para PDF, ele deve conter o papel timbrado. Ao imprimir o mesmo documento em papel, não deve (ou então o papel timbrado seria impresso duas vezes).

Atualmente, estamos usando dois modelos diferentes de documentos do Word - um com papel timbrado e outro sem. Então sempre que queremos adicionar ou remover o papel timbrado, temos que criar um novo documento com o outro modelo e copiar e colar tudo. Solução desagradável. O que estou procurando é uma maneira simples de ativar e desativar o papel timbrado.

O que eu tentei até agora:

  • Alternando o modelo: Não parece haver uma maneira simples de alternar o modelo para um documento existente.
  • Usando uma marca d'água de imagem: Nosso papel timbrado vai até a borda da página. (Sem impressora suporta isso, é claro, mas é bom para exportar para PDF.) Aparentemente, dependendo da impressora padrão atual, o Word não permitirá uma marca d'água sem bordas, em vez disso, deslocando a imagem ao redor.
  • Usando o cabeçalho da página: Ao editar o cabeçalho da página, posso inserir imagens em posições arbitrárias, o que é ótimo. No entanto, eu não consegui encontrar uma maneira (curto de macros) para ativar / desativar apenas as imagens no cabeçalho. (O texto deve permanecer lá.)
por Daniel Wolf 04.05.2010 / 10:26

2 respostas

0

Como desenvolvedor de software, finalmente fui à solução de programação e desenvolvi uma faixa personalizada do Word em C #.

Sei que essa não é uma resposta satisfatória para não desenvolvedores, mas infelizmente não posso anexar o plug-in a essa mensagem. No entanto, se você tiver acesso a um programador, isso deve levá-lo a começar:

private static void ShowHeaderImages(bool show) {
  foreach (Section section in WordDoc.Sections) {
    foreach (HeaderFooter header in section.Headers) {
      foreach (Shape shape in header.Shapes) {
        bool isGraphic =
          shape.Type == MsoShapeType.msoPicture ||
          shape.Type == MsoShapeType.msoLinkedOLEObject;
        if (isGraphic) {
          shape.Visible = show ? MsoTriState.msoTrue : MsoTriState.msoFalse;
        }
      }
    }
  }
}

Observe que, embora seja um código C #, ele pode ser convertido em uma macro VBA.

    
por 13.07.2010 / 11:18
1

Você pode experimentar um texto condicional no cabeçalho com base em uma propriedade do documento, como a categoria. Se você digitar "PDF" na categoria, o cabeçalho será impresso, se você apagá-lo, o cabeçalho desaparecerá.

Tente este exemplo simples:

{IF {DOCPROPERTY Category}="PDF" "This is the header text..." ""}

Não sei como extrair o nome da impressora sendo usado durante a fase de impressão, mas pelo menos isso pode simplificar as coisas.

    
por 13.07.2010 / 12:12