Following a late start due to rain, Kvitova took to the first set with expediency and led 5-1. Pironkova struggled up to three games before losing the set.
The second set was a more even affair. Although the Czech world number eight gained a 4-1 lead in a tie-break, the Bulgarian took the match to three sets with a 7-5 win.
The third set mirrored the first in terms of dominance, with Kvitova winning 6-3 6-7 (5-7) 6-2 in just over two hours.
Both Kvitova and Pironkova reached the semi-finals of last year’s tournament.
Kvitova will face the winner of Tamira Paszek and Victoria Azarenka’s match in the next round.