В общем я взял функции а точнее принцип рабоыт для растягивания из модуля по работе с pdf и вроде как помогло.
Код фактически выглядит сейчас так(из 2 файлов, 3 части с кнопками умправления, центр изображение и статусбар низ. 2 файл это непосредственно центр):
Item
{
id: root
ColumnLayout
{
anchors.fill: parent
spacing: 10
Item
{
id: headerRec
Layout.fillWidth: true
implicitHeight: childrenRect.height
RowLayout
{
id: rowLayoutToolBar
width: parent.width
spacing: 20
ButtonComponent
{
id: zoomZoomIn
}
ButtonComponent
{
id: zoomZoomOut
}
}
}
Item
{
Layout.fillWidth: true
Layout.fillHeight: true
Layout.alignment: Qt.AlignBottom
CustomImage
{
id: viewerImage
anchors.fill: parent
visible: root.pPelData.bShowImage
pelData: pPelData
}
}
StatusBar
{
id: statusBar
Layout.fillWidth: true
}
}
}
И код самого центрального обьекта
Flickable
{
id: root
Rectangle
{
id: parentImage
anchors.fill: parent
color: "#5a5a5a"
clip: true
border.color: "red"
border.width: 1
Image
{
id: imageJpg
property real rotationModulus: Math.abs(root.pageRotation % 180)
property bool rot90: rotationModulus > 45 && rotationModulus < 135
fillMode: Image.PreserveAspectFit
source: "pathToFile"
anchors.top: parent.top
anchors.bottom: parent.bottom
anchors.horizontalCenter: parent.horizontalCenter
Rectangle
{
anchors.fill: parent
border.color: "blue"
border.width: 1
color: "transparent"
}
antialiasing: true
rotation: root.pageRotation
}
}
}
А проблемы теперь по факту 2, первая это странно выглядят границы центрального обьекта с изображением, при этом само изображение нормально распологается. Может я не должен использовать anchors.fill: parent для parentImage.
Получается что верхняя граница(она красного цвета) находится под верхнми обьектом.
https://ibb.co/Rj56nx5А вторая проблема это то что при растягивании изображения у меня скрол не работает. Может при прокручивании колосека на мыши обьект Flickable должен какой то сигнал испускать?