So I picked Iowa Boy's answer as correct because it helped me figure out the basics of what I wanted to do.
However I modified it to better suit our needs. We did not need line items, but just the full amount of each contribution. I also wanted to be able to show either Tax Deductible contributions or Non tax deductible contributions or both.
The template I have provided below has a couple variables you can set, depending on what you want for the output:
show_which_contribs
set this to 1 if you want to show both Tax-Deductible and Non-Tax Deductible contributions.
set this to 2 if you want to show only Tax-Deductible contributions.
set this to 3 if you want to show only Non-Tax Deductible contributions.
group_contribs_by
So go ahead and use FIND CONTRIBUTIONS to narrow down your results to whatever you want (date range and/or specific contacts). Then from the results, select ALL RECORDS and then choose THANK YOU LETTER-PRINT OR EMAIL. For GROUP CONTRIBUTIONS BY choose CONTACT. Then for the template you can use the following:
<!-- ** TEMPLATE TO CREATE A USA TAX RECEIPT by JEFF SHERK https://civicrm.stackexchange.com/questions/41120/how-to-print-usa-tax-receipt-to-individuals **
** CHOOSE SOME OPTIONS HERE:
** show_which_contribs :: 1=show both tax-deductible and non-tax-deductible contributions (default) 2=only show Tax-Deductible 3=only show Non-tax-deductible
{assign var="show_which_contribs" value=1}
** group_contribs_by :: 1=no grouping, just show all individual contributions (default) 2=show summary of total only of Tax-Deductible and Non-tax-deductible (no individual contributions shown)
{assign var="group_contribs_by" value=1}
-->
<p><span style="font-size:150%;">My Company Name</span><br />
123 Some Street, City, State 12345<br />
Phone: +1 555 555-5555 Federal EIN: 12-3456789<br />
<br />
<!--
** CHECK IF OUR OPTIONS ABOVE ARE VALID. DEFAULT THEM TO 1 IF THEY ARE NOT. **
{if $show_which_contribs != 1 AND $show_which_contribs != 2 AND $show_which_contribs != 3}
{assign var="show_which_contribs" value=1}
{/if}
{if $group_contribs_by != 1 AND $group_contribs_by != 2}
{assign var="group_contribs_by" value=1}
{/if}
** NEED TO LOOP THRU ALL CONTRIBUTIONS TO FIND THE FIRST/EARLIEST CONTRIBUTION DATE AND THE LAST/LASTEST CONTRIBUTION DATE **
{assign var="date_from" value="2099-12-31"|date_format:"%Y/%m/%d"}
{assign var="date_to" value="1999-01-01"|date_format:"%Y/%m/%d"}
{foreach from=$contributions item=contribution}
{assign var="contribution_date" value=$contribution.receive_date|date_format:"%Y/%m/%d"}
{if $contribution_date < $date_from }
{assign var="date_from" value=$contribution.receive_date|date_format:"%b %e, %Y"}
{/if}
{if $contribution_date > $date_to }
{assign var="date_to" value=$contribution.receive_date|date_format:"%b %e, %Y"}
{/if}
{/foreach}
** SHOW THE DATE RANGE ON THE RECEIPT. IF BOTH DATES ARE THE SAME, THEN ONLY SHOW ONE DATE **
--></p>
<p><b>Contributions Summary</b> - <!-- {if $date_to eq $date_from} --> {$date_from}<br />
<!-- {else} --> {$date_from} to {$date_to}<br />
<!-- {/if} --></p>
<hr />
<p>For:<br />
<span style="font-size:110%;"><b>{contact.addressee}</b></span><br />
{contact.street_address} {contact.city} {contact.state_province} {contact.country} {contact.postal_code}</p>
<table align="left" cellpadding="1" cellspacing="1" style="width:100%; border: 2px solid black; font-size:90%;">
<thead>
<tr align="left" style="font-size:80%;">
<th style="border: 1px solid black;">Date</th>
<th style="border: 1px solid black;">Type</th>
<th style="border: 1px solid black;">Source</th>
<th style="border: 1px solid black;">Tax Deductible</th>
<th style="border: 1px solid black;">Amount</th>
</tr>
</thead>
<tbody><!--
{assign var='total_contrib_non_tax' value=0}
{assign var='total_contrib_tax' value=0}
{assign var='total_contribs' value=0}
{foreach from=$contributions item=contribution}
{assign var="date" value=$contribution.receive_date|date_format:"%b %e %Y"}
{assign var="financial_type_id" value=$contribution.financial_type_id}
{assign var="financial_type_name" value=$contribution.financial_type}
{assign var="contribution_source" value=$contribution.contribution_source}
{assign var="contribution_total_amount" value=$contribution.total_amount}
{$contribution_total_amount|string_format:"%.2f"}
{crmAPI var='resultFinancialType' entity='FinancialType' action='get' id=$financial_type_id}
{assign var="financial_type_is_deductible" value=$resultFinancialType.values[0].is_deductible}
{if $financial_type_is_deductible eq '1'}
{assign var="financial_type_is_deductible" value="Tax-Deductible"}
{if $show_which_contribs == 1 OR $show_which_contribs == 2}
{assign var='total_contrib_tax' value=$total_contrib_tax+$contribution_total_amount}
{assign var='total_contribs' value=$total_contribs+$contribution_total_amount}
{/if}
{else}
{assign var="financial_type_is_deductible" value="Non tax deductible"}
{if $show_which_contribs == 1 OR $show_which_contribs == 3}
{assign var='total_contrib_non_tax' value=$total_contrib_non_tax+$contribution_total_amount}
{assign var='total_contribs' value=$total_contribs+$contribution_total_amount}
{/if}
{/if}
{$total_contrib_non_tax|string_format:"%.2f"}
{$total_contrib_tax|string_format:"%.2f"}
{$total_contribs|string_format:"%.2f"}
{if $group_contribs_by == 1 AND ($show_which_contribs == 1 OR ($financial_type_is_deductible == "Tax-Deductible" AND $show_which_contribs == 2) OR ($financial_type_is_deductible == "Non tax deductible" AND $show_which_contribs == 3)) }
-->
<tr style="font-size:80%;">
<td>{$date}</td>
<td>{$financial_type_name}</td>
<td>{$contribution_source}</td>
<td>{$financial_type_is_deductible}</td>
<td>${$contribution_total_amount}</td>
</tr>
<!--
{/if}
{/foreach}
{if $group_contribs_by == 2}
{if $show_which_contribs == 1 OR $show_which_contribs == 2}
-->
<tr>
<td> </td>
<td> </td>
<td> </td>
<td>Total Tax-Deductible</td>
<td>${$total_contrib_tax}</td>
</tr>
<!--
{/if}
{if $show_which_contribs == 1 OR $show_which_contribs == 3}
-->
<tr>
<td> </td>
<td> </td>
<td> </td>
<td>Total Non tax deductible</td>
<td>${$total_contrib_non_tax}</td>
</tr>
<!--
{/if}
{/if}
-->
</tbody>
</table>
<p><span style="font-size:110%;">Total Non-Tax Deductible: ${$total_contrib_non_tax} Total Tax-Deductible: ${$total_contrib_tax}<br />
<span style="font-size:120%;"><b>Total: ${$total_contribs}</b> </span></span></p>
<p><span style="font-size:75%;"><i>No goods or services were provided in return for the Tax Deductible contributions listed.</i></span></p>
Hope this helps somebody!