GIMP 사진 수평 맞추기는 Measure로 기준선을 긋고 Orientation을 Horizontal로 정한 뒤 Straighten을 누르면 돼요. 눈대중으로 회전 각도를 여러 번 입력하는 대신 사진 속 선을 기준으로 삼는 방법이에요. 다만 회전 뒤에는 모서리에 빈 공간이 생기거나 잘리는 부분이 있을 수 있으므로 수평만 맞췄다고 바로 내보내지는 않아요.
예제로 수평선이 오른쪽으로 조금 올라간 바다 사진 한 장을 바로잡는다고 해요. 사진은 한 개 레이어로 열고, 바다의 수평은 맞추되 왼쪽 끝 사람과 오른쪽 끝 등대는 남기는 것이 목표예요. GIMP 3 계열의 영문 메뉴 이름을 함께 적었어요. 건물이나 상품 사진도 기준선 선택에 따라 같은 흐름을 사용할 수 있어요.
1. 사진 자체가 기울었는지 먼저 살펴요
기준으로 삼을 선은 원래 수평이어야 하는 대상이어야 해요. 먼 바다의 수평선은 비교적 찾기 쉽지만 해안선, 비탈길, 탁자의 비스듬한 모서리는 원래 기울어 있을 수 있어요. 화면 안에서 길게 보인다는 이유만으로 아무 선을 고르면 사진을 오히려 더 비뚤게 만들 수 있어요. 무엇을 바로잡는지 먼저 한 문장으로 정해요.
건물의 양쪽 기둥이 서로 다른 방향으로 기울어 보인다면 단순 회전보다 원근의 영향일 수 있어요. 한쪽 기둥을 수직으로 돌려도 반대편까지 자동으로 평행해지지는 않아요. 렌즈 때문에 직선이 휘어 보이는 문제도 수평 회전만으로 고쳐지지 않아요. 이 글에서는 사진 전체가 한 방향으로 돌아간 경우를 다뤄요.
회전 전에 화면 배율을 바꿔 기준선의 양 끝을 확인해요. 기준선이 파도나 구름에 가려진 부분은 피하고 실제 선이 보이는 두 지점을 고르면 좋아요. 아주 짧은 구간만 잡으면 끝점 한두 픽셀의 차이가 각도에 크게 반영돼요. 가능한 범위에서 떨어진 두 지점을 고르되 서로 다른 높이의 대상을 연결하지 않아요.
2. 원본을 남기고 사진 레이어를 준비해요
원본 사진은 별도로 보관하고 사본을 열어요. 작업을 이어갈 생각이면 XCF도 다른 이름으로 저장해요. 예를 들어 coast-original.jpg, coast-level.xcf, coast-level.jpg를 구분할 수 있어요. 회전과 자르기를 끝낸 작은 결과만 남기면 가장자리 구도를 다시 선택하기 어려워요. 원본이 있어야 다른 기준선을 택해 처음부터 다시 시도할 수 있어요.
이번 예제는 사진 레이어 한 장을 대상으로 해요. 레이어 목록에서 해당 사진을 선택하고 Select → None으로 기존 선택 영역을 해제해요. 로고나 자막이 함께 있는 합성 문서라면 먼저 무엇을 같이 돌릴지 결정해야 해요. 사진만 기울었는데 문서 전체를 돌리면 이미 수평이던 글자까지 함께 기울 수 있어요.
투명한 빈 모서리를 확인하려면 사진 레이어에 Layer → Transparency → Add Alpha Channel을 적용해요. 이미 알파 채널이 있으면 새로 추가할 필요는 없어요. 알파는 투명도를 담는 정보이지 사진 속 배경을 자동으로 지우는 기능은 아니에요. 회전 전후 가장자리를 비교하기 위한 준비로 생각하면 돼요.
3. Measure로 실제 수평선을 따라 그어요

Tools → Measure를 선택해요. 수평선의 왼쪽 지점에서 오른쪽 지점까지 드래그하고, 두 끝점이 같은 수평선 위에 놓였는지 확인해요. 끝점은 다시 끌어 조정할 수 있어요. 측정선을 이미 수평인 화면 테두리에 맞추는 것이 아니라 사진 안에서 기울어진 실제 선을 따라 놓아야 해요.
도구 옵션의 Orientation은 Horizontal로 지정해요. Auto는 측정선과 수평·수직 중 가까운 쪽을 선택하므로 원하는 방향이 분명한 예제에서는 직접 정하는 편이 쉬워요. 건물 기둥을 수직 기준으로 쓸 때는 Vertical을 선택해요. 서로 다른 기준을 한 번에 맞추려 하지 말고 먼저 정한 한 선으로 결과를 판단해요.
선을 그을 때는 Ctrl을 누르지 않아요. Ctrl은 선 방향을 15도 간격으로 제한할 수 있어 작은 기울기를 그대로 재기 어려워요. 도구 옵션이 보이지 않으면 Windows → Dockable Windows → Tool Options를 열어요. 각도 숫자만 외우기보다 끝점의 위치와 Orientation이 목적에 맞는지 먼저 확인하는 것이 좋아요.
측정선이 두 개로 갈라졌다면 Shift를 누른 채 끝점에서 드래그했는지 확인해요. Measure는 두 선 사이 각도도 잴 수 있지만, 이번 수평 맞추기에는 실제 수평선을 따르는 한 선이면 충분해요. 보조 키를 놓고 기준선을 다시 잡은 뒤 두 끝점을 살펴요. 거리 숫자가 길게 나왔다는 사실보다 두 점이 같은 수평선 위에 놓였는지가 중요해요.
4. 회전 대상과 모서리 처리 방식을 고르세요

Straighten 아래의 Transform은 Layer로 두고 사진 레이어를 대상으로 해요. Image는 모든 레이어에 적용하는 선택지이며 Selection과 Path도 별도 대상이에요. 전에 다른 도구에서 고른 대상이 남을 수 있으니 아이콘을 다시 확인해요. 사진이 안 움직인다고 같은 버튼을 반복해서 누르기 전에 적용 대상부터 봐요.
Clipping은 우선 Adjust로 두어 회전된 레이어의 범위를 유지해요. Clip은 바깥으로 나간 부분을 잘라내고, Crop to result는 투명 모서리가 들어오지 않게 잘라요. Crop with aspect는 그 자르기에 기존 비율 조건을 더해요. 예제에서는 끝의 사람과 등대를 직접 비교해야 하므로 자동 자르기보다 Adjust로 시작해요.
Interpolation은 회전하며 픽셀을 계산하는 방식이에요. 일반 사진은 Cubic 같은 보간으로 시작해 가는 선이 거칠어지지 않았는지 살펴요. 모든 준비가 맞으면 Straighten을 한 번 눌러요. 결과가 마음에 들지 않을 때는 작은 회전을 계속 더하기보다 실행 취소하고 원래 상태에서 기준선을 다시 잡아요.
5. 가려진 가장자리와 투명 모서리를 구분해요

Layer와 Adjust로 회전하면 레이어가 커져도 캔버스 밖 부분은 보이지 않을 수 있어요. 사진 한 장인 예제에서는 Image → Fit Canvas to Layers로 전체 레이어가 보이도록 캔버스를 맞춰요. 그 뒤 실제로 남은 사진 끝과 바깥의 빈 모서리를 확인해요. 화면 밖에 가려진 것과 이미 잘린 것을 같은 문제로 취급하지 않아요.
원래 직사각형을 비스듬히 돌리면 새 직사각형 테두리의 모서리를 전부 사진으로 채울 수는 없어요. 투명한 삼각형이 남는 것은 회전 결과에서 흔한 모양이에요. 이것을 없애려면 사진 일부를 잘라 더 작은 직사각형을 만들거나 빈 공간을 남겨야 해요. 피사체를 전부 지키면서 빈 공간도 없애겠다고 사진을 가로로 늘리지는 않아요.
예제에서는 왼쪽 사람의 머리와 오른쪽 등대 끝이 남았는지 먼저 봐요. 수평선이 안정되어도 중요한 끝부분이 잘렸다면 원하는 결과가 아니에요. 여백을 없애기 전에 보존할 대상을 정해 두면 자르기 범위를 고르기 쉬워져요. 맞춤 배율에서 전체 구도를 보고 100%에서도 경계에 흐린 띠나 빈 픽셀이 남았는지 살펴요.
6. 필요한 경우에만 사각형으로 잘라요
빈 모서리를 빼려면 Rectangle Select로 사진이 꽉 차 있는 안쪽 직사각형을 잡아요. Feather edges는 끄고 선택 경계를 확인한 다음 Image → Crop to Selection을 사용해요. 이 명령은 이미지의 모든 레이어를 선택 경계에 맞춰 자르므로 합성 문서라면 다른 레이어 내용도 영향을 받아요.
자동으로 투명 여백을 정리하는 Crop to Content 방식과도 차이가 있어요. 회전된 사진의 모서리는 사진이 차지한 바깥 경계 안쪽에 남을 수 있으므로, 바깥 여백만 줄인다고 안쪽 삼각형까지 사라지는 것은 아니에요. 선택 사각형의 네 모서리가 실제 사진 위에 놓였는지 직접 확인해요.
자른 뒤 피사체가 답답해졌다면 즉시 실행 취소해 더 넓은 구도로 다시 선택해요. 정해진 4:3이나 1:1 결과가 필요하다면 사각 선택의 비율 조건을 먼저 맞추고 경계를 잡아요. 비율을 맞추는 과정에서 잘려 나갈 대상도 다시 봐요. 이때 충분한 면적이 남지 않으면 빈 공간을 허용하거나 다른 사진을 고르는 편이 나아요.
7. 새 파일로 내보내고 다시 열어 확인해요

작업본 XCF를 저장하고 File → Export As에서 coast-level.jpg처럼 새 이름으로 내보내요. 투명 영역을 남길 계획이면 투명도를 지원하는 PNG를 선택해요. JPEG는 투명도를 보존하지 않으니 빈 모서리가 남은 채 내보내기만 하면 해결된다고 생각하지 않아요. 원본 이름으로 덮어쓰는 선택은 피하세요.
생성된 파일을 별도로 열어 수평선과 네 모서리, 보존하려던 사람과 등대가 모두 맞는지 확인해요. Image → Image Properties에서 최종 픽셀 크기도 읽어요. 자른 만큼 출력 크기가 작아질 수 있어요. 끝내는 기준은 각도가 0에 가까워졌다는 숫자뿐 아니라, 원하는 기준선과 구도·모서리 상태가 실제 전달 파일에서도 유지되는지예요.