Como colocar imagens redondas de borda no Outlook por padrão

9

Aqui está algo que tem me incomodado por meses, se não anos. Quando eu colo uma imagem em um email do Outlook, ela não tem bordas. Eu posso adicionar estes clicando com o botão direito do mouse na imagem e escolhendo Formatar imagem , e provavelmente há uma ferramenta para fazer isso também. Minha pergunta é: existe uma maneira de garantir que todas as imagens coladas tenham bordas? Se houvesse uma folha de estilo CSS para o Outlook, eu poderia fazer isso aqui; ou talvez haja um cenário em algum lugar?

Obrigado antecipadamente!

    
por Andy Brown 14.09.2012 в 09:53
fonte

2 respostas

5

Eu tenho uma macro do Word 2010 que adiciona uma borda às imagens e as centraliza:

Sub AddBlueBorderAndCenterImages()
    Dim oIshp As InlineShape
    Dim oshp As Shape

    For Each oIshp In ActiveDocument.InlineShapes 'in line with text
        With oIshp.Borders
            .OutsideLineStyle = wdLineStyleSingle
            .OutsideLineWidth = wdLineWidth025pt
            .OutsideColor = RGB(0, 112, 192)
        End With
        oIshp.Select
        Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
    Next oIshp

    For Each oshp In ActiveDocument.Shapes 'floating with text wraped around
        With oshp.Line
            .Style = msoLineSingle
            .Weight = 0.25
            .ForeColor.RGB = RGB(0, 112, 192)
        End With
    Next oshp

    Selection.HomeKey Unit:=wdStory 'go back to top of doc
End Sub

Eu tentei adaptá-lo para o Outlook, o principal é tentar chegar ao ActiveDocument do Word a partir de um item do Outlook.

Então aqui está a versão do Outlook (sem qualquer centralização):

Sub AddBlueBorders()
    Set insp = Application.ActiveInspector
    If insp.CurrentItem.Class = olMail Then
        Set mail = insp.CurrentItem
        If insp.EditorType = olEditorWord Then
            Set wordActiveDocument = mail.GetInspector.WordEditor

            For Each oIshp In wordActiveDocument.InlineShapes 'in line with text
                With oIshp.Borders
                    .OutsideLineStyle = wdLineStyleSingle
                    '.OutsideLineWidth = wdLineWidth025pt ' error: one of the values passed to this method or property is out of range
                    .OutsideColor = RGB(0, 112, 192)
                End With
            Next oIshp

            For Each oshp In wordActiveDocument.Shapes 'floating with text wraped around
                With oshp.Line
                    .Style = msoLineSingle
                    .Weight = 0.25
                    .ForeColor.RGB = RGB(0, 112, 192)
                End With
            Next oshp

        'ElseIf insp.EditorType = olEditorHTML Then
        'Something else here, maybe using css?

        End If
    End If
End Sub

Por algum motivo, isso não adiciona uma borda ao logotipo da empresa que tenho em minha assinatura, talvez porque esteja em um rodapé ou em outra parte do documento.

Este não é um padrão e não está adicionando automaticamente bordas às imagens à medida que são coladas / adicionadas ao email. Você ainda tem que associar essa macro a um botão ou atalho de tecla. Mas espero que ajude, mesmo 4 meses depois.

Inspirado vagamente no link

    
por Thierry_S 14.02.2013 / 15:24
fonte
1

Você pode considerar fornecer uma macro VBA (além de um atalho de chave para ela). Não tenho certeza de como isso funciona para as bordas da imagem, mas para selecionado no texto do email, aqui está um exemplo simples:

Sub ChangeSelectedExample()
    Set insp = Application.ActiveInspector
    If insp.CurrentItem.Class = olMail Then
        Set mail = insp.CurrentItem
        If insp.EditorType = olEditorHTML Then
            txt = ActiveInspector.HTMLEditor.Selection.CreateRange.Text
                  ActiveInspector.HTMLEditor.Selection.CreateRange.Text = txt & "<hello world 1>"
        ElseIf insp.EditorType = olEditorWord Then
            txt = insp.CurrentItem.GetInspector.WordEditor.Application.Selection.Text
                  insp.CurrentItem.GetInspector.WordEditor.Application.Selection = txt & "<hello world 2>"
        Else
            MsgBox ("not supported mail format")
        End If
    Else
        MsgBox ("not supported view type")
    End If
End Sub
    
por thoku 23.09.2012 / 16:37
fonte