Load custom form into contents of a specific content type
You can output form as block, then output this block in region and set block's visibility options to show only on specific content types:  

/**
 * Implements hook_block_info().
 */
function mymodule_block_info() {
  $blocks = array();
  $blocks['my_block'] = array(
    'info' =&gt; t('Block with form'),
  );
  return $blocks;
}
/**
 * Implements hook_block_view().
 */
function mymodule_block_view($delta = '') {
  $block = array();
  switch($delta) {
    case 'my_block' :
      $block['content'] = drupal_get_form('mymodule_custom_form');
      break;
  }
  return $block;
}
/**
 * Form example.
 */
function mymodule_custom_form($form, &amp;$form_state) {
  $form = array();
  $form['text'] = array(
    '#type' =&gt; 'textfield',
    '#title' =&gt; t('Place your form fields here'),
  );
  return $form;
}


Clear cache, go to blocks page (/admin/structure/block), assign your block to region. Go to your block configuration page and define Visibility settings on Content types tab.