을 사용하여 두 이미지를 결합하지만 바로 그것을 얻을하지 않습니다 내가 두 QImages이어야 고정 된 크기의 배경 이미지 imgBg
, 및 제 QImage imgFg
이 아핀 변환을 사용하여 변환 된 다음 배경 이미지에 페인트 (및 클리핑)됩니다. 원점 주위Qt는 내가 해결하기 위해 아마 쉬운 문제에 직면하고있다 QTransform
- 스케일 이미지 (균일 스케일링) 원점 주위
- 회전 이미지
- 배경 이미지의 소정의 기준 위치에 전경 화상 번역 다음과 같이
아핀 변환은 전경의 이미지 센터가 기준 위치에 있도록
// Setup transform QTransform trans; trans.translate(-imgFg.width()/2, -imgFg.height()/2); // move center of image to origin trans.scale(scaleFac, scaleFac); trans.rotate(angleDegrees); trans.translate(imgFg.width()/2, imgFg.height()/2); // Transform foreground image imgFg = imgFg.transformed(trans); // Paint on background image QPointF referencePos(imgBg.width()/3, imgBg.height()/2); // some reference position QPainter painter(&imgBg); painter.drawImage(referencePos - QPointF(imgFg.width()/2, imgFg.height()/2), imgFg);
을만큼 난 단지 모든 것이 잘 작동 기준 위치 변경과 같이 여기
내가 지금까지 한 일이다. 배율 및/또는 회전을 사용할 때 이미지의 배율이 조정되고 회전되지만 정확한 위치에 배치되지 않습니다 (전경의 이미지 중심이 참조 점과 일치하지 않음). 변환 파이프 라인에 문제가 있습니까? 내가 실수를 했니?
나는 두 번째 번역이 스케일링 계수를 고려해야한다고 생각합니다. – Mat