Yes it is possible.
The Mage_Core_Model_Email_Template class has a getProcessedTemplate() method. You only need to pass the correct variables for your placeholders.
For example, if your template contains placeholders like this:
{{var firstname}} {{var lastname}}
you can use:
$sTemplate = Mage::getModel('core/email_template') ->load($templateId) ->getProcessedTemplate(array( 'firstname' => 'John', 'lastname' => 'Doe' ));
to allow your placeholders.
source share