Sarah, Duchess of York was hurt by being labelled the 'Duchess of Pork'.
The 61-year-old royal - who has Princess Eugenie, 30, and Princess Beatrice, 32, with ex-husband Prince Andrew - started over-eating after her parents divorced when she was 12.
She shared: "I started comfort eating at boarding school and I’d pile on the pounds, only to take great pains to lose them — then I would put them on again.
"I found consolation in sausages and egg mayonnaise sandwiches. It was a pattern that continued into my adult life.
"When my husband was away at sea, the more upset I became at his absence the more I would eat and grow.
"My friend had become food and every time things got difficult I found my fix."
The Duchess admitted her weight concerns became even more pronounced because of the cruel nickname.
She confessed: "I could not bear to look at myself a moment longer. Thankfully, I managed to do something about it.
"Over the years I have used various regimes, including calorie counting and ketogenic diets, to get my weight under control and at a healthy level."
The Duchess is now throwing her support behind the UK government's new obesity strategy.
She says the issue has become particularly important amid the coronavirus pandemic.
She explained in The Sun newspaper: "The government has recently published a new obesity strategy, urging the country to lose weight to beat coronavirus and protect the NHS. It is a campaign I am pleased to back.
"Obesity levels in the UK are stubbornly high.
"Around 27 per cent of adults are obese and a further 35 per cent are classed as overweight. One in three children leaves primary school overweight or obese.
"It is one of the biggest public health crises the country faces, with obesity-related illnesses costing the NHS £6 billion a year.
"The urgency of tackling this time bomb has been underlined by evidence of the link to an increased risk from Covid-19."
Tagged in Prince Andrew Princess Eugenie