-
VBA/파워포인트/사진 crop/PictureFormat.CropBottom()코딩/vba 2024. 1. 10. 15:52728x90
파워포인트에서 사진을 컨트롤하는 것은 맥의 키노트보다 열악하다. 파워포인트에서 사진을 다루다보면 키노트에서의 자유로움이 그리워진다. 그래서 사진을 삽입하고 배치하는 기본적인 컨트롤은 VBA를 사용해서 파워포인트에서 작업하고 다시 키노트에서 불러와 세세한 작업을 하게 된다.
파워포인트에서 사진을 잘라 슬라이드에 맞추는 것은 쉬운 일이지만 사진 속의 대상을 자유자재로 위치시키는 것은 키노트에 비해 어렵다. 애플은 사진에 대해서는 언제나 진심인 듯 하다.
VBA Reference 오류
VBA reference에 따르면, PictureFormat.CropBottom()의 인수는 크라핑할 비율이라고 되어있다.
설명도 그렇고 예제 프로그램도 그렇게 되어있다.
' VBA Reference의 예제 프로그램 percentToCrop = InputBox("What percentage do you " & _ "want to crop off the bottom of this picture?") Set shapeToCrop = ActiveWindow.Selection.ShapeRange(1) With shapeToCrop.Duplicate .ScaleHeight 1, True origHeight = .Height .Delete End With cropPoints = origHeight * percentToCrop / 100 shapeToCrop.PictureFormat.CropBottom = cropPoints
하지만 이 비율은 작동하지 않는다.
실제로 cropPoints를 의도한대로 하려면 아래의 수식을 써야 한다.
cropPoints = origHeight / newHeight * 100
설명과 예제에서는 비율을 입력하라고 되어있지만 실제로는 포인트값을 넣어줘야 한다.
728x90'코딩 > vba' 카테고리의 다른 글
VBA/배열을 함수로부터 전달받기 (0) 2024.01.11 VBA/Shape간 순환 (0) 2024.01.11 VBA/파워포인트/사진정리 - 0. 개요 (0) 2024.01.10 VBA/버블정렬(Bubble sort) (2) 2024.01.09 VBA/PowerPoint/슬라이드 사이즈 픽셀 단위로 구하기 (0) 2024.01.09