Here is the Visualforce Page:
<apex:page standardController="BPA__c" renderAs="pdf">
<h1>Here's a copy of your BPA</h1>
<p>Thank you, <b><apex:outputText value=" {!BPA__c.BPA_Signer__r.Name}"/></b>, for
joining Our Network!</p>
<p>BPA Signed Date:
<apex:outputText value="{0,date,long}">
<apex:param value="{!BPA__c.BPA_Signed_Date__c}"/>
</apex:outputText></p>
</apex:page>
Here is the Apex Class:
public class sendAnEmail {
@InvocableMethod
public static void sendEmail(List<Id> lstId){
List<String> EmailIds = 'emailaddress@email.com'.split(',');
PageReference ref = page.bpa;
Blob b = ref.getContentAsPDF();
Messaging.SingleEmailMessage email = new Messaging.SingleEmailMessage();
Messaging.EmailFileAttachment efa1 = new Messaging.EmailFileAttachment();
efa1.setFileName('attachment_BPA.pdf');
efa1.setBody(b);
String addresses;
email.setSubject( 'BPA PDF' + String.valueOf(DateTime.now()));
email.setToAddresses( EmailIds );
email.setPlainTextBody('Hey there, Thank you for Joining the Network!');
email.setFileAttachments(new Messaging.EmailFileAttachment[] {efa1});
Messaging.SendEmailResult [] r = Messaging.sendEmail(new Messaging.SingleEmailMessage[] {email});
}
}
