MS Word: 목록에서 이미지만 가운데 정렬

MS Word: 목록에서 이미지만 가운데 정렬

저는 Word 2010에서 번호가 매겨진 목록을 만들었습니다. 각 목록 항목에는 이미지도 있습니다. 모든 이미지를 중앙 정렬하고 싶은데 이미지를 중앙 정렬하려고 하면 위의 텍스트도 중앙 정렬됩니다.

MS Word 2010 - 이미지가 포함된 목록

위와 아래에 텍스트를 중앙에 맞추지 않고 목록에서 이미지를 중앙에 정렬하려면 어떻게 해야 합니까?

답변1

좋습니다. 수행할 작업은 다음과 같습니다.

  1. 이미지를 마우스 오른쪽 버튼으로 클릭하고 '크기 및 위치...'를 선택하세요.
  2. '텍스트 줄바꿈' 탭을 선택하세요.
  3. '상단 및 하단'을 선택하세요.
  4. '위치' 탭을 선택하세요.
  5. '가로' 섹션에서 '정렬'을 선택한 다음 '열'을 기준으로 '가운데'를 선택하세요.

불행하게도 여러 이미지에 대해 이 작업을 수행하는 것은 문제가 있습니다. 형식 페인터가 작동하지 않습니다. 또한 단순히 매크로 레코더를 사용하면 이미지를 선택할 때 문제가 발생합니다.

따라서 VBA 매크로를 생성하고 이를 키에 바인딩하는 것이 이를 매우 효율적으로 만드는 유일한 방법인 것 같습니다. 이와 관련하여 다음 두 가지 유용한 게시물이 있습니다.

이 참조 중 첫 번째부터 다음 VBA 매크로를 테스트했습니다. 잘 작동하는 것 같습니다!

Sub FormatMyPicture()  
   Dim myShape As Shape

   If Selection.InlineShapes.Count > 0 Then
       Set myShape = Selection.InlineShapes(1).ConvertToShape
   ElseIf Selection.ShapeRange.Count > 0 Then
       Set myShape = Selection.ShapeRange(1)
   Else
       MsgBox "Please select a picture first."
       Exit Sub
   End If

   With myShape
       .WrapFormat.Type = wdWrapTopBottom
       .WrapFormat.DistanceTop = InchesToPoints(0.2)
       .WrapFormat.DistanceBottom = InchesToPoints(0.2)
       .RelativeHorizontalPosition = wdRelativeHorizontalPositionPage
       .Left = wdShapeCenter
   End With
End Sub

답변2

MS Word에서 모든 인라인 이미지를 가운데 정렬하려면 다음을 수행하십시오.

1 단계: Alt+를 눌러 F11VBA 편집기를 엽니다.

2 단계: 이동Insert그 다음에Module

3단계: VBA 편집기에서 다음 코드 조각을 입력하세요.

Sub centerPictures()
  Dim shpIn As InlineShape, shp As Shape
  For Each shpIn In ActiveDocument.InlineShapes
    shpIn.Select
    Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
  Next shpIn
  For Each shp In ActiveDocument.Shapes
    shp.Select
    Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
  Next shp
End Sub

4단계: 누르 F5거나 누르세요.Run Sub이 변경 사항을 적용하려면

답변3

이것이 특별한 누군가에게 도움이 되기를 바랍니다.

Sub rezize_center_newline()

Dim i As Long
Dim shpIn As InlineShape, shp As Shape

With ActiveDocument
    For i = 1 To .InlineShapes.Count
        With .InlineShapes(i)
            .Height = InchesToPoints(4)
            .Width = InchesToPoints(5.32)
            .Range.InsertAfter Chr(13)
        End With
    Next i
    For Each shpIn In ActiveDocument.InlineShapes
        shpIn.Select
        Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
    Next shpIn
    For Each shp In ActiveDocument.Shapes
        shp.Select
        Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
    Next shp
End With
End Sub

관련 정보